Skip to content
←返回博客
Sleep 框架:让大语言模型在持续学习中留住知识
持续学习Agent MemoryMixture-of-Experts

Sleep 框架:让大语言模型在持续学习中留住知识

Google Research 用清醒、巩固与梦境三个阶段更新大语言模型:低秩专家保存经验,知识播种保护旧能力,合成排练再把记忆转化为可用行为。

Ali Behrouz, Farnoosh Hashemi, Adel Javanmard, Vahab Mirrokni2026年10月27日2 分钟阅读23次阅读
EN

更长的上下文不等于更持久的记忆

来源:The sleep framework: A new way for LLMs to retain knowledge in continual learning,Google Research,2026 年 10 月 27 日。技术细节与作者论文 Language Models Need Sleep: Learning to Self-Modify and Consolidate Memories 交叉核对。

语言模型可能在一轮对话里表现得更懂用户,但会话结束后几乎没有留下任何持久知识。提示词、工作笔记和检索到的段落只是临时脚手架。上下文一旦消失,模型便回到原来的参数状态。Google Research 把临时适应与持久知识之间的落差,视为持续学习的核心障碍之一。

论文提出的 Sleep 框架借鉴了人类睡眠的组织方式,却没有照搬其生物学机制。模型在清醒阶段接收新信息并写入快速记忆,在睡眠阶段暂停外部输入,把筛选后的知识巩固进更慢的参数化记忆。第二个睡眠过程称为梦境,它生成合成练习,让模型学会如何使用已经存入的知识。

这一主张的重点在系统架构,而不是拟人化解释。模型没有意识,不会体验休息,也没有在 Transformer 内部发现某种隐藏的生物机制。它提供的是训练生命周期,将传统后训练经常混在一起的三件事拆开:获取经验、稳定经验,以及利用经验改善行为。

论文最有价值的观点是:持续学习本质上是一个记忆系统问题,而不只是微调问题。如果一个容量固定的网络必须表示所有新事实、新技能和新交互,又不能干扰旧能力,那么遗忘就不是偶然缺陷。要求过少的参数承受过多变化,遗忘几乎是必然结果。

失败模式:静态权重与临时上下文

现代大语言模型在预训练阶段获得广泛能力,又能通过上下文学习快速适应任务。两种机制都没有在部署后提供永久更新路径。模型可以在当前提示词中遵守新规范,但下一次会话仍从同一份检查点开始。新的事实、本地操作规则或长部署期间得到的经验,只要没有被再次检索,就仍然位于模型之外。

反复微调看起来是直接答案,真正的难点却在干扰。改善新任务的梯度更新可能覆盖旧任务需要的表示。极端情况下会出现灾难性遗忘:模型在最新数据上变得更强,却丢失此前已经具备的能力。

外部记忆也不能消除问题。对话记录、向量索引或知识库能够保存信息,但模型推理时仍要找到正确条目,并把它带入计算。检索会占用上下文,也可能在查询含糊、记忆彼此冲突,或相关知识应在模型明确提出问题前就影响计算时失效。因此,Sleep 框架瞄准的是参数化巩固:改变模型的计算方式,同时尽量保护先前知识。

Sleep 框架示意图,展示主动输入流、短期 KV 缓存、低秩专家记忆巩固,以及随机路由和强化学习精炼驱动的梦境阶段
生命周期把快速上下文与更慢的参数化记忆分开。睡眠期间,巩固过程将压缩知识转入扩展专家,梦境则生成并筛选合成练习,之后再精炼模型。

两个阶段,三项不同任务

清醒阶段,模型接收外部输入,表现得像已部署的助手或智能体。它可以把近期词元保存在快速存储中,例如键值缓存,并在任务执行期间使用这些材料。进入睡眠阶段后,外部输入被有意减少或关闭,系统转向内部,处理已经收集的经验。

睡眠阶段中的记忆巩固与梦境承担不同职责:

  1. 巩固回答的是:“近期经验中的哪些内容应变成持久知识?”它把抽象表示从更新频繁的快速记忆块转移到拥有新容量的慢速记忆块。
  2. 梦境回答的是:“模型能否学会更有效地使用这些知识?”它生成合成练习,筛选有用样本,再根据测得的改善更新一组受控参数。

顺序很重要。巩固先建立更稳定的表示,梦境随后排练并精炼这一表示。若直接在固定模型上反复执行第二步,就会重新引入迭代式自训练的常见风险:错误可能被强化,新适应也可能侵蚀旧能力。

巩固是在记忆层级中向上迁移

框架建立在连续体记忆系统之上。不同记忆块以不同频率更新:快速块跟踪近期上下文,变化频繁;慢速块变化较少,保存更持久的抽象。这不是简单的两级缓存。巩固可以反复发生在相邻层级之间,把信息从快速组件移向越来越稳定的组件。

每次巩固前,模型先为接收信息的块增加容量。实现方式包括预分配低秩混合专家参数,并在普通前向、反向传播中屏蔽尚未激活的专家。一次睡眠周期只解锁一个专家,不需要修改周边代码,也不改变名义上的活跃参数量。低秩矩阵让新增容量小于稠密扩展。

一次从记忆块 l - 1 到记忆块 l 的更新遵循严格顺序:

  1. 计算:算出快速块可能发生的更新,但暂时不把它应用到在线模型。
  2. 巩固:把更新前的模型当作教师,构造一个更大的学生模型。学生包含这次预备更新,并在慢速块中激活一个新低秩专家。
  3. 更新:以教师为目标训练新专家,执行准备好的更新,重置快速块里的临时专家,只保留新的慢速专家处于激活状态。

这个顺序给教师一个稳定目标。教师代表迁移前的模型;学生代表预期迁移后的模型,并且拥有足够容量保存知识。只有新激活的参数会被优化,因此对已经稳定表示的干扰更小。

知识播种:学生更大,而不是更小

传统蒸馏通常把知识从大教师转移到小学生。论文把这里的操作称为知识播种,因为学生是扩展后的网络。一个较小、拥有未激活专家的自我版本,为一个容量更大的版本提供种子。目标不是压缩模型以便部署,而是在保存抽象的同时给它更多持久化空间。

蒸馏目标同时使用教师生成的数据和学生自己采样的数据。这是广义知识蒸馏:教师对数提供词元级指导,学生在线策略样本则暴露扩展模型真正会犯的错误和产生的轨迹。在线策略部分缩小了干净教师分布与模型自身推理行为之间的错位。

论文随后加入学习模仿目标,简称 LTI。它是一项目标由强化学习优化的任务,不仅要求学生容纳教师知识,还要求以相近方式从知识中采样。对教师生成的序列和学生续写,奖励同时考虑语义一致性与词元级编辑相似度:

$$ r(\hat{y}; y) = \gamma r_{\mathrm{sem}}(\hat{y}; y) + (1-\gamma)r_{\mathrm{abs}}(\hat{y}; y) $$

语义项由冻结的奖励模型提供,用来奖励含义一致。绝对项使用编辑距离,即 Levenshtein 距离,并以较长序列长度归一化;当编辑距离超过阈值时,该项直接变为零:

$$ r_{\mathrm{abs}}(\hat{y}; y)= \begin{cases} 1-\dfrac{\operatorname{Levenshtein}(\hat{y},y)}{\max(|\hat{y}|,|y|)}, & z(\hat{y},y)\leq z_0,\\ 0, & \text{otherwise}. \end{cases} $$

两段奖励有价值,因为语义和表面形式会以不同方式失败。学生可能保留总体含义,却漂移到另一种答案格式;也可能匹配大量词元,却改变了决定性关系。语义评分与编辑相似度分别对抗这两类问题。

最终知识播种目标在模仿奖励和教师分布偏差之间取舍:

$$ \mathcal{L}_{\mathrm{KS}}= \mathbb{E}_{x\sim\mathcal{D}} \left[ (1-\alpha)\mathbb{E}_{y\sim \mathrm{LM}_{\mathrm{student}}}[r(y)] -\alpha\mathbb{E}_{y\sim \mathrm{LM}_{\mathrm{student}}} \left[\mathcal{D}(\mathrm{LM}_{\mathrm{teacher}}\Vert \mathrm{LM}_{\mathrm{student}})(y\mid x)\right] \right] $$

其中,alpha 控制更新在多大程度上服从教师分布,又有多大程度追求模仿奖励。奖励决定哪些行为应被保留,散度项则约束扩展后的学生能移动多远。

剪枝让记忆层级可以循环使用

知识转移完成后,快速块中的临时专家会被重置。论文将此比作突触剪枝:抽象表示已经迁移到更稳定层级,临时连接便可移除。重置还为下一个清醒阶段释放容量。

这个生命周期比一次性合并适配器更有意思。模型不是永久累加模块,而是有选择地在慢层级生长,并在快层级回收容量。这种安排在数月更新后是否仍能保持健康,仍是待解决的工程问题,但架构至少把问题明确摆了出来。

梦境探索清醒数据可能遗漏的组合

梦境是自我改进阶段。给定任务上下文 C 和评估下游表现的方法,模型会生成一组合成样本,也就是梦。普通生成器倾向复现熟悉模式。Sleep 框架在生成每个梦时,让每个混合专家路由器额外选择一个随机专家,主动扰动这一过程。

随机专家可能把无关知识带进样本。它听起来像噪声注入,目的在于扩大排练时探索的梯度方向。模型可以把新事实与关系较远的技能放在一起练习,暴露意外联系,或找出一条普通高概率采样永远不会产生的路径。

只有生成还不够,因为大多数合成样本可能过于简单、重复或错误。框架用监督语言建模目标的梯度为每个梦评分,保留高分样本,同时加入少量随机样本维持多样性。选中的梦随后通过隔离的 LoRA 微调更新进行测试。如果微调后的模型改善下游任务,这个梦就获得奖励,否则奖励为零。

整个过程类似一种学习到的课程:

  1. 在受控随机性下生成多个候选经验。
  2. 估计哪些样本包含较强的学习信号。
  3. 保留最佳候选,同时加入随机探索样本。
  4. 通过一次小型参数更新测试每个候选。
  5. 当更新改善下游行为时,奖励生成器。

论文把这一循环建立在 SEAL 风格的自适应机制上,并使用 ReSTEM 算法优化。关键差异在外部记忆层级。梦境没有被要求独自承担持续学习,而是在巩固已经创建出受保护、可扩展的表示之后运行。

理论为何认为方法可能有效

论文给出两套互补解释。对于巩固,知识播种被视为结构化低秩压缩。模型不会把快速记忆中的每个词元都复制到慢速块,而是寻找一组紧凑方向,同时保留自身的在线策略行为和 LTI 奖励的语义属性。新专家提供写入这些方向所需的维度,从而避免覆盖旧知识。

对于梦境,随机专家路由扩大探索到的更新集合,基于梯度的筛选随后强调能够产生有效学习信号的样本。预期结果是优化过程具有更好的条件:学习不会被少数方向支配,模型可以在不塌缩为狭窄自生成模式的情况下改进。

这些论证并不意味着方法天然安全。它们解释设计为何可能减少干扰,却没有证明每个生成的梦都真实,没有证明语义奖励能捕捉全部重要约束,也没有证明扩展专家会保持可解释。这些问题仍需通过实验和运行监控回答。

实验结果说明了什么

论文报告的结果覆盖类增量学习、未知语言连续翻译、长上下文问答、事实知识注入、数学推理和少样本抽象推理。实验主要基于 Llama 与 Qwen 语言模型,并采用 Hope 风格的连续体记忆主干。

在类增量分类中,完整 Sleep 模型优于同一记忆架构但不做睡眠巩固的版本,也优于 InCA 和 EWC 等外部基线。测试集包括 CLINC、Banking 与 DBpedia:

基准 Sleep 无睡眠记忆基线 报告差距
CLINC 97% 93% 高 4 个点
Banking 92% 84% 高 8 个点
DBpedia 89% 82% 高 7 个点

连续翻译实验更能说明问题,因为两个未知语言按顺序学习。上下文学习只使用一种语言时表现良好,引入第二种语言后却急剧下降。论文报告,按照这一顺序学习时,满语到英语的 ChRF 从 20.9 降到 10.1。Sleep-3 在学完两种语言后,仍达到满语 23.9 与 Kalamang 38.1。这不只是比上下文学习保留得更多,已经接近模型的单语言结果,说明巩固跨顺序保存了有用的翻译行为。

两组图表显示 Sleep 在类增量学习和连续翻译中优于无睡眠、InCA、EWC 与不适配基线
左图:CLINC、Banking 与 DBpedia 上的类增量准确率。右图:依次学习满语与 Kalamang 后的 ChRF。柱状图比较 Sleep 变体与不适配基线,竖线表示单语言训练水平。

在 BABILong 上,Titans 与 ARMT 等小型长上下文模型在约一百万词元内仍有竞争力,超过这一范围便明显退化。带睡眠巩固的 Hope 在长达一千万词元的极端长度上仍然稳定。这一结果值得注意,因为方法并没有试图把一千万词元一直放在活跃上下文中,而是在睡眠期间把任务相关结构压缩进参数化记忆。

在 SQuAD 事实注入任务中,完整四级 Sleep 模型只看单段材料时达到 48.9%,在 200 段材料连续预训练后达到 46.2%。基础模型在两种设置下均为 31.9%,SEAL 分别为 46.7% 与 43.2%。消融结果同样重要:移除梦境后,准确率降到 35.7% 与 36.2%。只巩固而不排练,无法完成全部工作。

在数学推理中,Sleep 对两种测试规模的 Qwen 都优于基础模型、监督微调、GRPO 和在线策略自蒸馏。Qwen3-8B 在 AIME-24、AIME-25 和 HMMT-25 上分别达到 79.2%、69.0% 与 46.1%。较小的 Qwen3-1.7B 分别达到 53.2%、40.2% 与 29.3%。

评测 基础模型或无梦境 Sleep 变化来自哪里
SQuAD,单段材料 基础模型 31.9% 48.9% 新事实经过巩固与排练
SQuAD,200 段材料 微调但无梦境 32.0% 46.2% 梦境避免巩固过于脆弱
AIME-24,Qwen3-8B 基础模型 73.8% 79.2% 巩固也改善了推理
BABILong 约一百万词元后退化 稳定到一千万词元 长上下文在睡眠期间被压缩

效率结果则有取舍,需要谨慎解读。按更新步数比较,普通监督微调约快四倍。若比较达到相同 AIME 或 HMMT 分数所需的时间,论文报告监督微调需要多花 3.6 到 4.8 倍实际耗时才能追上。因此 Sleep 的单次更新更昂贵,但每单位最终能力可能更高效。

长期运行的具身智能体可以从中借鉴什么

原始研究评估的是语言模型任务,不是机器人策略。它没有展示机器人经过一夜运行后自动变强,也没有测试操作、导航、仿真到现实迁移,或物理不确定性下的安全性。这个边界必须明确保留。

对具身智能仍有一条有用的系统经验。长期运行的机器人会积累班次日志、传感器摘要、人工接管、失败抓取、定位异常和操作员纠正。把所有内容放进不断增长的检索库可行,却不充分。有些经验需要改变模型的先验行为,不能等到未来查询时才被召回。

一个类似睡眠的机器人循环可以拆成四个阶段:

  1. 清醒并记录:收集观察、动作、结果、不确定性信息与人工纠正,不立即改变安全关键参数。
  2. 巩固:把经过验证的经验压缩进低秩记忆专家,挂接到较慢的策略或规划层级。
  3. 受约束地做梦:通过仿真器或世界模型生成合成变化,只保留那些更新后能改善留出任务的样本。
  4. 晋升前验证:新专家能影响物理动作前,必须通过回放、仿真、影子模式和硬件闸门。

随机专家的想法在机器人场景尤其敏感。混合远距离知识可能发现有用的迁移,也可能提出物理上无效或危险的行动。在具身部署中,梦境目标需要硬约束、经过验证的状态转移、保守动作过滤器和可逆的晋升路径。语言模型奖励上的改善,不是动作策略安全性的证据。

有用的类比不是“让机器人睡一觉,希望它醒来更聪明”,而是“把经验收集与持久模型变更分开,并且绝不在缺少外部验证时晋升一个梦中的改动”。

真正重要的局限

自生成练习可能强化错误。随机专家扩大探索,语义奖励与下游测试会筛掉一部分坏样本,两者都没有提供完整的真值信号。在长期部署中,一个错误但内部自洽的经验可能逐渐变成持久知识。

容量扩展并非没有代价。预分配并屏蔽参数让激活更容易,但存储、路由、检查点和评估都会更复杂。论文在实验中保持活跃参数量不变,系统仍会保存不断增加的专家。生产系统需要为很少使用的专家制定退役策略。

睡眠计划本身也是需要调节的策略。何时执行巩固,多久进入一次梦境,更新应该写入哪一层记忆,都是决策变量。实验显示更多巩固阶段对部分任务有帮助,而让最持久的记忆过于可适应会削弱保留能力。不存在通用时间表。

遗忘有几种不同含义。模型可能丢失能力、覆盖事实、召回错误记忆,或改变输出风格。报告中的基准覆盖了其中若干行为,却没有覆盖隐私删除、来源追踪、恶意记忆注入或冲突的操作员指令。

通往机器人的桥梁仍未经验证。语言基准测试的是文本预测和推理,不衡量接触丰富的控制、实时约束,或错误动作的代价。机器人要在离线策略改进之外使用这一范式,还需要单独的安全论证。

设计启示:记忆需要生命周期

Sleep 框架最持久的贡献不是“睡眠”这个名称,而是生命周期。系统区分快速上下文、受保护巩固、探索性排练和经过测量的晋升。它把遗忘视为容量与干扰问题,同时认识到只增加容量还不够,模型还必须学会使用已经保存的内容。

知识转移与行为排练结合,使结果比简单的适配器增长故事更有说服力。梦境把已存知识变成练习,巩固则避免这些练习立即与模型已有能力碰撞。两个阶段互补,消融结果表明移除任何一个都会削弱结果。

对 RobotWorld 的读者而言,这项研究更适合被看作长期智能体的基础记忆设施。它还没有给出持续学习机器人的配方,却提供了具体框架,用来追问:已部署智能体应该记住什么,记忆应放在哪里,如何稳定,以及需要哪些证据才能允许新记忆改变行为。

原文见 Google Research;面向同行评审的技术报告见 arXiv:2606.03979。

相关文章

本站含 CakeGrowth 联盟推广链接,我们可能从符合条件的购买中获得佣金。