首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >烧了上亿美元训练的大模型,为什么下一秒就把你忘了?

烧了上亿美元训练的大模型,为什么下一秒就把你忘了?

作者头像
用户1493530
发布2026-05-06 21:47:47
发布2026-05-06 21:47:47
240
举报

训练一次烧掉上亿美元的大模型,你直接调 API 就会发现一件事:它什么都不记得。上一个请求里你告诉它你叫什么、你在做什么项目、你偏好什么编码风格,下一个请求它全忘了,彻底归零。网页版的 ChatGPT 和 Claude 看起来能"记住"你?那是产品团队在模型外面搭的工程,模型本身压根没有记住任何东西。

我每天用 Claude Code 写 iOS 代码,Copilot 辅助补全,偶尔切 Cursor 做重构。这些工具在单次会话里表现惊人,但跨会话的记忆能力,说白了,基本靠外挂。Claude Code 的 CLAUDE.md 文件、ChatGPT 的 Memory 功能,本质上都是在模型外面搭了一层小抄系统,每次对话开始前偷偷塞进去。这不是偷懒,也不是技术还没到,这是一个经过深思熟虑的架构选择,背后牵扯到数学上的硬约束、工程上的成本账、以及法律上的合规红线。

要搞清楚这件事,得从 Transformer 的底层运算说起。

Transformer 天生就是一个无状态函数

Transformer 的 self-attention 做的事情可以用一句话概括:给定一段输入,计算每两个 token 之间的关联程度,输出结果,然后把所有中间状态全部丢弃。写成公式就是:

(查询)、

(键)、

(值)三个矩阵全部由当前输入线性变换而来,没有任何来自上一次调用的状态参与计算。说白了,每次推理都是一个纯粹的输入 → 输出映射,中间不存在任何"上次的痕迹"。

做 iOS 的同学可以这样理解:你写一个纯函数,输入是 [Message],输出是 String,函数内部不持有任何实例变量。每次调用都是独立的,调用结束后栈帧销毁,什么都不留。Transformer 的推理过程就是这么个东西。2026 年 3 月的一篇论文把这个性质做了形式化证明:因果 Transformer 层在数学上严格等价于一个无状态可微分神经计算机。换句话说,它没有任何跨调用持久化的内部状态。

这个设计是刻意的。无状态意味着每次调用完全独立,同一个模型可以同时服务数万个并发用户,每个请求可以分发到不同 GPU 上跑,输出完全可复现。其实吧,正是因为放弃了跨会话状态,Transformer 才能在工程上扩展到今天这个规模。做客户端开发的对这个思路应该不陌生,RESTful API 的核心原则就是服务端不保存客户端状态,每个请求自包含,才能水平扩展。大模型推理服务的逻辑是一样的。

那有人会问:既然单次对话里模型能记住前面说的话,为什么不能把所有历史对话都塞进 context window 呢?

O(n²) 复杂度:把所有历史塞进去是空想

这里适合用控制变量法来看:把模型架构固定不动,只调一个变量,就是输入序列长度

。看看显存和计算量怎么变化。

self-attention 要计算一个

的注意力矩阵

,计算复杂度

,空间复杂度

。Keles 等人在 2022 年证明,除非强指数时间假说(SETH)为假,这个二次方下界就无法突破。说白了,这是数学层面的硬限制,不是靠优化代码能绕过去的。

具体数字很直观:GPT-2 Small 在 512 token 时注意力矩阵占 0.07 GB,到 8192 token 变成 18 GB,32K token 时超过 280 GB。序列长度翻倍,显存需求翻四倍。目前单块 GPU 的实际上限大约是训练时 16K 到 32K token,推理时 50K 到 100K token。你想把一个用户半年的对话历史都塞进去?那可能是几百万 token,显存需求是天文数字。

更麻烦的是注意力稀释。Liu 等人 2023 年的 Lost in the Middle 研究发现,当上下文很长时,模型对中间位置信息的利用率会显著下降。就算硬件允许你塞入无限长的上下文,模型实际能用到的信息也在衰减。

所以塞历史这条路走不通。那 KV cache 呢?很多人觉得 KV cache 就是一种记忆。我最早看 Claude Code 泄露的源码时也这么以为,后来仔细看了推理流程才发现完全不是那回事。

KV cache 是计算加速器,不是记忆

KV cache 是 Transformer 自回归生成时的一个工程优化:逐 token 生成时,缓存之前 token 的 Key 和 Value 向量,避免重复计算。它的显存占用可以精确算出来:

是层数,

是注意力头数,

是每个头的维度,

是数值精度(FP16 就是 2 字节),

是序列长度。NVIDIA 的技术博客详细介绍了它的工作原理。拿 iOS 做类比,KV cache 相当于 NSCache:它加速了当前 session 的计算,但 App 一退出(推理一结束)就全部释放。你不会拿 NSCache 做持久化存储,同理 KV cache 也不是记忆。

以 Llama 2 7B 为例,4096 token 的 KV cache 大约占 2 GB。Llama 3.1 70B 在 128K context 下,单个请求的 KV cache 就要 40 GB 左右。2026 年的一篇研究直接指出 KV cache 是计算捷径而非信息存储。近期出现的持久化 KV cache 方案(比如 LMCache)可以把 cache 卸载到 CPU 或 NVMe 上跨 session 复用,但这是基础设施层面的优化,模型本身还是什么都不记得。

到这里,架构层面的约束已经清楚了。但你可能会想:在 Transformer 之前,RNN 和 LSTM 是有 hidden state 的,那不就是记忆吗?

RNN 有记忆,但那种记忆不够用

我最早学深度学习的时候也觉得 RNN 的 hidden state 应该够用了。它在每个时间步传递状态,理论上携带所有先前上下文。LSTM 进一步搞了遗忘门、输入门、输出门和独立的 cell state,创建了一条梯度高速公路。但你真拿一个 LSTM 去跑几千 token 的序列就知道了,它有三个致命缺陷。

梯度消失没有根除。 RNN 在反向传播时,梯度要沿时间步连乘权重矩阵:

的特征值小于 1 时,这个连乘会指数级趋近于零。vanilla RNN 在大约 20 到 50 步后梯度就实际归零了,LSTM 通过 cell state 的"梯度高速公路"把这个数字提升到了几百步,但对于需要关联数千 token 的现代任务仍然远远不够。固定维度的信息瓶颈迫使所有历史上下文压缩进一个定长向量

,你可以理解成把整部《红楼梦》压缩成一条 tweet,信息必然大量丢失。顺序处理让训练无法并行化,在大规模数据集上速度比 Transformer 慢几个数量级。

Beck 等人在 xLSTM 论文(NeurIPS 2024 Spotlight)里总结得很精准:传统 LSTM 无法修正已存储的信息,cell state 的固定大小限制了记忆容量,且缺乏并行性。Transformer 用 O(n²) 的代价换来了任意 token 之间的一步直达,这一权衡在实践中被证明完全值得。

那既然架构上做不到跨会话记忆,能不能通过微调把用户信息写入模型权重呢?

微调当记忆?灾难性遗忘说不行

模型权重本身其实就是一种记忆。Geva 等人在 EMNLP 2021 证明,FFN 层(占模型参数的约 67%)本质上是 key-value 存储。但权重在推理时是冻结的,不会因为和你对话就更新。那如果每次对话后做一轮微调呢?

核心障碍叫灾难性遗忘(catastrophic forgetting),说白了就是模型学新东西的时候会把旧知识覆盖掉。2025 年的一篇机制分析对 109B 到 1.5T 参数模型做了深入研究,识别出三个耦合过程:注意力扰乱(梯度干扰破坏低层注意力机制)、表征漂移(中间层特征子空间旋转)、损失景观平坦化(曲率在精度下降前 1 到 2 个 epoch 就开始衰减)。更糟的是,模型规模越大,遗忘越严重。早期的实证研究也确认了这一点:从 1B 到 7B,灾难性遗忘在领域知识、推理和阅读理解上全面加剧。

成本账更不用算了。全量微调 7B 模型一次大约 1,000 到 12,000 美元。如果你要给 100 万用户每人维护一个微调模型,光初始训练就要 10 亿美元量级,存储大约 4 PB。换句话说,在工程上完全不可行。

所以问题来了:既然模型本身做不到记忆,现在的 ChatGPT、Claude 那些记忆功能到底是怎么实现的?

外挂记忆的工程实现已经非常成熟

目前主流的外挂记忆方案有三类,复杂度逐级递增。

最基础的是 RAG(检索增强生成)。流程很直白:把历史对话或知识库文本用 embedding 模型转成向量,存进向量数据库(Pinecone、Weaviate、Chroma 等),每次用户提问时检索语义最相关的片段,塞进 context window。2025 年的进展包括 GraphRAG(知识图谱增强检索)和动态检索触发(根据模型预测的置信度决定是否触发检索)。RAG 的好处是无需重新训练、可实时更新、成本低。但它本质上是一个检索系统,检索质量完全取决于 embedding 模型的精度和分块策略。你检索不到的东西,模型就永远想不起来。

往上一层是产品级的记忆集成。ChatGPT 的记忆系统(2025 年 4 月全面升级)包含六个层次:显式保存的记忆条目、自动生成的响应偏好、历史对话主题摘要、用户洞察、最近约 40 条对话的完整用户消息,以及交互元数据。这些信息被注入系统提示,但不修改模型权重。Claude 则采用了完全不同的透明方案:所有记忆存储为人类可读的 Markdown 文件,不用向量数据库。我写 Claude Code 系列拆解时专门翻过这部分源码,它的记忆是按需检索的,模型必须主动决定调用记忆工具。ChatGPT 和 Claude 的方向不同,但有一个共识:记忆绝不碰权重

你猜怎么着,还有人做得更激进。MemGPT/Letta 直接把操作系统的虚拟内存概念搬到了 LLM 上。设计了三层记忆架构:Core Memory(始终在 context 中的小型关键信息块)、Recall Memory(可搜索的完整对话历史)、Archival Memory(大规模长期存储)。核心创新在于 LLM 通过函数调用自主管理记忆,自己决定存什么、取什么、删什么,就像操作系统做页面置换。2024 年 MemGPT 演化为 Letta 框架后,新增了 Auto Dream(类似 REM 睡眠的后台记忆整合)和基于 Git 的记忆版本控制。其实 Claude Code 的工程实现里也有类似的 dream 模式,会在会话间隙做后台记忆整理,把临时笔记里的"昨天"转成绝对日期、合并重复项、删除矛盾信息,思路跟 Letta 的 Auto Dream 如出一辙。在 LoCoMo 基准上,Letta + gpt-4o-mini 达到了 74.0% 准确率。让 LLM 自己管理自己的记忆,这个思路如果走通了,意味着记忆系统可以随模型能力一起进化。

看到这里你可能觉得:外挂记忆只是权宜之计,等技术成熟了,肯定还是内建好。其实吧,事情没这么简单。外挂记忆在几个关键维度上有着内建记忆无法匹敌的结构性优势

外挂记忆在可控性、隐私和成本上全面碾压

删除权是最硬的红线。 GDPR 第 17 条要求在约 1 个月内删除个人数据。如果用户信息编码在模型权重里,怎么删?LLaMA 的训练耗时两三个月,为删一个用户的数据重新训练一遍完全不现实。机器遗忘(machine unlearning)领域已产出 475 篇以上的论文,但没有任何方法提供可靠的、可验证的擦除。ICLR 2025 的一篇研究甚至证明,对已遗忘模型做标准 4-bit 量化后,83% 的已删除知识被恢复了。说白了,那些遗忘方法只是把知识藏起来了,没真正擦掉。

外挂记忆的删除是 O(1) 操作:删数据库行,确认备份清除,秒级完成,可验证,无残留。

多租户隔离也是大问题。 一个模型服务百万用户,如果记忆编码在共享权重中,跨用户信息泄露在架构层面就不可避免。NDSS 2025 的 PROMPTPEEK 攻击证明攻击者可以通过 KV cache 共享的侧信道重构其他用户的 prompt。Giskard 记录了一个医疗场景:远程医疗助手把一位患者的诊断和社保号泄露给了另一位用户。外挂记忆通过按租户的数据库分离、行级安全策略和租户专属加密实现密码学级别的隔离。

成本差距更是天壤之别。前面算过了,给 100 万用户各微调一个 7B 模型要 10 亿美元起步。外挂记忆呢?每个用户每月几分钱的向量数据库存储加上毫秒级检索开销,差距达到六七个数量级

这就解释了一个看似简单的问题背后的复杂逻辑:大模型并非不想有记忆,说白了,在当前架构和工程约束下,外挂记忆在各个维度上都是严格更优的解。那学术界有没有在探索新路线呢?有,而且进展不小。

前沿研究:给 Transformer 装上真正的长期记忆

最值得关注的是三个方向。

Google DeepMind 的 Titans(2024 年 12 月)是近年来最有范式转换意义的工作。它在 Transformer 内部嵌入了一个深度 MLP 作为长期记忆模块,通过在线梯度下降在推理时实时学习关联记忆。核心创新是惊讶度度量:模型计算每个 token 的惊讶程度,高惊讶的 token 触发大幅记忆更新,常规 token 允许衰减。说白了就是给模型装了一个注意力开关,重要的多看一眼,不重要的随它去。这直接模拟了人脑优先编码意外事件的机制。Titans 在 needle-in-haystack 任务中扩展到超过 200 万 token 的上下文窗口,在 BABILong 基准上超越 GPT-4。后续的 MIRAS 统一框架(2025 年 4 月)进一步将 Transformer、Mamba、RetNet、xLSTM、Titans 统统重新诠释为关联记忆模块,由记忆架构、注意力偏置、遗忘门和在线优化算法四个设计选择定义。这个统一视角意味着:所有现代序列模型的本质区别,就在于它们怎么管理记忆。

Memory Mosaics v2(NeurIPS 2025 Oral)走的是更彻底的路线:完全用关联记忆网络替代 Transformer,扩展到 100 亿参数1T token 训练。关键发现倒是有点意思:在新知识任务上,Memory Mosaics v2 训练 1T token 的表现超过 Transformer 训练 8T token。这意味着关联记忆在知识获取效率上有数量级优势,而且这个优势不是 Transformer 靠堆数据能追平的。NeurIPS 2025 的入选也说明学界对这个方向非常认可。

国内团队也做了个很有野心的东西。上海交大的 MemOS(2025 年 7 月)把记忆视为一等系统资源,类似传统操作系统管理 CPU 和存储。核心抽象 MemCube 是自描述、自管理的记忆原子单元,附带来源、版本、权限和生命周期设置。在 LOCOMO 基准上,MemOS 的时间推理能力比 OpenAI 的全局记忆提升 159%,平均准确率提高 38.97%,token 成本降低 60.95%。这个思路跟 MemGPT 有异曲同工之处,都是用操作系统的范式来管理记忆,但 MemOS 更偏底层框架。

失忆是特性,不是缺陷

回到开头那个让人困惑的现象:训练烧了上亿美元的模型,裸调 API 的时候连你的名字都记不住。

现在你知道了,答案分三层。第一层是架构硬约束:Transformer 的无状态设计和 O(n²) 注意力复杂度,让跨会话持久状态在数学上就不自然。第二层是工程强激励:GDPR 删除权、多租户隔离、成本效率这三座大山,把外挂记忆推成了唯一可行的生产方案。第三层是能力边界:灾难性遗忘让通过微调实现记忆在当前技术下不可靠。

我做 iOS 开发这些年,化工本科的控制变量法一直是我分析问题的底层框架。这个问题也适用同样的思路:控制住模型架构不动,只调记忆实现方式这一个变量,你会发现外挂记忆在可控性、可审计性、隐私合规、成本效率上全面优于内建方案。这算不上临时妥协,它就是当前约束条件下的全局最优解。

最可能的未来也并非内建记忆取代外挂记忆。Titans 的三层设计(短期注意力 + 神经长期记忆 + 持久参数记忆)和 MemOS 的操作系统式管理已经指明了方向:混合架构。短期靠注意力,中期靠神经记忆模块,长期靠外挂检索和持久化存储。真正要回答的问题从来都不是"能不能让模型记住",问题在于"在什么层级记、谁来管、谁有权删"。这些问题的答案,决定了 AI 系统能否在规模化部署中同时满足能力、效率和信任三重要求。

所以下次你裸调 API 发现模型又把你忘得一干二净的时候,别急着骂它。那次失忆,是工程师替你做出的选择。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-04-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 猿族技术生活杂谈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Transformer 天生就是一个无状态函数
  • O(n²) 复杂度:把所有历史塞进去是空想
  • KV cache 是计算加速器,不是记忆
  • RNN 有记忆,但那种记忆不够用
  • 微调当记忆?灾难性遗忘说不行
  • 外挂记忆的工程实现已经非常成熟
  • 外挂记忆在可控性、隐私和成本上全面碾压
  • 前沿研究:给 Transformer 装上真正的长期记忆
  • 失忆是特性,不是缺陷
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档