Skip to content

Agent 记忆机制要解决的核心矛盾,是上下文窗口有限,而任务执行周期和用户关系可能是长期的。只接入一个向量数据库,把历史对话全部塞进去,并不等于有了好的记忆系统。

合理的记忆体系应分层设计。

第一层是短期记忆,也可以理解为工作记忆。它保存当前任务相关信息,例如最近几轮对话、工具调用结果、当前执行计划、临时变量等。这类信息通常直接放在上下文窗口里,模型每一步都能实时访问。但短期记忆成本高,不能无限增长。

第二层是压缩记忆。当交互轮次变多、原始记录膨胀时,系统应把历史压缩成结构化摘要,记录用户目标、已完成步骤、关键决策、未解决问题和下一步事项。这样既能减少上下文占用,也能在新窗口中保持任务连续性。

第三层是长期记忆。它保存跨会话信息,例如用户偏好、长期目标、历史任务结果、业务知识和重要决策记录。长期记忆可以用向量数据库、知识图谱或关系数据库实现,但底层存储不是重点,关键是写入、更新、召回和遗忘策略。

长期记忆还可以进一步分成三类:语义记忆记录通用知识,例如业务规则和产品文档;情景记忆记录具体发生过的事件,例如某次审批、某次沟通;程序记忆记录流程和最佳实践,例如报销流程、写作规范、项目实施步骤。

记忆系统最大的挑战不是“记不住”,而是“记太多”。大量信息会过期、重复或与当前任务无关,如果每次都召回,会造成记忆污染和上下文膨胀。因此,完整记忆系统必须具备四种能力:写入、更新、召回和遗忘。什么时候存、什么时候改、什么时候删、什么时候总结,往往比“存什么”更重要。

好的 Agent 记忆机制,不是把全部历史都保存下来,而是在正确时机保存高价值事实,在正确场景召回相关信息,并能及时更新或作废过期内容。