mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4
1485 字
4 分钟
Agent 教学笔记(三):记忆与 RAG,治好 Agent 的「失忆症」
2026-09-03
2026-10-10

Agent 教学笔记(三):记忆与 RAG,治好 Agent 的「失忆症」#

前两篇写了「会做事」和「手脚」,这一篇写「记性」。我一度以为记忆就是把历史对话全塞进去,后来才发现,这是个特别容易翻车的想法。

一、先确诊:Agent 的「失忆症」#

大模型本身是「无状态」的:每一次对话都会被重置。它可能有几十亿参数,却记不住一小时前聊过什么。

这不是 bug,这是它的出厂设定。而「记忆模块」,就是为了治这个病而生的。

二、三个最容易混的词,一次摆清#

这三个词我以前老是混着用,后来才摆清楚:

名词是什么类比
上下文窗口模型一次能「看见」多少字视野的大小
短期记忆当前这轮对话的内容桌面上摊开的纸
长期记忆跨会话保留的信息,存在外部后面的档案柜

一句话记住:上下文是「视野」,短期记忆是「此刻在想什么」,长期记忆是「存在笔记里的东西」。

三、记忆还能再细分成四类(进阶)#

如果再把长期记忆拆开,大致有这么四种:

类型存什么例子
工作记忆当前任务状态这次任务做到第几步了
情景记忆过往的交互经历上次你说过喜欢简洁回答
语义记忆概念与事实知识公司产品的功能清单
过程记忆成功执行过的路径上次修复这类 bug 的步骤

短期记忆像那只小杯子,长期记忆像那排归档的罐子

四、为什么不能「全都塞进去」#

我最早的方案特别朴素:把所有历史对话都拼进提示词。结果撞了三面墙:

  • 贵:每轮都要重传一遍,token 哗哗地烧。
  • 慢:上下文越长,响应越慢。
  • 乱:无关信息太多,模型反而抓不住重点,甚至被带偏。

所以记忆的核心不是「记得多」,而是在对的时候,想起对的那一点。

五、RAG:给模型配一场「开卷考试」#

RAG 治的是另一个老毛病:知识过期。模型的知识停在训练那一天,之后发生的事它一无所知。

一个特别好的类比是:模型像一个知识渊博、但记忆停在某天的人。RAG(检索增强生成)就是允许他在回答前,先翻一下手边的资料。

1. 把资料切小块,转成向量,存进向量库
2. 用户提问时,把问题也转成向量,去库里找最相近的几块
3. 把找到的内容 + 问题,一起交给模型
4. 模型基于这些内容回答(还能附上出处)

它最妙的地方在于:模型的知识可以「更新」,我只要换掉库里的资料,不用重新训练。

六、RAG 也不是万能:几个进阶点#

  • 切块策略:切太碎会断章取义,太大又浪费上下文,按语义切通常更稳。
  • 重排(rerank):先粗召回一批,再用更精细的模型重排,效果会好很多。
  • 混合检索:向量(语义)+ 关键词(精确)混着来,兼顾「意思相近」和「字面精确」。
  • Agentic RAG:让 Agent 自己决定「要不要检索、检索几次、换什么关键词」,而不是每次机械地检索一遍。

七、一个生产级的记忆流水线:五个动作#

很多团队会把记忆拆成这条流水线:抽取 → 整合 → 存储 → 检索 → 遗忘。

动作干什么
抽取从对话里挑出值得记的(偏好、结论、事实)
整合和已有记忆合并去重,处理矛盾
存储转成向量 + 元数据,存起来
检索用到时按语义 + 过滤条件取回
遗忘过期或无关的定期清掉(这条最容易被忘,也最容易出事)

最后那个「遗忘」,我要单独提一句。一个只记得加、从不删的 Agent,早晚会被自己过去的臆话淹没。

八、三层记忆架构(工程视角)#

如果把记忆按覆盖面分,大概长这样:

层级名字覆盖范围存哪里
L1工作记忆当前会话直接放进上下文
L2情景记忆跨会话的个人历史外部存储(键值 / 文档库)
L3语义记忆组织知识库向量库 + RAG

大部分翻车案例都长一个样:只做了 L1,另两层要么没做,要么做了没接好。

九、我踩过的坑#

  • 切块切太碎:一句话被切成三块,检索到一半,回答自然残缺。
  • 只召回不重排:找回来的前几条质量很差,加了重排才好转。
  • 什么都想记:不是所有对话都值得长期记忆。我现在只保留「结论」和「偏好」,而不是原封不动的聊天记录。
  • 忘了「遗忘」:过期的信息一直留在库里,会持续污染后面的回答。

十、一句话总结#

记忆不是为了装下一切,而是为了在该想起来的时候,刚好想得起来。

下一篇是这个小系列的最后一篇:规划和反思,也就是 Agent 的「主见」怎么养成。

参考资料#

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

Agent 教学笔记(三):记忆与 RAG,治好 Agent 的「失忆症」
http://www.zhima778.cloud/posts/agent-notes-03-memory/
作者
知不知马
发布于
2026-09-03
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

目录