Appearance
智能体记忆管理
智能体的价值在于两件事:调用工具执行任务、随时间不断进步。记忆正是打造“可自我优化”智能体的基石。
引言
- 认识智能体记忆及其重要性;
- 实现与存储记忆的常用方法(短期、长期);
- 记忆如何帮助智能体自我提升。
学习目标
- 区分工作记忆、短期记忆、长期记忆以及 persona、情节、实体等特定记忆类型;
- 结合 Semantic Kernel、Mem0、Whiteboard、Azure AI Search 等工具实现记忆体系;
- 理解自我改进智能体背后的原理与记忆管理机制。
什么是智能体记忆
记忆即智能体的“留存与回忆”机制,可包含对话细节、用户偏好、历史操作乃至学习到的模式。没有记忆的智能体是无状态的,每次交互都从头开始,用户体验极差。
为什么记忆重要
- 反思:从过往成功/失败中学习;
- 互动:维持对话上下文;
- 主动/被动:基于历史数据预测或应对需求;
- 自主:凭借积累知识独立行动。
目标是让智能体更可靠、更有能力。
记忆类型
- 工作记忆:如同便签纸,存放当前步骤所需的即时信息。
- 示例:预订旅行时保留“我要去巴黎”这一即时需求。
- 短期记忆:限定在单次对话会话内,跟踪前后文。
- 示例:用户问“那里住宿如何?”时,知道“那里”指巴黎。
- 长期记忆:跨会话持久存在的偏好与历史。
- 示例:记得“Ben 喜欢滑雪和山景咖啡,不要高难度雪道”。
- Persona 记忆:确保智能体保持一致的人设或角色。
- 示例:提醒自己是“资深滑雪规划师”。
- 情节记忆(Episodic):记录复杂任务的步骤、成功或失败案例。
- 示例:记住某次航班预订失败,便于后续尝试不同方案。
- 实体记忆:提取并记住人名、地点、事件等实体。
- 示例:记住用户曾在 “Le Chat Noir” 用餐。
- 结构化 RAG:以结构化方式抽取信息,提升检索精度与速度。
- 示例:从邮件中解析航班信息并结构化存储,支持精确查询。
记忆实现与存储
记忆管理包含生成、存储、检索、整合、更新乃至“遗忘”。其中检索尤为关键。
专门的记忆工具
例如 Mem0 提供持久记忆层,支持两阶段流水线:
- 抽取:使用 LLM 概括对话并提取新记忆;
- 更新:判断新增、修改或删除,并存入混合数据库(向量/图/键值)。
这样无状态智能体即可转化为有状态智能体,支持多种记忆类型。
结合 RAG 存储记忆
还可以利用 Azure AI Search 等搜索服务作为记忆后端,特别适合结构化 RAG。将用户数据或业务知识存入索引,既能提升回答准确性,又能满足个性化需求。
Azure AI Search 支持结构化 RAG,能够从对话、邮件、图片等多种来源抽取结构化信息,精准召回。
让智能体自我提升
常见做法是引入“知识智能体”:
- 观察主对话,识别有价值的信息;
- 抽取并总结;
- 存入知识库(向量数据库等);
- 在未来对话中检索相关内容并追加到提示或上下文。
优化建议
- 延迟控制:先用小模型快速判断是否值得存储/检索,必要时再调用复杂流程;
- 知识库维护:罕用信息可降级到冷存储,控制成本。
常见问题交流
欢迎加入 Azure AI Foundry Discord,继续讨论智能体记忆。
