大家好,我是带你从零搭建 AI 智能体的博主。
前几篇我们一起做了一件很有成就感的事:
用 LangChain + 通义千问,
做出了能回答 PS API 问题、会格式化输出、能精准交互的智能助手 Demo。
但我相信,绝大多数人跑起来之后,都会遇到同一个扎心场景:
-
你问:什么是 PS API?
-
AI 认真回答:巴拉巴拉一顿解释。
-
你接着问:那它能修改图片尺寸吗?
-
AI:???你在说啥?
上一句刚说完,下一句就不认账。
像极了只有 7 秒记忆的金鱼。
你可能会怀疑:
是我没调好参数?
是提示词不够强?
还是通义千问本身不行?
今天这篇,我用最通俗、不写一行代码的方式,把 LLM 记忆的本质讲透。
看完你会瞬间明白:
不是你写错了,而是 LLM 本来就没有 “记忆”。
0. 先给结论:所有大模型,原生都没有记忆
不管是通义千问、文心一言、GPT,还是其他任何 LLM。
它们都没有真正的 “记忆能力”。
LLM 的本质只有一件事:
根据你当前输入的文本,预测下一个最合理的字。
它不会:
-
记住你上一句说啥
-
记住你们聊过什么
-
记住它自己刚刚回答了什么
它就像一个:每次都失忆的超级学霸。
题做得又快又好,但一交卷,立刻忘光。
1. 那为什么 ChatGPT 能记住对话?
重点来了:
你看到的 “记忆”,全是人工拼出来的。
实现方式简单到离谱:
每次你发新问题,系统都会偷偷做一件事:
历史对话 + 新问题 = 一起塞给 LLM
LLM 并不是 “记住了”,
而是每次都把历史重新读一遍。
这就叫:
上下文(Context)
你可以把它理解为:
-
LLM 没有脑子
-
但你可以给它一张草稿纸
-
每次聊天,都把之前的内容重新写在草稿纸上
-
让它看着草稿纸回答
这就是 “多轮对话” 的全部真相。
2. LLM 的记忆 = 草稿纸大小(上下文窗口)
LLM 不是无限记的。
它的草稿纸大小是固定的,叫:
上下文窗口(Context Window)
-
装得下,就能记住
-
装不下,最早的内容就会被丢掉
所以你会发现:
聊得越久,AI 越容易 “忘事”。
不是它笨,是草稿纸写满了。
而我们平时用的:
-
ConversationBufferMemory
-
FileChatMessageHistory
-
各种记忆模块
本质只有一个功能:
帮你自动管理这张草稿纸,自动拼接历史。
3. 三个 90% 的人都踩过的记忆误区
❌ 误区 1:提示词写得好,AI 就能记住
没用。
提示词只能控制怎么回答,不能控制记住什么。
❌ 误区 2:LLM 训练过很多知识,所以有记忆
训练知识 ≠ 对话记忆。
训练知识是刻在模型里的常识。
对话记忆是临时的、动态的、必须手动塞进去。
❌ 误区 3:通义千问自带记忆
不自带。
不管是 dashscope 原生调用,还是 API 调用,都没有记忆。
所有记忆,都必须靠框架(LangChain)手动实现。
这也是为什么,我们必须单独写一篇:
给 AI 装上记忆中枢。
4. 那真正的 “长期记忆” 怎么实现?
如果只是简单拼接,对话久了一定会爆。
所以工业界常用两种方案:
① 短期记忆(内存记忆)
每次对话存在内存里,重启就丢。
对应:ConversationBufferMemory
② 持久记忆(文件 / 数据库)
把对话存到本地文件 / 数据库,重启还在。
对应:FileChatMessageHistory
我们在下一篇实战里,会用:
ConversationBufferMemory + FileChatMessageHistory
给通义千问做一个:
能记住、能持久、重启不丢、可清空的真正智能助手。
5. 总结:3 句话彻底搞懂 LLM 记忆
LLM 本身没有记忆,只有文本生成能力。
多轮对话 = 历史对话 + 新问题 一起塞给模型。
记忆模块 = 帮你自动管理草稿纸的工具。
你现在遇到的 “AI 转头就忘”,不是 Bug,是特性。
解决它,只需要一篇教程、两行组件。
也就是我们的:第 4 篇:赋予记忆|让智能体记住多轮聊天内容
为了让你在下一篇实操中不踩坑、一遍跑通,我整理了一份:
《LLM 记忆原理 + 通义千问适配手册》包含:
✅ LLM 记忆机制图解(一看就懂)
✅ 通义千问上下文配置避坑
✅ 第 4 篇记忆模块前置知识点
✅ 本系列 1–3 篇完整源码
👉 领取方式
关注本公众号:SLAM与AI智能体
后台回复关键词:LLM记忆
自动领取,无套路、直接下载



