agno-9-Culture

Agno 的 Culture(文化) 是一个实验性功能,旨在为你的多智能体(Multi-Agent)系统提供一个共享的知识层。它允许不同的 Agent 存储和检索通用的原则、最佳实践和可复用的经验。

简单来说,Culture 让智能体能够"共同成长"。一个 Agent 从交互中学到的宝贵经验,可以通过 Culture 分享给所有其他 Agent,让整个系统从集体智慧中获益

为什么需要 Culture?

Culture 解决了智能体系统中的一个根本问题:知识的孤立性。没有 Culture,每个 Agent 都从零开始,学到的经验无法积累和传承。

  • 一致性 (Consistency):所有 Agent 遵循统一的沟通标准、格式规范和最佳实践。

  • 进化性 (Evolution):系统会随着时间的推移,从 Agent 的成功和失败中不断学习和改进。

  • 效率性 (Efficiency):Agent 无需反复"重新学习"同样的教训。

  • 广泛应用场景:

    • 技术文档团队:保持统一的写作风格和结构。

    • 客户支持团队:应用经过验证的问题解决模式。

    • 开发助手:遵循组织的编码标准。

    • 内容生成:遵守品牌语调和格式指南。

Culture vs. Memory:共享知识 vs. 个人记忆

理解 Culture 的核心,在于区分它与 Memory(记忆)的不同。

特性 Culture (文化) Memory (记忆)
知识类型 通用原则、最佳实践、共享经验 用户特定的事实、偏好和个性化信息
作用范围 所有智能体、所有用户、所有会话 特定用户、特定会话
类比 "我们这儿(公司/团队)的做事方式" "我对你的了解"
示例 "技术文档应遵循'操作性思维'原则" "用户 Sarah 喜欢用电子邮件沟通"

Culture 如何工作?

其工作流程可以概括为:

  1. 加载 (Load):Agent 在开始任务时,会自动加载相关的文化知识到上下文中。

  2. 应用 (Apply):Agent 在推理和生成回复时会应用这些知识。

  3. 反思 (Reflect):任务完成后,Agent 会反思整个交互过程。

  4. 更新 (Update):基于反思,Agent 会更新或添加新的文化知识到数据库中

三种 Culture 管理模式

Agno 提供了三种由浅入深的管理模式,你可以根据需求选择。

1. 自动模式 (Automatic Culture)

这是最简单、最推荐的模式。设置 update_cultural_knowledge=True 后,系统会在每次 Agent 运行后自动反思交互并更新文化知识。

复制代码
from agno.agent import Agent
from agno.models.deepseek import DeepSeek
from dotenv import load_dotenv
load_dotenv()

deepseek = DeepSeek(id="deepseek-chat")

agent = Agent(
    model=deepseek,
    instructions=["你是一个智能助手,可以调用工具来执行操作。"],
    markdown=True,
    add_culture_to_context=True,      # 读取文化
    update_cultural_knowledge=True,   # 自动更新文化
)
agent.print_response("你好,请介绍一下自己", stream=True)
2. 智能体模式 (Agentic Culture)

设置 enable_agentic_culture=True,Agent 将获得创建、读取、更新和删除文化知识的工具,由 Agent 自己决定何时以及如何管理文化。

复制代码
from agno.agent import Agent
from agno.db.sqlite import SqliteDb
from dotenv import load_dotenv
from agno.models.deepseek import DeepSeek

load_dotenv()

deepseek = DeepSeek(id="deepseek-chat")
db = SqliteDb(db_file="agno.db")

agent = Agent(
    model=deepseek,
    db=db,
    add_culture_to_context=True,
    enable_agentic_memory=True,     # 👈 自动提取记忆
    user_id="xiaoxiaoer",
    instructions=["你是一个智能助手"],
)

agent.print_response("你好,请介绍一下自己", stream=True)
3. 手动模式 (Manual Culture)

可以通过 CultureManager 手动创建和管理文化知识。这种方式最灵活,适合需要精确控制文化内容的场景

复制代码
from agno.agent import Agent
from agno.culture.manager import CultureManager
from agno.db.sqlite import SqliteDb
from dotenv import load_dotenv
from agno.models.deepseek import DeepSeek

load_dotenv()

deepseek = DeepSeek(id="deepseek-chat")
db = SqliteDb(db_file="tmp/demo.db")

culture_manager = CultureManager(db=db, model=deepseek)
# 2. 定义一条文化原则[reference:44]
message = (
    "所有技术指南都应遵循'操作性思维'原则:\n"
    "1. **陈述目标** --- 我们要实现什么结果以及为什么。\n"
    "2. **展示步骤** --- 列出清晰、可复现的步骤。\n"
    "3. **揭示陷阱** --- 提及常出错的地方以及如何及早发现。\n"
    "4. **定义验证** --- 如何确认它正常工作。\n"
    "5. **闭环** --- 建议下一步的迭代或改进。\n"
)

# 3. 创建文化知识条目[reference:45]
culture_manager.create_cultural_knowledge(message=message)

# 4. 查看所有文化知识[reference:46]
cultural_knowledge = culture_manager.get_all_knowledge()

agent = Agent(
    model=deepseek,
    db=db,  #使用一个db会自动加载文化知识
    add_culture_to_context=True,
    user_id="xiaoxiaoer",
    instructions=["你是一个智能助手"],
)

agent.print_response("你好,请介绍一下自己", stream=True)
相关推荐
AIGC大时代5 小时前
有些内容AI写得再顺都不一定稳,这8个地方导师一问就露馅
人工智能·codex·ai工具·aiwritepaper·ai学术写作
skywalk81635 小时前
我现在手里有comate、dumate、 workbuddy和trae四个agent,你看这四个任务怎么分合适?
人工智能·deepseek
用户0617708544955 小时前
Agent 办事失败兜底技术实现方案:从失败模型到生产级容错体系
人工智能
是大乔家的5 小时前
网文分销商必备神器:用知漫剧快速将授权小说转化为连载视频引流
人工智能
ITmaster07316 小时前
面试官坏笑:“你用 AI 编程一年了,怎么保证 Claude Code 写出来的代码是对的?”我:“直接上 Claude Fable 5 啊!”
人工智能
英雄6276 小时前
给 DeepSeek Harness Web 写了一个美化插件
人工智能
dogstarhuang6 小时前
OpenAI GPT-5.6 降价后如何重算 API 账单?多模型路由与成本治理实战
服务器·网络·人工智能·大模型·api·ai应用开发·接口管理
CRMEB定制开发6 小时前
2026年最值得推荐的10大开源商城系统盘点
开发语言·人工智能·开源·商城系统·小程序商城
MobotStone6 小时前
AI让一个人像一家公司,但没让普通人突然变成老板
人工智能
Pika6 小时前
DeepSeek Harness 架构拆解
人工智能