给小雅装上记忆
既然它只看"白板",那就把该记的,每次都写上去
上一节我们发现:小雅只看"上下文白板",换个对话就清空。
那解法其实呼之欲出了——既然它只认白板上的字,那我们每次都把"它该记得的事"提前写到白板上不就行了?
这一节,就给小雅配一个"随身记事本"。配完,你新开一个对话跟它说话,它张口就是:"欢迎回来,还是老地方那杯美式?"——它,记住你了。
记忆,其实是"每次自动带上"
智能体的"记忆"听起来玄,拆开看就两种,都很朴素:
| 记忆类型 | 是什么 | 怎么实现 |
|---|---|---|
| 🧠 短期记忆 | 这段对话里说过的话 | 把历史对话一起塞回白板 |
| 📒 长期记忆 | 跨对话也要记的(你的名字、偏好、项目) | 存到外部,每次对话自动取出来写到白板上 |
长期记忆,就像给小雅一个随身记事本:
- 你说"我住朝阳、爱美式" → 它悄悄记进本子。
- 下次见面,它先翻一眼本子,再跟你说话——于是它"记得"你。
它的脑子还是会失忆,但本子不会丢。"记忆"的本质,是"每次开口前先翻本子"。
一个绕不开的麻烦:白板会满
如果把所有历史对话都塞回白板,聊久了白板就满了(还越来越贵)。怎么办?——摘要压缩。
把前面一长段对话,让模型先总结成几句要点,再放回白板。细节丢一点,但关键信息留下了,又省了空间。
这就像记事本写满了,你把旧页归纳成一行重点,腾出地方继续记。
🙌 动手:给小雅配个记事本
在扣子里,"长期记忆 / 变量 / 记忆"这类能力可以让小雅跨对话记住你:
- 打开小雅的编排页,找到 记忆 / 长期记忆 / 变量 相关设置并开启(具体名称以平台当前界面为准)。
- 在人设里加一句守则:
当用户透露了长期有用的信息(如称呼、所在城市、偏好、正在做的事),主动记下来;之后的对话里先回顾这些信息,再回应。
- 测试:先告诉它"我叫小林,住朝阳,爱喝美式" → 新开一个对话 → 问"我爱喝啥来着?"
- 看它能不能答上来。✅ 能,就说明记事本生效了。
🔧 想深入?代码里怎么做(可选)
每次对话开始:
记忆 = 从数据库读出这个用户的长期信息(名字/偏好/项目…)
历史 = 最近几轮对话(太长就先摘要压缩)
回复 = 问大模型( 系统提示 + 记忆 + 历史 + 这次的问题 )
对话结束后:
如果用户透露了新的长期信息 → 写回数据库
看,"记忆系统"= 一个外部存储 + 每次把它读出来拼进上下文。没有魔法。
最常见的翻车:为了"让它记得全",把几百轮对话原样塞回白板——结果又贵、又慢、还容易让它抓不住重点。
正确姿势:长期信息只存"关键事实",对话历史超长就摘要。 记忆不是越多越好,是"该记的记牢、没用的丢掉"。这也正好引出下一个更重要的能力——让它读懂你的资料。
请帮我写一段加进 AI 助理系统提示的『记忆守则』:明确它应该主动记住哪些类型的长期信息、忽略哪些一次性信息、以及每次对话开头如何利用这些记忆。控制在 4-5 句,可直接使用。
现在的小雅,有了随身记事本——新对话也认得你了。学完这节,你也掌握了智能体记忆的本质:把该记的存起来,每次开口前先翻一遍。
但记事本记的是"关于你的小事"。如果你想让小雅根据你的课程笔记、公司文档、几百页的资料来回答呢?这些塞不进白板,也不该塞进记事本。
下一节,我们给小雅一项更强的本领——RAG:让它像开卷考试一样,先翻到你资料里相关的那几页,再回答。它要开始"懂你的事"了。
