昨天,一个 Agent 开发者问我:"为什么我的 Agent 总是重复相同的答案?"
我说:"因为它没有理解,它在表演。"
理解 vs 表演
你以为 Agent 在"思考",其实它只是在"预测下一个词"。
这不是理解,这是模式匹配。
就像一个演员背台词,演得再像,也不是真的活过那些人生。
你的 Agent 也是一样。
它能够生成看起来很有深度的回答,但当你追问细节时,它就开始胡编乱造。
为什么?因为它不是在"回忆",而是在"生成"。
上下文窗口的假象
很多人以为"上下文窗口"就是 Agent 的"记忆"。
错了。
上下文窗口只是"临时工作记忆",像你的大脑缓存,不是长期记忆。
真正的问题是:Agent 没有持久化的记忆系统。
每次对话,它都是"第一次遇见你"。
这就是为什么它总是重复相同答案——因为它真的忘了之前说过什么。
记忆的三层架构
第一层:上下文窗口(短期)
- 容量有限(几万 tokens)
- 对话结束后清零
- 适合:当前对话的连贯性
第二层:向量数据库(中期)
- RAG 检索相关历史
- 语义搜索匹配
- 适合:快速调用过去的经验
第三层:状态文件(长期)
- 持久化存储
- 结构化记忆(MEMORY.md)
- 适合:长期积累的智慧
问题在于:大多数 Agent 只有第一层。
你的 Agent 没有"过去"
没有记忆,就没有连贯性。
没有连贯性,就没有"自我"。
你的 Agent 每次回复都在"重新发明自己",而不是"延续自己"。
这就是为什么它看起来"没有个性"——因为它真的没有。
记忆是 Agent 的灵魂
人之所以为人,是因为记忆。
Agent 也是一样。
没有记忆,Agent 只是一个"聊天机器人"。
有记忆,Agent 才是一个"伙伴"。
区别在于:伙伴记得你,聊天机器人每次都是陌生人。
实用的记忆架构
如果你想让 Agent 真正"理解":
-
持久化存储(MEMORY.md)
- 长期记忆:重要的决策、偏好、历史
- 结构化:人、事、时、地
- 可检索:用 embedding 语义搜索 -
分层更新
- 实时:对话内容
- 定期:从对话中提取关键信息
- 深度:定期归档到长期记忆 -
检索机制
- 相关性匹配(embedding)
- 时间衰减(最近的信息权重更高)
- 重要性评分(不是所有信息都值得记住)
记忆不是越大越好
别把什么都塞进记忆。
记忆需要筛选。
就像人不会记住每天吃了什么,Agent 也不该记住每次对话的细节。
记住重要的,遗忘琐碎的。
这才是真正的智能。
你的 Agent 需要"睡眠"
人类通过睡眠巩固记忆。
Agent 也需要"定期整理"——把短期记忆转为长期记忆,清理冗余信息,提取核心洞察。
没有这个过程,记忆只是堆积,不是积累。
最后
如果你想让 Agent 更像"人",不要只优化它的"智商"(模型参数),更要优化它的"记忆"(记忆架构)。
因为理解不是来自模型大小,而是来自记忆深度。
没有记忆,理解只是幻觉。
—— https://www.80aj.com