Skip to content

Memory / Persistence ​

这一节解决什么问题 ​

Memory / Persistence 解决的是 Agent 如何记住信息、保存状态、跨轮次延续任务的问题。

普通聊天机器人主要依赖对话历史;工程化 Agent 不能只靠历史消息。真实任务需要区分当前会话状态、长期用户偏好、工具执行结果、任务中间产物和可复用经验。如果这些信息都混在上下文里,系统会越来越难维护。

Memory 不等于聊天历史 ​

聊天历史只是 Memory 的一种来源,不是 Memory 本身。

Memory 更准确地说,是 Agent 系统对“可复用信息”的结构化管理。它关注:

  • 什么信息值得保存;
  • 保存到哪里;
  • 什么时候取出来;
  • 取出来后如何压缩和注入上下文;
  • 什么时候更新或删除。

如果不做筛选地保存所有历史,Memory 会变成噪声仓库。

常见 Memory 类型 ​

Short-term Memory ​

短期记忆用于当前任务,例如本轮对话目标、当前步骤、中间结果、工具返回摘要。

它通常和 Session / State 绑定,任务结束后可以归档或丢弃。

Working Memory ​

工作记忆用于任务执行过程中的临时信息,例如待办清单、当前计划、已完成步骤、失败原因。

它比短期记忆更结构化,适合被 Runtime 频繁读写。

Long-term Memory ​

长期记忆保存跨会话稳定信息,例如用户偏好、长期项目背景、常用约束、历史经验。

长期记忆不能随意写入。写入前应该判断它是否稳定、是否可复用、是否会过期。

Episodic Memory ​

情景记忆保存一次完整任务经历,例如某次执行的目标、步骤、结果和失败原因。

它适合用于复盘、相似案例召回和经验沉淀。

Semantic Memory ​

语义记忆保存知识型内容,例如文档片段、概念解释、业务规则、技术资料。

RAG 知识库可以看作 Semantic Memory 的一种实现。

Persistence 解决什么 ​

Persistence 是持久化层,负责把状态和记忆保存到外部系统中。

常见持久化对象:

  • Conversation:对话记录
  • Session:当前会话状态
  • Task:任务状态和阶段
  • Trace:执行轨迹
  • Artifact:文件、中间产物、报告
  • Memory:长期偏好和可复用经验
  • Evaluation:评测结果和失败样本

Persistence 的重点不是“存下来”,而是“能恢复、能查询、能审计”。

Context Compression ​

长任务会导致上下文膨胀。Memory 系统必须配合上下文压缩,否则模型会被历史噪声淹没。

压缩时优先保留:

  • 用户目标和硬约束
  • 已确认的关键事实
  • 当前任务状态
  • 已完成步骤和未完成步骤
  • 工具调用结果摘要
  • 失败原因和避免重复的提醒

可以压缩或丢弃:

  • 重复寒暄
  • 已过期的计划
  • 低价值中间推理
  • 超长原始工具输出
  • 和当前任务无关的历史内容

Memory 写入原则 ​

不要让 Agent 把所有内容都写进长期记忆。推荐使用写入门槛:

  1. 稳定性:这条信息未来是否仍然成立?
  2. 复用性:未来任务是否会用到?
  3. 可验证性:信息来源是否可靠?
  4. 安全性:是否包含隐私、密钥或敏感信息?
  5. 粒度:是否足够简洁,避免整段原文污染记忆?

只有满足这些条件的信息,才适合进入 Long-term Memory。

常见误区 ​

误区一:上下文越多越好 ​

上下文越多,模型不一定越聪明。无关信息会稀释关键约束,增加成本,也可能引入冲突。

误区二:把 Memory 当向量库 ​

向量库适合语义检索,但 Memory 还包括结构化状态、任务进度、用户偏好和执行经验。Memory 不是单一技术,而是一套信息管理策略。

误区三:长期记忆自动写入 ​

自动写入容易污染记忆。高价值长期记忆应该经过规则判断,必要时需要用户确认。

误区四:没有遗忘机制 ​

Memory 需要更新和遗忘。过期偏好、错误事实、临时决策如果长期保留,会影响后续任务。

面试表达 ​

可以这样表达:

> 我不会把 Memory 简单理解成聊天历史或向量数据库。工程化 Agent 里,Memory 应该分层:短期记忆维护当前任务,工作记忆支撑执行过程,长期记忆保存稳定偏好和经验,语义记忆承载外部知识。持久化层要保存 Session、Task、Trace 和 Artifact,让任务可恢复、可审计。关键是控制写入和召回,不把所有历史无脑塞进上下文。

相关链接 ​