## 卓克：AI是怎么记住我们的？

你好，这里是《得到精选》，我是李南南。

今天的内容，来自卓克老师主理的《科技参考》。你有没有过这种体验：和AI聊天时，它突然提到你上周说过的事，让你觉得“它居然还记得”。这种感觉就像遇到了一个真正的朋友，能记住你之前和它说过的话。

那么，AI到底是怎么记住我们的呢？它真的把我们所有的对话都完整保存下来了吗？最近，有位技术大神通过反复套话，竟然破解了ChatGPT的记忆机制。结果发现，AI记人的方式，远比我们想象的简单，但又出乎意料的聪明。

接下来，咱们就有请卓克老师来展开说说。

---

![图片](https://piccdn2.umiwi.com/uploader/image/ddarticle/2026022617/1902776022294743648/022617.jpeg)

欢迎回到《科技参考》，我是卓克。

今天很多人用大语言模型，并不是查资料或者生成和工作相关的内容，而是闲聊，甚至谈恋爱。之所以能聊得不亦乐乎，除了因为他内嵌了相当多的信息可以被你捞出来，还因为他真的像一个朋友，能记得你之前和他说过的事。那么大语言模型是怎么记住我们的呢？

其实具体的机制我们是很难知道的，因为这已经属于保密级别的内容了。而最近我在X上看到一个哥们（Manthan Gupta），竟然通过和GPT的反复套话，破解了ChatGPT的记忆机制。看完之后让我感觉，ChatGPT的工程设计真是有很多出人意料，但又合乎情理的地方。

这期《科技参考》我就带你看看ChatGPT的记忆机制。

在看具体细节之前，我还是很替这个哥们捏了一把汗，他是怎么在没有被封号的情况下获得的这些内容呢？而各位也自然会问，他说破解了记忆机制，你就信啊？既然涉及机密，怎么证明他说的这些是对的呢？

如果按科学验证的强度看，我也没有证据，他说的一定就是对的。但结合我自己的使用体验，还有一些细节，确实验证了他的描述。

更主要的是，他是AI圈子里非常有名的红队测试者（Red Teamer），也就是帮助模型开发时做安全测试、挑战安全边界的人。除了业余时间做红队测试之外，他平时是一个GPU内核工程师，开发新的算子，设计显存搬运策略，为分布式训练调优性能，编排Agent，总之是一个大内行。所以，哪怕他猜的部分有错误，相信也不是伤筋动骨的问题。

下面咱们具体说说记忆机制。

ChatGPT记忆机制比绝大多数人想的要简单得多，他并没有使用向量数据库，也没有对过往全部历史对话做RAG，更没有做复杂的embedding。这一下多了3种具体的工程实施，可能还都是陌生的词，什么意思呢？

如果我们完全忽略工程细节，只从方法论上去介绍刚刚说的那三种方法，就是说GPT只是想表现出来对你有印象，GPT从来不打算完整地记住你。以上三种方法全都是从“希望完整记住你”这个角度，通过不同方式实现的。

这些实现方式里，有些是很吃算力，很吃存储，成本很高的，但可能记得很好；有些不太吃算力，不太吃存储，记忆效果没那么好，但即便没那么好，也是奔着“把你和GPT的所有对话都记住”这个方向去做的。

但实际上，真实的ChatGPT压根没打算全部记住你。他瞄着这么一个目标，就是：用户能感觉到“GPT好像记得我啊”，只要让用户有这种感受就足够了。

所以，为了实现这种效果，GPT的记忆系统设置了4级：

1. 元对话数据（Session Metadata）

2. 用户记忆（User Memory）

3. 近期对话摘要

4. 当前对话内容

咱们挨个说。

第1级，元对话数据里保存了很多你的环境指纹，比如我自己的，我查了一下，当前是这样的：

这些数据不会被存入长期记忆，是每一次开始对话时要读取的，它有助于GPT判断你的基础信息，也是GPT判断你是不是合法用户的一个阶段。这些获取之后，就会给你们之后的对话设定出一个基本框架。

比如，发现我天天都在用，对话深度在所有用户里是排前1%的，而且页面开了这么久了，他就会倾向于用更多token算出之后的答案。因为一看我这样的那明显就是动真格的，他要是敷衍我，用很少的算力回答我，那我对答案不满意，不但增加了负面反馈的风险，而且我也会反复追问，导致消耗的token反而更多，所以干脆一次性地服务好我，就完了。

时区和时间的信息，有助于他选对语言，你在聊天中说“最近如何如何”，他也能知道具体指哪天。

以上就是元对话数据。

第2级是用户记忆。

比如，我当前的对话里，参考的用户记忆的信息是这样的：

用户记忆是怎么生成的呢？有两种方式：

第一种是你在过往对话中直接和GPT说的，比如你跟他说了：“记住我是一个科普工作者”，那这样的对话就已经可以起到把这段内容腾到用户记忆里的作用了。

第二种是GPT在跟你过往的对话里，他自己提取到的特征，比如刚才说的职业、兴趣。

而且“用户记忆”部分是显性保存的，于是我们就可以随时用指令调整，比如，我可以吩咐GPT：“以后不要再把我当作科普工作者了，我已经是摇滚乐队贝斯手了”。只要这么说一下，今后用户记忆卡里就会改掉我的职业，我就是贝斯手了。

正因为他会实时搜索更新“用户记忆”，所以每次咱们跟他对话的时候，他都要根据系统提示词，把用户记忆打开看一下，然后用最接近我的习惯、风格跟我对话，这就让我们觉得和GPT对话不是很陌生。

第3级是近期对话摘要。

这一段其实是最令人意外的，在看到这个结论前，我真的会以为GPT把我们之间全部对话都保存，起码做过系统的向量化，于是才会在跟我的对话中，时不时提到从前我说过的细节。

但实际上，GPT从不检索任何历史对话，他在开启每一段对话前，会提前生成一个摘要，摘要里包含了最近15次的聊天内存，而且这个摘要里只记录我说的部分，他回复的部分完全不去摘要。

所以，对我来说，这段摘要就是：

这些摘要是预先处理好的。这部分摘要，他只消耗几百个token，作用就是对我马上要说的内容，做一个正确率七成左右的预测。

我觉得这一点设计实在是很妙。因为一个人仔仔细细跟你讨论内容的话，如果你从近到远，你把历史对话内容梳理15个，其实大概率说，这15个里很可能囊括了他最近关注的话题内容。否则谁会一天换5个完全没有交集的领域去聊天呢，那不是神经分裂了嘛。

能把最近15个重要话题做一个弱联系，有必要的情况下在谈话中提及，已经是一个非常符合熟人之间聊天的参数规划了。

你要是真弄一个过往全部历史对话记录的向量表示或者搜索，那倒是可以，但是费力不讨好。而现实中的聊天中，咱们想，见过几面、只要双方不是发小，专门约见也都是针对当下新发生的事情去讨论的。除了一些史学考据或者案件侦破，我们真的很少为了梳理过往谈话的细节做多少努力。同时，你发现没有，哪怕是不怎么熟的人，我们也可以和他们像好朋友一样聊得很high，那也是因为主要专注于当前的对话就足够了。所以，GPT工程师显然是洞悉了这一点规律的。

第4级是当前对话。

这一级才是所有GPT和我们谈话时，动真格的把细节记忆准确的部分，也是大语言模型消耗绝大部分token的地方。这也很好理解，你想，如果连当下的聊天内容都不好好算一算，那还聊什么聊啊。

不过，这部分也有限制，对于GPT-5的API来说，输入上限是27万token，大约合十几万到二十万汉字，这么一个量。这对纯文字聊天内容来说，几乎可以满足99.9%以上的用户需求，毕竟看完一个纯20万字的小说也要集中两天的时间，你这不过是一轮对话而已，我们很少一刻不停地聊上几天的时间。

而正因为有最后这一级的兜底，所以只要你和GPT还局限在单一的对话里，你完全可以放心大胆地指代在这轮对话里你之前提到过的事情，哪怕很模糊也没有问题。

这一点也是出人意料的，我用了很长时间才敢迈出这一步。因为我总担心模型理解错我指代了什么，所以总要把与之相关的东西完整地表达出来，都给列出来，这是我之前的习惯。但实际上，我后来真的用过几次，比如“第二波低垂的果实背后的技术”这种特别模糊的指代，以它来继续聊，我发现GPT完全不会理解错。

知道GPT的记忆机制后，我们不但对人际交往的模式、边界多了一分了解，也发觉高科技不一定处处都是高消耗。很多轻而易举可以做到七七八八的事，那就最好用简单的方法去搞，如无必须，勿增实体。

另外，如果GPT这么做，其实大概率说，其他大模型也是这么处理的。所以，那些用大语言模型谈恋爱的少男少女们，是不是听了这期之后也觉得不会那么容易陷入失恋等等虚拟关系的困境呢？

最后，我问了GPT一个问题：“我在所有GPT用户里，对GPT的使用强度大约能排前百分之多少”。他这么回答：“我没法给你精确的百分比，因为我拿不到总体分布数据，我只能给你一个很粗糙的区间。你最近30天几乎天天在用，单条消息普遍很长，问题复杂度很高。据此我的判断是，相对于所有注册用户，在前1%-5%之间，相对于Plus付费用户在前10%-30%之间。”

---

好，内容听完了。

在《科技参考》年度专栏中，卓克老师不仅能带你追科技前沿，更能帮你拆解现象背后的底层逻辑，让你对这个世界多一分理解，也多一分掌控。

卓克老师的《科技参考5》已经开启预售，现在订阅立减50元，优惠今晚24点截止。在得到首页搜索“科技”两个字，就能看到这门课的订阅入口，推荐你现在加入。

好，以上就是今天的内容。《得到精选》，明天见。

![图片](https://piccdn2.umiwi.com/uploader/image/ddarticle/2026022617/1902776073835399776/022617.jpeg)
