
AI Agent 实战教程 06:Memory 记忆机制设计

Memory 是 AI Agent 能够连续工作的基础。没有记忆,Agent 每次都像第一次见到用户;有了记忆,Agent 才能理解历史、延续任务、保留偏好,并在长期协作中变得更有上下文。
但记忆也是一把双刃剑。保存太少,Agent 不够智能;保存太多,系统会变得混乱,还可能带来隐私和安全风险。因此,Memory 设计的重点不是“尽可能多地记住”,而是“在合适的时候记住合适的信息”。
短期记忆
短期记忆通常就是当前对话上下文。它帮助 Agent 理解最近发生了什么。
例如用户刚刚说“把这 10 篇文章整理成教程”,后续又说“绑定到刚才那个模块”,Agent 需要知道“刚才那个模块”指什么。
短期记忆适合保存:
- 当前任务目标;
- 最近对话;
- 工具调用结果;
- 用户刚给出的约束;
- 临时中间产物。
短期记忆的问题是上下文窗口有限。任务越长,历史越多,模型越难关注关键内容。因此长任务需要状态摘要,而不是无限保留所有对话。
长期记忆
长期记忆保存跨会话信息,例如用户偏好、项目背景、常用工具、历史决策。
比如用户经常要求“每篇文章标签不要超过 3 个”,这个偏好就可以进入长期记忆。以后创建文章时,Agent 就能自动遵守这个规则。
长期记忆适合保存稳定信息,不适合保存临时情绪、一次性指令或未经确认的敏感数据。
向量记忆
向量记忆通常使用 Embedding 和 Vector Database。系统把历史信息转成向量,之后根据当前任务检索相关记忆。
它适合保存大量非结构化内容,例如:
- 历史对话摘要;
- 会议纪要;
- 项目文档;
- 用户反馈;
- 操作经验。
当用户提出新任务时,系统检索相关记忆,把结果放入上下文,帮助 Agent 做出更符合历史背景的判断。
记忆写入策略
最容易出问题的是“什么时候写入记忆”。如果每句话都写入,记忆库会很快充满噪音。如果完全不写,Agent 又无法持续学习。
常见策略包括:
- 用户明确说“记住”;
- 系统识别到稳定偏好;
- 任务完成后生成摘要;
- 用户确认后写入长期记忆;
- 对重复出现的信息提升权重。
对于重要记忆,最好让用户可见、可编辑、可删除。
记忆读取策略
读取记忆也需要控制。不是每次都读取所有记忆,而是根据当前任务检索相关内容。
例如写 AI Agent 教程时,应该检索用户对文章风格、标签数量、图片来源的偏好,而不需要读取无关的历史任务。
好的读取策略应该考虑相关性、时效性、权限和信息密度。
隐私与安全
Memory 可能包含敏感信息,因此必须设计安全边界。
需要考虑:
- 用户是否知道系统记住了什么;
- 用户能否删除记忆;
- 敏感数据是否脱敏;
- 不同用户之间是否隔离;
- Agent 是否会把记忆泄露给不该看到的人;
- 长期记忆是否有过期机制。
没有这些设计,Memory 会从能力变成风险。
小结
Memory 让 Agent 更连续、更个性化,也更像一个长期协作伙伴。但记忆系统必须可控、可解释、可清理。真正可靠的 Agent 不会什么都记,而是知道什么值得记、什么时候用、什么时候忘。