Agent Memory 是什么?
未标记
考查重点:历史信息与后续决策。记忆保存过去交互、任务状态与经验,在后续决策按需取用;不是全部历史每轮拼接,写入/更新需有效范围
本题目录
参考答案
核心回答
Agent Memory 是 Agent 保存过去交互、任务状态和经验,并在后续决策中按需使用这些信息的机制。它让系统知道当前任务已经完成哪些步骤,也能在下一次对话中复用有效的用户偏好或历史事实。
常见地可以分为:短期或工作记忆,服务当前会话和任务,例如已确认参数、计划和工具结果;长期记忆,跨会话保留偏好、稳定事实或经过整理的经验。按内容还可以区分事实、事件经验和操作方法,这与保存多久是不同维度。
它的基本生命周期是:选择值得记的信息 → 保存 → 按当前任务检索 → 注入决策上下文 → 更新、合并或删除。例如用户明确说“以后报告都用非技术语言”,可以按记忆规则保存为偏好;后续生成报告时再读取,而不是每次加载全部历史对话。
展开说明
1. Memory 保存哪些信息
短期记忆通常包含近期对话;工作记忆更强调当前任务的执行信息,例如待办、已确认条件、已完成步骤和中间结果。它们可以结合使用,帮助 Agent 在多轮和多步执行中保持连续。
长期记忆面向跨任务复用的信息,例如用户持续有效的表达偏好、项目背景、重要历史决策和经过验证的经验。按内容看,语义记忆保存事实与知识,情景记忆保存发生过的具体事件,程序性记忆保存可复用的方法或行为规则。这些维度可以交叉组合:一条长期记忆既可能是用户偏好,也可能是一次任务经验。
Memory 不必全部是自然语言。当前订单号、任务阶段和偏好配置适合结构化字段,事件经验可以保留带来源的文本或记录,较长资料则按需检索。选择形式应方便后续准确读取和更新。
2. 写入和检索怎样形成闭环
写入从交互或任务结果中选取有价值的信息,区分明确事实、临时要求、假设和模型推断,保留主体、来源、适用范围及必要时间。重复信息可以归并,含糊内容先作为候选,不必把每句话都固化。
检索先按用户、项目或任务范围筛选,再决定匹配方式。用户的固定偏好可以按键直接读取;需要回忆相近经历时,可以结合语义、关键词和元数据检索。匹配不只看向量相似度,还要检查当前问题是否相关、信息是否有效以及是否有权限使用。
读取后的相关记忆被组织进本轮模型输入,帮助下一步决策;未召回的存储内容不会自动被模型看到。使用后根据新事实或用户更正更新记录,过期、错误或要求删除的内容也应退出后续使用。
3. 在应用里通常存在哪里
应用层 Memory 可以使用数据库、键值存储、文件、向量索引等实现。存储完整消息或执行日志便于追溯,面向决策的记忆则可以是摘要、结构化状态和选出的事实;两者不必完全相同。
以 LangGraph 为例,checkpointer 保存某条 thread 的图状态,支持会话连续和执行恢复;Store 保存图状态以外、可跨 thread 使用的信息。当前任务的参数与进度可以放在前者,跨会话偏好可以放在后者。存储范围与持久化能力仍要分别配置:内存后端适合临时运行,需要重启后保留时使用可靠的持久化后端。
4. 记忆为什么还需要维护
保存下来不等于永远正确。用户搬家、项目版本升级或任务条件改变,都可能使旧记录失效;一次“这次写详细些”也不一定改变平时偏好。记忆需要可追溯、可更正和可删除,读取时尊重当前适用范围,更新时避免旧信息反复覆盖新值。具体判断可看记忆与当前上下文冲突时怎样处理。
常见追问
长期记忆一定要用向量数据库吗?
不一定。结构稳定、能按用户或项目明确定位的信息,用数据库或键值查询可能更直接;向量检索适合语义相近、难以用固定键定位的内容。也可以组合,但相似度不能替代身份、字段和有效性检查。
Memory 和 RAG 有什么关系?
两者都可以从外部存储取信息供模型使用。Memory 更强调 Agent 交互和任务中需要延续的信息,RAG 更强调从知识来源检索证据;实现组件可以复用,资料也可以个性化。关键是分清信息来源、用途、权限和更新方式。
加了 Memory,模型就自动学会这些内容了吗?
应用通常是在推理时重新提供相关记录,并未因此更新模型参数。后续任务能否用到它,还取决于保存、检索和上下文组织;只有把数据库写满,而没有正确读取,也不能发挥记忆作用。
对应教程
- LangGraph 高级特性:阅读 Checkpointer 与 Store 的不同范围,理解当前任务状态和跨会话信息怎样保存与使用。
参考资料
- 国内:JavaGuide:Agent 记忆系统设计:采用记忆类型及编码、存储、检索、整理与遗忘的生命周期,说明正文中 Memory 为何不限于聊天历史。
- 国内:zero2Agent:记忆与上下文:参考当前任务状态、关键约束和长期信息召回,说明保存的信息怎样帮助多轮与多步决策。
- 国内:WeThinkIn:记忆类型与读写流程:依据作用范围、内容与存储形式的区分,说明正文中候选写入、相关读取及长期更新的不同职责。
- 国外:LangMem:长期记忆概念:采用事实、事件经验和方法记忆的区分,说明正文中信息用途如何影响保存与读取。
- 国外:LangChain:Persistence:依据 checkpointer 与 Store 的范围和内存后端边界,将正文中的记忆概念对应到具体框架职责。
相关面经
6 篇BIGO
客户端开发工程师memory
百度
Go 后端开发工程师(Agent)LongTermMemory 是做什么的?
京东
后端开发工程师说说memory
深圳璇溟科技有限公司
Agent 开发工程师了解Agent memory 吗?
宁波银行
记忆
展开剩余 1 篇面经
拼多多
AI Agent记忆


