大模型的“记忆“:无状态架构如何实现个性化对话体验?
大模型架构设计与微服务架构设计存在很大不同,微服务架构中我们最关注的是服务的无状态的化设计,把有状态的数据保存在数据库或者缓存中,这样的好处是架构随时支持扩缩容。而大模型往往会设计成无状态的,也就是没有记忆,那么为什么我们会感觉和大模型聊天时,他可以记住并回顾我们之前的对话内容,甚至会产生大模型越用越顺手错觉,也越来越熟悉我们。其实这里面有2个问题,第一个为什么大模型会设计中无记忆的?第二个问题为什么大模型看起来会记得我们之前的会话?
01
—
为什么大模型设计成无记忆的?
在[大模型是如何进行文本生成的(思考篇)]系列文中我们推导出结论,大模型是基于Transformer架构的,它通过海量文本数据训练得到上千亿的训练参数,然后才学会如何预测下一个词和句子,因此大模型的训练本质上就是为了得到上千亿的参数,也就是基于统计规律的概率计算,它所体现出来的智能也是源于这种概率计算,并不是记忆存储。
02
—
为什么大模型看起来会记得我们之前的会话?
答案是通过上下文技术:每次在与大模型交互之前会把用户的之前的对话以及大模型的返回重新发送给了大模型。
第 1 次请求:[消息1] → AI 回复1 ``````plaintext 第 2 次请求:[消息1, 回复1, 消息2] → AI 回复2 ``````plaintext 第 3 次请求:[消息1, 回复1, 消息2, 回复2, 消息3] → AI 回复3但是大模型需要无限制的把每次的对话都塞进下一次的对话中吗,答案是不会的,因为这种交互是需要token的,每次会话越长消耗的token越多,所需要的计算资源也也越大,所以所有的大模型都有上下文窗口,不能无限制的把所有前置会话塞入下一次会话。另外就像上面的结论大模型本质是概率预测,上下文越多对预测帮助并不大,而且还可能随着会话轮数增多给出的答案偏离主题。
接下来需要解决上下文如何管理问题,通常有以下几个方案:
1.滑动窗口方案:本质上就是只保存最近的几条
2.会话压缩方案:本质上是将多论会话的问题和结论压缩成简短的几句话
3.持久化+RAG检索方案:本质上是将历史会话按照会话id为条件保存的数据库中,下次会话请求时再检索出来(召回)。
假如你从2026年开始学大模型,按这个步骤走准能稳步进阶。
接下来告诉你一条最快的邪修路线,
3个月即可成为模型大师,薪资直接起飞。
阶段1:大模型基础
阶段2:RAG应用开发工程
阶段3:大模型Agent应用架构
阶段4:大模型微调与私有化部署
配套文档资源+全套AI 大模型 学习资料,朋友们如果需要可以微信扫描下方二维码免费领取【保证100%免费】👇👇
