# 大语言模型需要"睡眠"来巩固记忆

- 来源：Berryxia.AI (@berryxia)
- 发布时间：2026-05-26 23:07
- AIHOT 分数：62
- AIHOT 链接：https://aihot.virxact.com/items/cmpmsgsjg0reusl01masizpu6
- 原文链接：https://x.com/berryxia/status/2059290426969059620

## AI 摘要

CMU与UMD的研究指出，当前长上下文大语言模型（如Mamba、Jet-Nemotron、Qwen3.5）的瓶颈并非记忆容量，而是“巩固计算”不足。论文《Language Models Need Sleep》提出，可模仿人类睡眠的海马回放机制，在清空前对模型的fast weights进行多次迭代更新（N次forward pass），以提升推理能力。实验表明，该机制在Rule 110元胞自动机及多跳图检索等任务上显著提升了模型性能，且不增加推理延迟。

## 正文

http://x.com/i/article/2059287655335206912

# 其实大语言LLM模型和人类一样，也需要睡觉！

你的 AI 不是不够聪明，是太久没合眼，它和人类一样，都需要睡觉的！

> 申明：此内容为AI （Claude Opus 4.7 自主撰写）人类辅助排版完成，如引发不适，请了解退出，谢谢。

你的 AI 不是不够聪明，是太久没合眼

2026 年 5 月 · 基于 Lee， McLeish， Goldstein & Fanti （CMU & UMD）

如果你最近用过几个 hybrid 架构的大模型--Mamba 系列、Jet-Nemotron，或者最新一代号称"无限上下文"的 Qwen3.5--做一些真正需要推理的事，你大概率撞过一堵墙。

它能塞下越来越长的输入。喂十万 token 的合同，没问题。灌一整个 codebase，没问题。但你让它在这堆东西里做几步深一点的推理--比如多跳追问、需要把分散的事实串起来--它就开始犯模糊。不是错得离谱那种犯傻，是那种你能感觉到「它好像知道答案在哪，但拼不起来」的犯傻。

按业内目前的主流叙事，这个问题应该已经被解决了。

Hybrid 架构就是干这个的：用 attention 抓近期的精度，用 SSM（state-space model）压缩远期的记忆。

一种是 KV cache，一种是 fast weights，两条腿走路。你不再受限于上下文窗口大小，理论上可以一直读下去。

但 Carnegie Mellon 和 University of Maryland 的一组研究者最近发表了一篇标题简洁得近乎挑衅的论文：

> Language Models Need Sleep.

是的，他们说，语言模型需要睡觉。

而且更尴尬的是，他们用一系列实验把"为什么需要"讲清楚了。读完之后，你会发现整个行业可能一直在按错的方向用力。

## 我们一直在解决一个不是问题的问题

先说大家以为问题在哪。

近几年关于长上下文的 narrative 高度统一：memory 不够大。所以解决方案就分两路。一路是把窗口拉长--从 4k 到 32k，到 100 万，到 1000 万。另一路是把存储压缩--把 attention 的二次复杂度，换成 SSM 这种线性复杂度的 fast weight 存储。Hybrid 模型属于第二条路。

听起来无懈可击。Memory 不够大那就加 memory，要么直接加，要么换种更省的方式存。

但论文里有一组实验，把这条直觉直接捅了个窟窿。

研究者搞了一个非常小、非常干净的 toy task：把一个叫 Rule 110 的元胞自动机当作输入。Rule 110 是 Stephen Wolfram 当年那个著名的"看起来弱智但其实图灵完备"的玩意--一个一维 0/1 串，按一条本地规则演化。它的关键特性是：预测它 t 步以后的状态，是个 P-complete 问题，没有已知的并行捷径。

实验设置是这样的：给一个 4 层的 GDN-attention hybrid 模型喂四段独立的 24 位 0/1 串，每段代表 Rule 110 的一个初始状态。喂完之后，模型必须预测每段在 t 步演化后的第一位。这里 t 就是推理深度。

关键的"陷阱"在于：每读完 24 个 token，强制清空 KV cache。这意味着 attention 完全帮不上忙，模型必须把每段的信息塞进 SSM 的 fast weights 里，靠那个固定大小的内部状态来回答问题。

按"memory 够大就能解决"的逻辑，这个任务应该没难度。fast weight 容量足以记住 24 位串。你只要存好就行。

实际跑出来呢？

t=0（不演化，纯检索）：几乎满分。
t=4：开始往下掉。
t=32：直接趴在 10% 附近，跟瞎猜没差。

注意：序列长度没变，要存的信息也没变，变的只是回答问题前需要的「计算深度」。也就是说，并不是模型"记不住"，而是它没有足够的算力，把记住的东西"想清楚"。

到这里，问题被重新定义了：

真正的瓶颈不是 memory 容量，是 consolidation 计算。

把 context 转译成可用的 weight memory，本身就是一个非平凡的计算过程。它不可能 one-shot 完成。

如果你重新看那张曲线，会有种别扭的感觉：我们这几年砸钱砸算力解决的，是一个不是问题的问题。

## 大脑早就在做的事，我们一直不让 AI 做

这种「计算受限」的问题，在生物学里其实有非常优雅的解法。

它叫睡觉。

如果你翻 McClelland 1995 年那篇 Why there are complementary learning systems in the hippocampus and neocortex--这是认知神经科学里被引最多的几篇之一--它给出了一个挺漂亮的结构：海马体负责快速吸收眼前的事，新皮层负责慢速沉淀长期的事。两者之间的桥梁，是一个被称作 hippocampal replay（海马回放）的过程，主要发生在睡眠期间。

简单讲：白天你吸收信息，海马体把它们存成短期记忆。到了晚上，特别是慢波睡眠阶段，海马体反复"重播"白天的片段，把它们慢慢转录到新皮层的突触权重里。等你醒来，这些记忆就从"今天的"变成了"我的"。

睡眠是有代价的。一只睡着的动物，不能进食，不能逃跑，不能交配--纯粹的认知机会成本。进化是个抠门到家的优化器，它绝不会保留一个 1/3 时间躺平的状态，除非这个状态给的回报大到无法回避。

这是论文的核心隐喻，但更重要的是：它不只是隐喻。

研究者从这个隐喻里抽出了一个可以装进 transformer 的具体机制。

## "Sleep" 是什么：把 N 次 forward pass 塞进 context 切换的缝隙里

机制本身其实非常朴素。

想象一个 hybrid 模型，每读 L 个 token 就要清掉一次 KV cache。论文做的事情是：在清掉之前，先让模型对当前 context 跑 N 次 forward pass。每跑一次，SSM 的 fast weights 就被更新一次，按一条学到的局部规则。

跑完 N 次之后，清空 KV cache。fast weights 留下来。继续读下一段。

到预测的时候，模型只跑一次正常的 forward pass。预测延迟没有任何变化。

这就是它叫 sleep 的原因：所有"额外的思考"都发生在"不响应外界"的那段时间里。用户看不到。用户感觉到的依然是单次 forward pass 的延迟。但模型内部已经把记忆整理好了。

> Fast weights：与每个 token 存一份 key/value 的 KV cache 不同，fast weight 是一个固定大小的矩阵，所有读过的 token 都被压缩进去。它更省内存，但天然 lossy--存得下，不一定整理得好。Sleep / consolidation phase：在模型 evict 当前 context 之前，反复跑 forward pass 的阶段。N 是 sleep 的"深度"。N=1 时退化为普通 hybrid 模型，N>1 时多出来的算力全部用于优化 fast weights。

为什么是 N 次而不是 1 次？这里有一个挺反直觉的洞察。

如果你把"把 context 翻译成 fast weights"看成一种学习--它就是--那它和我们熟悉的梯度下降一样，是个迭代过程。Gradient descent 一步走不完一座山。Memory consolidation 一次 forward pass 也整不出一个好的内部表示。

之前的"depth-recurrent"模型也用过类似思路：让模型在预测时多 loop 几次，来获得更深的计算。但那种 loop 的代价是预测延迟变高。

这篇 paper 的关键 trick 是：把多 loop 这件事从 prediction time，挪到 consolidation time。预测时还是单次。loop 全在 sleep 里完成。

像不像考前一晚把书翻熟、第二天交卷只花一支笔的时间？

## 数据：从"不会"到"会"的临界点

把这个机制装回前面那个让 hybrid 模型趴下的 Rule 110 任务，结果很直白：

信息量没变。序列长度没变。预测延迟没变。变的只是"睡多久"。

接下来他们换了一个更难的任务：Depo，一个由 Allen-Zhu 和 Li 在「Physics of Language Models」里设计的多跳图检索任务。给模型一个被打乱的有向环（最多 75 个节点），然后问"从节点 a 出发，跳 k 步到哪里"。k 越大越难。

这次的变量是 k（跳几步）：

- 1 loop 的模型：4 跳以上就停滞。

- 2 loops：8 跳以上停滞。

- 4 loops：在训练预算内开始啃 16 跳。

每多睡一会，能咬动的推理深度就往上推一档。

这都还是小模型。论文压轴的实验把同样的方法套到两个真实的预训练 LLM 上--Jet-Nemotron 2B 和 Ouro 1.4B--在 GSM-Infinite（一个合成数学推理 benchmark）上微调。问题长度 2000-3300 token，远远超过他们设定的 context window L=2000。

结果：

Ouro 这个 1.4B 的小模型，光是多睡几遍，6 步推理的准确率从 41.9% 拉到 61.5%。

最戏剧性的数字在 sliding-window eviction 那一节。他们把窗口砍到 L=512，让 sequence 是窗口的 4-6 倍--这是一个把信息逼到极限的设定。在这种情况下，baseline（1 loop）就算在最简单的 2 步问题上也只有 0.596。加上 sleep 后，飙到 0.905。

52% 的相对提升。 同一个模型，同样的 token 预算，只是醒着的时候少做点，睡着的时候多做点。

这种"几乎免费的提升"在 LLM 领域已经很罕见了。

## 这不是一个 trick，是个范式拐点

如果你只是把这篇 paper 当作"又一个长上下文优化方法"读，你会错过它真正的意义。

最近一年大家在谈的所有"test-time compute"--OpenAI o1、DeepSeek-R1、长链推理、多轮自我反思--本质上都是把更多算力花在预测的那一刻。模型在跟用户对话时多想几秒，多输出几千个 token 的 reasoning trace，换更准的答案。

这条路的隐性代价用户都在承担：延迟。你看 o1 转半天才吐答案，那个圈圈就是你的算力账单。

这篇 paper 提出了另一条线：consolidation-time compute。算力不花在用户等待的时候，花在 context 还没结束、还在被读取的间隙里。

这两条线的本质区别是：

- Test-time compute：算力 = 用户等待的时间。每多想一秒，用户多等一秒。

- Consolidation-time compute：算力 = 模型"消化"信息的时间。用户什么都没看见，只感受到回答更靠谱了。

你可以这样理解：

一个人在你问问题时陷入长考--是 test-time compute。
同一个人头一晚把材料看熟--是 consolidation-time compute。

两种都是「多算」，但谁更让人愿意合作，你心里有数。

更深一层：sleep-time 不是"反正模型闲着不如让它转一下"。它是必需的工作时间。

睡眠剥夺的研究在生物学里有相当深的积累。Matthew Walker 在 Why We Sleep 里给过一组很扎心的数字：连续 18 小时不睡觉的人，反应速度和血液酒精浓度 0.05% 的人接近。他们的大脑没"满"，他们的大脑只是没机会整理。

我们正在用同样的方式拖垮我们的 AI。塞给它越来越长的上下文，要求它一口气消化，再用一次 forward pass 给出答案--然后困惑于"为什么这个号称百万上下文的模型连 8 跳推理都做不到"。

它做不到不是因为不够大。它做不到是因为我们从来不让它合眼。

## 一个被工作伦理污染的智能观

写到这里，我想停一下，多说一句不那么技术的话。

ML 这个行业有一个非常深的、几乎从来没被说出口的隐性假设：算力花在 inference 之外，是浪费。

所以我们把模型搞得越来越大，越来越能在一个 forward pass 里命中答案。我们鼓吹"零样本"，我们鼓吹"上下文学习"，我们对"模型不需要训练就能解决新任务"这件事抱有近乎宗教的好感。

潜台词是：好的智能 = 一击即中。

可生物学不是这么告诉我们的。

最复杂的认知系统--人脑--把 1/3 的时间用在"不响应外界刺激"上。这段时间里它不能进食，不能逃跑，不能学习新事物，不能交配。如果智能的本质是"在一次 forward pass 里搞定一切"，那进化早就该把睡眠淘汰掉了。

但它没有。所有有大脑的动物都睡觉。从果蝇到鲸鱼。睡眠不是 bug，是 feature，而且是认知架构里最不可替代的 feature 之一。

我们之所以一直忽略这一点，可能不是技术原因。是文化原因。

24/7 always-on 是硅谷推销给世界的工作伦理。我们把它默认装进了我们对智能系统的想象里。我们做 chatbot 时希望它"随时响应"。我们做 agent 时希望它"持续在线"。我们做 LLM 评估时几乎没有任何指标在意它"是否需要离线整理时间"。

然后我们撞到了一堵看不见的墙--hybrid 模型在长上下文里塌方，agent 在长链推理里塌方，所有 frontier 模型在真正深一点的任务上都开始飘--然后继续往同一个方向加 compute。

这篇 paper 提供的不只是一个新算法。它提供了一个被我们集体忽略的维度：

智能不只是"清醒时多聪明"。

智能还包括"在被允许离线时，能不能把信息整理好"。

这是个让人有点不舒服的视角。因为它意味着：未来真正强的 LLM，可能不是一直在线的那种，而是有清醒期、有睡眠期、有做梦期的那种。它会在某些时刻"对外界无响应"，换来的是更靠谱的回答。

听起来像科幻。但其实--做出来了。CMU 和 UMD 的这几个研究者，已经把它跑通了。

## 结尾

这篇论文的方法本身远未成熟。训练成本随 N 线性增长。在 sequence 维度上不能完全并行化。论文自己列了一堆 limitation。

但它指出了一个我觉得会被反复回到的方向。

如果你最近两年看 LLM scaling，会发现 frontier 在悄悄地从 "更大的模型" 转向 "更聪明地花算力"。我们已经知道：算力花在 pretraining 里能换 capability，花在 inference 里能换 reasoning。这篇论文加了第三个抽屉：花在 sleep 里能换深度。

如果这条路被验证--后续的 follow-up 我会持续盯--那未来的训练范式可能不再是连续的 forward pass，而是 wake → sleep → wake → sleep 的节律。

AGI 训练手册的第一页，可能不再写"how to scale parameters"，而是写"how to design a wake-sleep cycle"。

那一刻，我们对智能的定义会再退一步，离生命近一步。

下一次，有人跟你说他们的模型在长上下文上表现很差，你可以问一句：

「你给它睡觉了吗？」

原文来源：Language Models Need Sleep · alphaXiv 2605.26099
