聊聊AI的记忆——短期记忆
AI本身并不具备原生记忆能力,我们感受到的对话连贯性,全靠外挂策略实现!这篇文章聚焦AI短期记忆,拆解其核心价值——解决当前会话的流畅衔接,同时详解三种常见实现方式:全量上下文保留完整信息却受限于窗口长度,滑动窗口高效控本却易丢早期关键信息,摘要法平衡完整性与空间却会遗漏细节。

前段时间我接触了一个 AI 玩偶的项目。为了让这个 AI 玩偶更智能,它必须得具备记忆功能,所以我顺便对AI 记忆这一块做了一点研究。
今天咱们先来聊聊短期记忆,至于长期记忆,咱们后面再讲。
为什么 AI 需要记忆?
从大语言模型的原理来说,我们给模型的输入只有提示词(Prompt),有且只能有提示词。所以,大模型本身其实是不具备记忆能力的。
我们现在看到的所谓记忆,往往是咱们通过一定的策略外挂上去的。比如把历史对话存进向量数据库里,这就是一种常见的策略。
针对不同的目的,玩法也不同。比如:
- 如果只是想让当前的对话聊起来更连贯,用短期记忆一般就能解决问题;
- 但如果想把历史对话长期保存下来,或者想实现跨会话的记忆调用,那就得动用长期记忆了。
短期记忆的三种常见玩法
一般来说,实现短期记忆主要有这么几种路子:
第一种:全量上下文
这种方式最简单粗暴,就是把所有的历史对话,一股脑全塞进 Prompt 里发给模型。
- 优点:保留的信息最完整,原汁原味。
- 缺点:受限于大模型的上下文长度。咱们知道,上下文窗口不是无限的,哪怕是支持百万 Token 的模型也有上限。而且,塞进 Prompt 的记忆越多,大模型的调用成本也就越高。
第二种:滑动窗口
这种方式比较常见。简单说,就是只保留最近的 N 轮对话,更早之前的直接舍弃掉。
- 优点:实现简单,能很好地控制住成本,提升推理速度。
- 缺点:因为只留了最近几句,早期的对话就丢了,万一里面包含关键信息,后面就找不回了。
第三种:做摘要
这种方式的原理是,当会话长度超过一定阈值时,就把较早期的那部分对话生成一个简短的摘要存起来,同时保留最近的几轮原话。
- 优点:既能让信息记录得相对完整,又能节省空间。
- 缺点:不可避免地丢失一些细节信息。
总结
在实际使用过程中,还是得看你要解决的具体问题和场景来做选择。甚至在一些非常简单的情况下,完全不用记忆功能,也能满足场景的诉求。
本文由人人都是产品经理作者【产品经理伯庸】,微信公众号:【AI文如刀】,原创/授权 发布于人人都是产品经理,未经许可,禁止转载。
题图来自Unsplash,基于 CC0 协议。
评论
- 目前还没评论,等你发挥!

起点课堂会员权益




