Lightning Weave: Improving the Accuracy-Efficiency Frontier of Reasoning Models through Capability Composition
Yecheng Wu, Song Han, Han Cai
cs.AI
2026-09-14
Lightning Weave把独立后训练的准确与效率策略差,在学生自己的token状态上加权合成,再用Tilted-Target DOPD离线蒸馏。Qwen3.5-4B的HMMT 2025从59.2%升到64.0%,回复token少10.7%。
推理模型把题做对,经常靠把思维链写得很长。砍短了,探索不够,准确率掉。现有做法要么用长度惩罚做强化学习,要么在参数空间里把「想得细」和「写得短」的 checkpoint 做 merge。两边一起优化时,目标互相拉扯:准确那边喜欢多试几步,效率那边喜欢早停。
独立后训练出来的专家已经各自擅长一边。Klear-Reasoner-8B 走准确,DECS-1.5B 走短答。问题变成:能不能把它们各自学到的行为差抽出来,织进同一个学生,而不是从零同时优化两个互相打架的目标。
MIT 与 NVIDIA 的 Lightning Weave 走这条路。它不蒸馏专家的最终策略本身,蒸馏的是后训练带来的策略差。
能力用锚点对表示:后训练前的 checkpoint(pre-anchor)对上后训练后的专家。两者在同一个 token 上的 log 概率比,就是这次后训练改了什么。这比直接学专家终点策略干净,因为终点策略里还混着基座自己的习惯。
流程分三步。
为什么要倾斜目标,而不是把缓存分数直接当奖励优化?在线 DOPD 要求训练时同时挂着所有锚点模型,两对锚点就是四个活模型。离线缓存能避开这件事,但朴素做法有个坑:学生一旦离开当初采样的行为策略,用缓存动作估出来的 KL 正则就不再对应真正想要的惩罚。目标策略已经走到了,梯度还可能非零,训练会继续把学生推走。
Tilted-Target 把目的地写死:用策略差对行为策略做指数倾斜,得到分布 q,再让学生去追 q。学生等于 q 时,损失和梯度都归零。锚点只需打一次分,后面训练只跑学生。
调权重就能在准确和效率之间滑动。某个权重为 1、其余为 0,退回单锚点目标。
主实验把准确锚点 Klear(Qwen3-8B-Base → Klear-Reasoner-8B)和效率锚点 DECS(DeepSeek-R1-Distill-Qwen-1.5B → DECS-1.5B)合成进五个学生,评 AIME 2024/2025、HMMT 2025、LiveCodeBench v5/v6。数学 Avg@64,代码 Avg@4。AES 相对各自基座算,奖励涨分和省 token,掉分罚得更重。
| 学生 | 平均准确(基座→合成) | 平均 token | AES |
| Qwen3-1.7B | 34.66% → 37.94% | 16,375 → 15,052 | 0.34 |
| Qwen3-4B | 55.90% → 59.92% | 15,723 → 12,628(-19.7%) | 0.41 |
| Qwen3-4B-Thinking-2507 | 64.47% → 68.94% | 19,863 → 18,084(-9.0%) | 0.28 |
| Qwen3.5-4B | 55.16% → 64.86%(+9.70) | 25,439 → 24,086(-5.3%) | 0.61 |
| OLMo-3-7B-Think | 56.38% → 60.12% | 20,557 → 17,901(-12.9%) | 0.34 |
单点更刺眼。Qwen3-4B 的 AIME 2024 从 72.9% 到 76.0%,token 少 21.3%。Qwen3.5-4B 的 HMMT 2025 从 59.2% 到 64.0%,token 少 10.7%;LiveCodeBench v5 从 41.7% 到 54.2%,token 少 9.6%。五个骨干上,合成的 AES 都高于单用 Klear 或单用 DECS。
只加准确锚点,回复往往变长;只加效率锚点,分数经常掉到基座以下。合成把两边接到同一条轨迹上。
在 Qwen3-4B-Thinking-2507 上扫 DECS 权重。ρDECS=0.625 时 AIME 2024 到 84.9%、15,048 token,超过 SimpleSD(76.7% / 19,473)、Art(78.5% / 15,456)、PromptCoT 2.0(75.8% / 20,177)和参数插值 MI(83.1% / 15,885)。非支配点连成一条经验 Pareto 前沿。
消融在 Qwen3-4B 上。Tilted-Target 的 AES 接近在线 DOPD(两锚点 0.41 vs 0.38),但训练不用同时挂四个锚点。朴素离线差一截:Klear 单锚点平均准确 58.43 vs 59.94,AES -0.15 vs 0.23。数据混洗 AES 0.29;先 Klear 再 DECS 是 0.31,反过来是 0.37,顺序会把结果拽向后训练的那一路。Lightning Weave 避开稀释和顺序偏置,AES 0.41。
再加一路准确锚点 MiMo-RL。Klear+MiMo-RL 平均准确最高(64.38%),token 也从 15,723 涨到 18,577。三路合成 AES 到 0.42。
对已经有「做对」和「做短」两个后训练 checkpoint 的团队,这条路比再开一轮多目标强化学习便宜:学生自己滚一次轨迹,锚点打一次分,后面只训学生。权重是旋钮,可以扫出一组 Pareto 点,不必为每个工作点重做强化学习。
它也说明,后训练学到的东西可以当成向量差来加,不必模型同构、不必参数对齐。tokenizer 不同都能投影。这跟 task arithmetic 的精神接近,但发生在 token 级策略空间,不是权重空间。
这是一条后训练组合技,不是新的推理算法。效率提升幅度小于专做短答的方法,换来的是准确不塌。适合要同时盯分数和账单的 4B–7B 部署,不适合只想把 token 砍到极限的场景。
作者自己写了三条。实验都在 10B 以下,更大模型有没有同样的合成收益还不知道。方法依赖成对的 pre/post 锚点,新任务如果只有一个成品专家、没有对应的训练前 checkpoint,策略差就抽不出来。效率增益仍小于纯效率方法。
另外几处论文没强调。每个配置只训一次,评测重复采样测的是解码方差,不是训练种子。缓存轨迹最长 2,048 token,评测数学放到 32,768、代码放到 40,960,学生是在短轨迹上学、在长轨迹上考。代码写「即将开源」,现在还没法复现。AES 对掉分罚得比涨分重,排行会偏向「别掉分」;Qwen3.5-4B 上 Klear 单锚点 HMMT 从 59.2% 掉到 56.7%,合成把它拉回来,这个对比成立,但 AES 数字本身不好跨论文比。