← 首页|学术|精读:Kimi k1.5 — 产品级长CoT RL配方 + Long2Short
精读 · cs.LG cs.CL · 技术报告 · 2025年1月

Kimi k1.5: Scaling Reinforcement Learning with LLMs

Kimi Team — Moonshot AI(月之暗面)
Long-CoT RL Length Penalty Long2Short Context Scaling Online Mirror Descent Production-Scale Multimodal
核心价值:唯一公开的前沿规模长 CoT RL 训练配方。不依赖 MCTS、Process Reward Model 或 value function——仅靠长上下文 scaling(128K)+ 改进的 policy optimization + length penalty就达到 AIME 77.5、MATH500 96.2,对齐 OpenAI o1。更重要的是首次系统呈现了 long2short:四种把长思维链能力迁移到短模型的方法,让短模型在 3,272 token 内达到 AIME 60.8——超越所有同期短模型。这篇报告证明了这件事在真实产品规模可行,是后续所有 length penalty 学术变体(DIET 等)的工业锚点。

目录

  1. 核心哲学:简约框架为什么够用
  2. RL Prompt 构建:质量门控三要素
  3. Policy Optimization:在线镜像下降变体
  4. Length Penalty:Kimi 原始公式
  5. 采样策略:课程学习 + 优先采样
  6. Long2Short:四种方法深度解析(重点)
  7. RL 基础设施:Partial Rollouts + 混合部署
  8. 实验结果
  9. 谱系:k1.5 → DIET → f(g(x))

🧭 核心哲学:简约框架为什么够用

不需要 MCTS、Value Function 或 Process Reward Model
k1.5 最重要的工程洞察:当上下文足够长时,LLM 可以在 token 序列中隐式实现搜索——不需要显式维护搜索树。

理解这个洞察的关键:把搜索树里的"节点"类比为 CoT 里的"推理步骤"。传统 MCTS 在树上搜索,k1.5 的模型在 128K 上下文里自回归搜索。当 context 足够长,模型学会的 planning、reflection、backtracking 实际上是对 MCTS 的端到端参数化近似
代价:隐式搜索需要很长的 context——128K。这就是为什么 context length scaling 是这篇的核心贡献之一:不是因为长 context 本身有趣,而是因为它是"无 MCTS 的 RL"能够工作的必要条件。

🎯 RL Prompt 构建:质量门控三要素

三个必要条件:覆盖广度、难度均衡、可准确验证
  1. Diverse Coverage:STEM、竞赛、代码、通用推理,文字 + 视觉。用 tagging system 确保领域均衡。
  2. Balanced Difficulty:模型基于自身能力评估难度——对每道题采样 10 次,用通过率作为难度代理(低通过率 = 高难度)。这和 DIET 的难度估计机制完全一致。
  3. Accurate Evaluability:排除多选题、是非题(容易猜对)。对通用 QA 任务,用模型在无 CoT 时猜答案:若 N=8 次内猜对,则该题"太容易 hack",移除。
→ 质量门控的底层逻辑:reward signal 的准确性上限了 RL 的效果。一道可以被猜对的题,其 reward 信号会误导训练。

⚙️ Policy Optimization:在线镜像下降变体

不是 PPO,不是 GRPO——而是 Online Mirror Descent 的 off-policy 推广
每轮迭代 i,以当前模型 πθᵢ 为参考,优化: max_θ E[r(x,y,y*)] − τ·KL(π_θ || π_θᵢ) 此目标有解析解:π*(y,z|x) ∝ π_θᵢ(y,z|x)·exp(r/τ) 利用 off-policy 数据,近似梯度为: 1/k Σⱼ [ ∇_θ log π_θ(yⱼ,zⱼ|x) · (r_j − r̄) − τ/2 · ∇_θ (log π_θ/π_θᵢ)² ] 第一项:policy gradient(用均值 r̄ 作为 baseline) 第二项:L2 KL 正则(PPO 用 clip 强制 ratio,这里用平方惩罚)
与 GRPO 的关系:GRPO 是 PPO 的变体,用 batch 内 reward 归一化(advantage = (r − mean)/std)代替 value network,并对多个采样做平均。k1.5 的 online mirror descent 和 GRPO 在本质上解决相同问题,但推导路径不同——k1.5 从信息几何(KL 正则)出发,GRPO 从 PPO clip 变体出发。两者都没有 value network
→ 为什么故意去掉 value function?论文给出了一个有意思的理由:对于长 CoT,正确答案可以通过"先走错路再 backtrack"到达。经典 credit assignment 会惩罚"走错路"的步骤,但 k1.5 认为这恰好是探索的价值所在——允许模型探索错误路径,只要最终到达正确答案就给奖励。

📏 Length Penalty:Kimi 原始公式

这是后续所有 length penalty 学术工作的原始公式
给定 k 个采样响应,设 min_len / max_len 为 batch 内最短/最长响应: λ = 0.5 − (len(i) − min_len) / (max_len − min_len) len_reward(i) = λ (答对时) = min(0, λ) (答错时) 最终奖励 = 任务奖励 + 权重系数 × len_reward
公式的语义:
→ "答错不惩罚短响应"这个设计细节非常关键。如果答错也按长度惩罚,模型会学到"答错的最优策略是输出单个字符"——彻底破坏探索。
实际训练技巧:训练初期先不加 length penalty(正常 RL),等模型有了基础推理能力后再逐渐引入(warmup 调度)。原因是初期 length penalty 会减慢探索——模型还没学会推理就开始被迫缩短 CoT,导致训练失败。这个 warmup 细节在 DIET 的消融实验中也得到了验证。
DIET 对这个公式做了什么改进?k1.5 的公式对 batch 内所有问题使用相同的 α(惩罚权重)。DIET 发现:对简单题应该用大 α,对难题应该用小 α(甚至零)——因为难题需要长推理,均匀惩罚会损害难题的推理质量。DIET 的 αada = αbase × Ĉ(通过率)就是把 k1.5 的均匀 α 替换为难度自适应版本。同时 DIET 发现在 GRPO 中直接这样做会触发方差交叉污染问题(k1.5 用 online mirror descent 不存在此问题),因此需要 Advantage Weighting。

🎲 采样策略:课程学习 + 优先采样

两种采样策略的组合
Curriculum Sampling(课程学习):从简单题开始,逐步加入难题。理由:RL 初期模型能力弱,在极难题上几乎全错,梯度信号为零(no correct samples = no reward signal)。先在简单题上建立基础能力,再挑战难题,效率更高。

Prioritized Sampling(优先采样):跟踪每道题的历史成功率 sᵢ,按 1−sᵢ 比例采样——成功率低的题优先采样。和 curriculum 的区别:curriculum 是静态难度标签(人工标注或预测),prioritized 是动态成功率(随训练更新)。两者互补。
这和 DIET 的难度估计的关系:DIET 的难度估计 D̂ = 1 − Ĉ,其中 Ĉ 是 GRPO 采样的 N 条响应的通过率——本质上就是 k1.5 prioritized sampling 里的"成功率",只不过 DIET 用它来调节 length penalty 的强度,而 k1.5 用它来决定采样优先级。

🔄 Long2Short:四种方法深度解析

核心问题:长 CoT 模型性能好但推理成本高。能不能把它的"思维方式"迁移到短模型上?k1.5 提出了四种路径,从无需训练到全量 RL,效果依次提升。
方法一
模型合并
权重平均,0 训练
方法二
最短 RS
取最短正确答案 SFT
方法三
DPO
短正 vs 长负偏好对
方法四
Long2Short RL
强 length penalty RL

方法一:模型合并(Model Merging)

最简单的方案:直接平均权重,不需要任何训练
取一个长 CoT 模型和一个短 CoT 模型,直接对参数做线性插值: θ_merged = (θ_long + θ_short) / 2 直觉:长 CoT 模型擅长深度推理,短 CoT 模型擅长简洁表达。合并后的模型理论上能保留双方的部分优势。
实际效果:有效但有限。合并后(k1.5-short w/ merge)token 效率提升,但性能不如训练方法。主要价值是作为后续 rejection sampling 的起点(merge + RS 组合使用)。
为什么权重平均有意义?现代 LLM 的模型参数空间是相对线性的——同一预训练基座微调出的不同模型,其参数差值通常指向某个特定技能方向。模型合并(Model Merging)近年来在其他场景(多任务、safety-helpfulness 平衡)也被证明有效,背后有 task vector 理论支撑。对于 long/short CoT,merge 实际上是在参数空间中取两种 CoT 风格的中间点。

方法二:最短拒绝采样(Shortest Rejection Sampling)

从长 CoT 模型采样,取最短的正确答案做 SFT
对每个问题,用长 CoT 模型采样 n=8 次,从中挑选最短的正确响应,然后用这批数据对短 CoT 模型做 SFT。

核心假设:长 CoT 模型在采样时本身就会产生长度差异很大的响应(有时推理效率高,有时绕远路)。最短的正确响应往往包含最精炼的推理路径——它是长 CoT 模型在"运气好的时候"生成的简洁解法。
通常和模型合并搭配使用(k1.5-short w/ merge + rs):先 merge 得到一个更均衡的起点,再用 shortest RS 做 SFT 进一步精炼。
→ 这个方法的上限是"长 CoT 模型在 8 次采样中最简洁的解法"。如果长 CoT 模型本身就找不到简洁路径,这个方法无能为力。

方法三:DPO(偏好优化)

构造"短正确 vs 长错误/长正确"偏好对
同样用长 CoT 模型多次采样,但这次构造偏好对 关键设计:把"正确但过长"的响应也作为负样本。这告诉模型:正确本身不够,还需要高效。
效果介于最短 RS 和 Long2Short RL 之间(图 7)。DPO 提供了"短 vs 长"的对比信号,比纯 SFT 更强,但没有 RL 的在线探索能力。
和 Optima 的 DPO 数据的区别:Optima 构造 DPO 对的标准是"综合奖励(准确率 + 效率 + 可读性)高 vs 低",并不专门针对长度;k1.5 的 DPO 是专门针对长度:最短正确 vs 较长(正确或错误)。后者更直接,但也更单一——只优化长度,忽略了 Optima 关注的通信质量。

方法四:Long2Short RL(最强方案)

从最优 checkpoint 出发,施加强 length penalty 继续 RL
具体步骤:
  1. 在标准 RL 训练中,选取性能/效率权衡最优的 checkpoint(不是最终 checkpoint)作为起点
  2. 开启第二阶段 RL,显著降低 max rollout length(比正常长 CoT 训练短得多)
  3. 施加更强的 length penalty(即 Section 2.3.3 中的 len_reward,但权重更大)
为什么 Long2Short RL 最强?
k1.5-short w/ rl 在 AIME2024 达到 60.8 Pass@1,平均只用 3,272 tokens——这相当于用 long-CoT 模型大约 1/5 的 token 达到接近性能。同期最强短模型(GPT-4o: 9.3, Claude Sonnet 3.5: 16.0)被远甩在后。

四种方法的统一视角

它们都在做同一件事:从长 CoT 的能力空间中"提炼"简洁路径
方法数据来源训练信号在线/离线上限
模型合并—(无需数据)中位数性能
最短 RS长 CoT 采样模仿(SFT)离线最短正确答案的质量
DPO长 CoT 采样对比偏好离线正负对的区分度
Long2Short RL模型自采样任务奖励 + 长度奖励在线任务本身的难度下限
→ 组合使用也是合理的:先 merge(提升基础),再做最短 RS(粗筛简洁路径),最后 Long2Short RL(精调)。图 7 暗示组合 pipeline 可以进一步压缩 token,但 k1.5 报告主要展示了各方法的独立效果对比。

🛠️ RL 基础设施:两个关键创新

Partial Rollouts(部分展开)

解决 128K 长 CoT RL 的计算瓶颈
问题:128K 的 CoT 如果每次都从头生成,rollout 成本极高。

解决方案:设置固定的每轮 token budget。如果一条 trajectory 在 budget 内未完成,把当前状态存入 replay buffer,下一轮继续生成(类似游戏存档)。
为什么这是关键创新:没有 partial rollouts,128K RL 在工程上不可行——单条轨迹的生成时间会导致大量 GPU 等待,系统效率极低。Partial rollouts 让 long-context RL 的 throughput 可以接近短 context RL 的效率。这是 k1.5 "长上下文 scaling"能够实际跑起来的工程基础。

Megatron + vLLM 混合部署

训练阶段和推理阶段复用同一批 GPU
传统 RL 训练框架:训练 GPU 和推理 GPU 分离,互相等待时都有空闲。k1.5 用 Kubernetes Sidecar 让 Megatron(训练)和 vLLM(推理 rollout)在同一 GPU 上分时运行:
动态扩容:推理阶段可以临时拉入额外的 inference 节点(idle GPU)加速 rollout,训练阶段释放。这让系统可以在"训练密集"和"推理密集"之间动态分配资源。

📊 实验结果

AIME 2024(长 CoT)
77.5
对齐 OpenAI o1
MATH-500(长 CoT)
96.2
SoTA
AIME 2024(short w/ rl)
60.8
GPT-4o: 9.3(+554%)
Short RL 平均 Token
3,272
Long CoT 的约 1/5

Long2Short 各方法对比(Figure 7 解读)

性能 vs 平均 Token 数——Pareto 前沿分析
图 7 的核心发现:
→ 关键洞察:DPO 在 token vs 性能的曲线上并不是特别突出;Long2Short RL 是唯一真正做到"少 token + 高性能"同时领先的方案。
▶ 短模型与其他模型的完整对比表
模型MATH500AIME 2024LiveCodeBench类型
k1.5-short w/ rl94.660.847.3短 CoT
DeepSeek-V390.239.240.5短 CoT
Claude-3.5-Sonnet78.316.036.3短 CoT
GPT-4o74.69.333.4短 CoT
Qwen2.5-72B-Inst.80.023.331.1短 CoT

Context Length Scaling 实验

更长的 context → 更好的性能,且难题提升更明显
用中等规模模型在数学集上实验:随训练迭代增加,准确率和响应长度同步提升。更重要的是,困难 benchmark 的响应长度增长幅度比简单 benchmark 更大——模型自主学会了"难题多想,简题少想",尽管没有任何难度感知的显式训练信号。这说明长 CoT RL 本身就有一定的难度感知性,DIET 所做的是把这个性质强化理论化

🧬 谱系:k1.5 → DIET → f(g(x))

k1.5 作为工业锚点,学术界如何在此基础上演进
论文时间规模核心贡献继承自 k1.5
Kimi k1.5 2025.01 产品级 RL + 长上下文 scaling + length penalty 原始公式 + long2short 四方法 —(起点)
DIET(NeurIPS 2025) 2025.05 1.5B 难度感知 length penalty(αada + fdyn)+ GRPO Advantage Weighting Kimi 格式 length penalty 作为基础;长2短 → 单 agent 场景
f(g(x))(ICLR 2026) 2025.09 实验性 RL 真正学新技能(非 reranking)的理论证明 解释"为什么 k1.5 的 RL 能学会 efficient reasoning"的机制
→ k1.5 的价值不在于某个特定的方法创新,而在于规模证明:它告诉学术界"这件事在真实规模上跑得通"。DIET 可以在 1.5B 上验证 αada 的理论,但没有 k1.5 作为产品级佐证,这个方向能否真正落地是存疑的。k1.5 是这个方向的"工业可行性证书"。
k1.5 没有完成的工作(开放问题)
论文最后一段明确提出了几个开放问题:
局限:① 模型权重未开源,其他团队无法复现产品级结果;② RL 基础设施(Megatron + vLLM 混合部署,Mooncake RDMA)的具体实现未完整公开;③ Long2short 实验缺少完整的消融(如不同 max rollout length 的对比);④ 多模态 RL 部分信息密度较低,视觉数据的构建细节较简略。
arXiv:2501.12599 · Moonshot AI 技术报告 · 2025年1月 · 精读:2026-07-15
关联精读:DIET (NeurIPS 2025) · Optima (ACL 2025)