对话一关就忘,是普通 AI 助手和成熟 AI 智能体的分水岭。智能体之所以「越用越懂你」,靠的是长期记忆:把重要信息写进外部存储,下次任务时再取出来用。写入是记忆系统的第一环,分两步走——先摘要,后向量化。
对话结束,值得留下的才进档案
不是所有对话内容都值得记。全程逐句存档,存储会爆,检索时噪声也大。写入前先筛选,通常值得留的有三类:用户的稳定偏好,比如「输出要用表格」「别写套话」;任务的关键结论,比如某次调研的核心发现;纠正与反馈,比如用户明确指出过的错误。
临时性的中间过程、已经过时的旧结论,一般不进长期记忆,顶多在任务期内短期保留。
摘要压缩:把长对话变成几句话
原始对话动辄几千字,直接入库又占空间又难检索,所以写入前要先做摘要。摘要由模型完成,带着「这条记忆将来会被怎么用」的问题去压缩:用户偏好压成一句明确陈述,任务结论压成带背景的短段。
摘要要保留「什么时间、什么场景、谁说的」这类元信息,光留结论不留语境,将来检索出来也不敢直接用。腾讯元宝、智谱清言这类产品里的「记住我的偏好」功能,背后就是这套摘要写入在跑。
向量化:给记忆装上门牌号
存进去只是第一步,将来还要按「意思」找出来。向量化就是让嵌入模型把每条摘要变成一串数字向量,语义相近的内容,向量也相近。原始文本没法按语义搜,向量可以。
写入时通常存两份:原文摘要存一份,向量存一份,向量相当于记忆的门牌号。没有向量化,检索只能靠关键词硬匹配,你问「我的写作风格偏好」,它就找不到写着「行文少用感叹号」的那条记忆。
写入的时机与更新
什么时候写?常见两个时机:任务收尾时把本次任务的结论与教训批量写入;对话中出现明确偏好或纠正时即时写入。即时写入保真度高,批量写入省调用,成熟系统两者混用。
更新比写入更关键。同一偏好的新表述来了,应该覆盖或合并旧条目,而不是再存一条,否则检索时会召回两条互相矛盾的记忆。给记忆打标签、记版本,就是为了将来能干净地更新。
写入时机决定保真度,更新方式决定记忆会不会打架。
| 场景 | 触发时机 | 写什么 | 代价与注意 |
|---|---|---|---|
| 批量写入 | 任务收尾时 | 本次任务的结论与教训 | 省调用,保真度不如即时写 |
| 即时写入 | 对话中出现明确偏好或纠正时 | 那一条偏好或纠正 | 保真度高,多花调用 |
| 覆盖合并 | 同一偏好的新表述来了 | 覆盖或合并旧条目 | 不合并会召回两条互相矛盾的记忆 |
留一手:可删除与可追溯
记忆写入还要预留退路:用户要求删除某类信息时,系统能按条删干净;某条记忆引起过错误行为时,能追溯它是什么时候、从哪段对话写进去的。所以每条记忆都带来源标记和时间戳,这既是礼貌也是安全阀。
记忆写入四步
- 筛选:偏好、结论、纠正三类优先入库
- 摘要:连结论带语境压缩成短条目
- 向量化:生成语义门牌号,支持按意思检索
- 更新:新旧合并去矛盾,留时间戳与来源
翻翻你常用的智能体记住了什么,三条记忆里能有两条真的有用,写入就算合格。
延伸阅读:存好的记忆怎么找回来,见记忆是怎么检索的?相关片段召回;单任务内的信息怎么消化,参考观察结果是怎么被消化的?关键步骤一次讲清;任务何时算完才触发写入,见循环是怎么退出的?完成判据,从原理到落地;多智能体共享记忆的前提,看多 Agent 是怎么分派任务的?。
关于记忆写入的三个常问问题
- 记忆越多越好吗?:不是。记忆库像衣柜,定期清理过时条目比一味囤积更重要,检索质量取决于信噪比而不是总量。
- 用户能看见智能体记了什么吗?:好的产品应该让用户可查看、可修改、可删除,记忆是替用户保管的,不是产品私有的黑箱。
- 摘要这一步会引入偏差吗?:会,压缩必然有取舍。对策是重要记忆保留一句原文引用,将来核对时有据可查。


