返回思考列表 产品方法论

Agent 记忆系统设计:从工作记忆到程序记忆

2026-03 · 5 min 阅读

和 Agent 评测类似,Agent 记忆也是我看行业讨论时发现的一个高频盲区。很多人聊到记忆,第一反应就是"接个 RAG"。但 RAG 解决的是"怎么查",记忆系统要解决的是"查什么、存什么、忘什么、什么该变成本能"。

这两件事有本质区别。RAG 是图书馆,记忆系统是大脑。图书馆只负责存和查,大脑要做的是筛选、遗忘、关联、内化。一个 Agent 能不能给人"越用越懂我"的感觉,关键不在接入的向量数据库有多大,而在记忆系统的设计有多聪明。

不是所有数据都配叫"记忆"

做记忆系统之前,需要先区分几个概念。Agent 在运行中会接触大量数据,但不是所有数据都应该进入记忆系统:

上下文数据:当前任务需要的临时信息,任务结束就释放。这不叫记忆,叫工作区。

日志数据:所有交互的完整记录,用于调试和审计。这也不是记忆,这是档案。

记忆:经过筛选和提炼,能够在未来任务中被主动调用、产生价值的那部分数据。

区分这三者的意义在于:记忆系统的设计不是"把能存的都存下来",而是定义清楚筛选标准——什么信息值得从上下文提升为记忆,什么记忆值得从短期保留沉淀为长期认知,什么能力值得从经验内化为本能。

四层记忆架构

工作记忆:当前任务的注意力。对于 Agent 来说,包含当前对话上下文、本轮任务的约束条件、中间步骤产生的临时结果。核心设计考量不是存多久,而是容量管理。必须有淘汰策略决定什么留在窗口里。在选品 Agent 场景里,工作记忆只保留当前选品任务的品类、价格区间、用户这次的特殊要求。

情景记忆:最近发生的事。存储用户最近的交互历史、偏好表达、具体的事件记录。存储周期太短用户觉得 Agent 健忘,太长会引入噪声。选品类 Agent 按周维度做选品决策,7 天的情景记忆窗口比 30 天更有效。当模式出现多次或有明确价值判断时,才触发提炼进下一层。

语义记忆:提炼后的认知。不再是原始对话记录,而是结构化的偏好、规则、事实。比如用户三次询问"适合送长辈的礼物",沉淀的标签就是"送礼对象长辈,关注维度体面加实用"。产品设计上需要关注可修正性——用户的偏好会变化,需要留出修正接口。

程序记忆:内化的能力。这是最能体现 Agent 成长感的一层。它存储哪些工具调用路径被验证高效、哪些策略成功率更高。经过多次运行,Agent 会积累工具可靠性记录——京东爬虫在这个品类下成功率稳定,慢慢买在价格对比上更靠谱但偶尔超时。这份记忆持续优化 Agent 的决策质量。

记忆的完整闭环

四层架构是静态的,要让记忆系统真正活起来,需要设计动态闭环:

写入:什么数据在什么条件下进入记忆系统?不是默认全量写入。工作记忆自动管理;情景记忆按会话边界写入;语义记忆需要触发条件;程序记忆基于统计阈值刷新。

检索:当 Agent 开始新任务,从哪一层调取记忆?顺序通常是:工作记忆到语义记忆匹配偏好,再到情景记忆补充最近上下文,最后程序记忆指导工具选择。

沉淀:从情景到语义、从语义到程序的关键一步。需要设计触发规则——什么条件下启动提炼、多久执行一次、谁来验证结果。

遗忘:没有遗忘机制的记忆系统会越来越臃肿。每一层都需要淘汰策略——工作记忆按容量淘汰,情景记忆按时间窗口淘汰,语义记忆按长期未激活淘汰,程序记忆按成功率变化刷新。遗忘不是缺陷,是让记忆系统保持健康的设计。

产品设计上容易被忽略的事

用户感知。用户能不能感知到 Agent 记住了什么?最好是能的,但不能以打扰的方式。比如在合适时机自然提及"上次你提到喜欢这个风格,这次也按这个方向找?"——让用户觉得被记住,而不是被监控。

隐私边界。什么能记、什么不能记,需要在设计早期划清边界。我的判断:偏好可以记,身份信息慎记,敏感行为不记。这不是技术问题,是信任问题。

记忆可重置。用户应该有能力说"忘掉关于我的所有记忆",而且这个操作必须是彻底的、可验证的。这是产品设计中容易遗漏但一旦出事就很严重的一个点。

---

在"你的世界编辑器"项目中,我把这个思路落地成了五层记忆架构:记录层到情绪层、检索层、洞察层再到推演层。关键设计决策是:评分高的话题才进入长期记忆,7 天自动清理防止无限膨胀。教训是别一开始就试图构建完整分层,先做 MVP 验证"记忆能提升体验"这个假设,再迭代高级能力。

以上观点基于项目实践中的总结与反思,将持续迭代更新。