Kimi K1.5 论文解读:不要价值网络不要MCTS,一根筋搞RL照样干到o1水位
论文:Kimi K1.5: Scaling Reinforcement Learning with LLMs 作者:Moonshot AI(月之暗面) 这篇是月之暗面2025年1月甩出来的第一份完整技术报告,arXiv编号2501.12599,从预训练数据配方到RL算法到基础设施,几乎把家底全亮了。它的核心主张一句话就能说完:把价值网络、MCTS、过程奖励模型全砍掉,用最朴素的策略梯度配合工程上的死磕,照样能把多模态推理推到OpenAI o1同级水位。前提是得先读完它那条四阶段训练管线和Long2Short压缩方案,不然你会觉得”这也太简单了吧”。
一、四阶段管线:先喂饱,再教思考,最后上强度
K1.5的训练流程说白了就是四步走:预训练、普通SFT、长CoT SFT、强化学习。每一步都在给下一步擦屁股——SFT给RL提供一个足够好的初始策略,RL不用从零开始瞎摸索。
1. 预训练:三步走激活131k上下文
预训练本身又拆成三个小阶段:视觉语言联合预训练、冷却(cooling)、长上下文激活。最终模型在预训练结束时就拿到了约131k tokens的上下文窗口。
冷却阶段干的事类似于”退火”——预训练末期把学习率压下去、数据质量拉上来,让权重收敛到一个更稳的区域。长上下文激活则是逐步把序列长度往上加,让位置编码和注意力机制慢慢适应超长输入。这个选择后来被证明极其关键——后面RL阶段要跑128k上下文的长推理链,如果预训练阶段没把地基打好,后面全是空中楼阁。
2. 普通SFT:文理兼修的百万级数据
SFT阶段用了约百万级文本样本加百万级视觉样本。文本侧的配比是:约50万问答、20万代码、20万数学与科学、5千写作、2万长上下文任务。视觉侧是等量级的图文配对数据。
注意这个配比——团队从一开始就没打算”先做纯文本再嫁接视觉”,而是SFT阶段就让模型同时吃文本和图像。这不是随手一配,是刻意为之。
3. 长CoT SFT:从”会说话”到”会思考”的桥梁
这一阶段的数据不是简单问答对,而是包含完整推理链的示范。模型从中学四种元认知(metacognition) 能力:计划(分解问题)、评估(检查中间步骤)、复盘(发现错误后回溯)、探索(尝试替代路径)。
说白了就是:不光教你做题,还教你做完之后回头看一眼对不对、换条路能不能走通。
二、RL算法:砍掉一切花活,只留最硬的核
这是整篇报告最扎眼的部分。团队用的是OPMD(Online Policy Mirror Descent,在线策略镜像下降) 的变体,在奖励最大化目标上加了KL散度和熵正则化约束。
1. 为什么不要价值网络
先交代背景:主流RLHF方案(比如PPO)通常需要一个独立的价值网络(critic) 来估计状态价值、计算优势函数。这玩意本身就是一个跟策略模型同等规模的神经网络——额外的显存、额外的工程复杂度、额外的超参数要调。
K1.5的选择很野:完全不要。梯度估计直接用样本奖励的均值当基线(baseline),配一个L2正则化项。听起来像REINFORCE的朴素版本对吧?但OPMD的镜像下降框架给了它更好的理论收敛性质——它不是在欧氏空间做梯度下降,而是在概率单纯形上做自然梯度更新,天然适配策略优化。
没有critic意味着显存直接砍半。这不是”锦上添花”的优化,是”能不能在现有卡上跑起来”的生死问题。
2. MCTS和PRM也一并砍了
蒙特卡洛树搜索(MCTS) 在推理时引入大量额外计算,过程奖励模型(PRM) 需要昂贵的逐步标注数据。K1.5统统不要,只依赖结果级奖励:代码任务通过沙箱执行验证正确性,数学任务用CoT奖励模型判断最终答案。
对比一下就懂:别人家RL系统里塞了critic、MCTS、PRM三件套,K1.5就一个策略模型加一个奖励信号。把复杂度全留给数据和训练时长,算法组件能砍就砍。这个”少即是多”的工程判断,后来被K2、K2.5一路继承了下去。
三、128k上下文与部分滚动:长推理链不被截断的底线
长CoT推理有个很现实的毛病:一道竞赛数学题的推理链动辄数万tokens,RL训练的上下文窗口不够大,推理链直接被截断,奖励信号就废了。
K1.5把RL训练的上下文硬扩到128k tokens。但光扩窗口还不够——长序列生成极其耗时,每步都从头生成完整轨迹的话,GPU利用率会低到令人发指。
解法是部分滚动(Partial Rollout):不丢弃已有的长轨迹,复用其中尚未完成的片段,从中间状态继续生成。打个比方就是下棋时的”封盘续弈”——不用每盘从头下,从上次中断的地方接着来。
这招把长序列RL训练的样本效率拉高了一个量级。没有它,128k上下文下的RL训练在工程上根本跑不通——生成一条完整轨迹的时间成本会让整个训练周期变得不可接受。
四、三把修剪刀:课程、优先、长度惩罚
RL训练不是”把题扔给模型然后等奖励”就完事了。K1.5上了三种采样与正则化策略:
课程采样(Curriculum Sampling):由易到难排题。早期让模型在简单题上把正确推理模式立住,后期再引入竞赛级难题。避免早期频繁失败导致策略崩塌——跟打游戏先刷小怪再打Boss一个道理。
优先采样(Prioritized Sampling):哪些题做得烂就多练哪些。训练资源向薄弱环节倾斜,纯纯的”补短板”逻辑。
长度惩罚(Length Penalty):奖励函数里加输出长度惩罚。模型不光要答对,还得尽量简洁。这为后面的Long2Short压缩埋了伏笔。
这三种机制不是算法创新,是训练工程里的”脏活”。但正是这些脏活决定了RL scaling到底能不能真正跑通。
五、视觉RL:不是贴个视觉编码器就叫多模态
K1.5的RL训练覆盖了视觉推理,数据来源三类:
- 真实世界题目:实际考试、竞赛里的含图题(几何图、函数图像、数据图表)。
- 合成视觉推理数据:程序化生成的视觉逻辑题,难度梯度可控。
- 文本渲染图像:把文本题目渲染成图片输入,逼模型真正”看”图。
第三类数据的设计意图很毒:如果模型只是把图片当文本的另一种编码方式,那它根本没学会视觉理解。文本渲染图像强制模型从像素级特征里提取语义。这是K1.5在MathVista上拿到74.9分的关键——不是”文本模型加个视觉编码器”的缝合怪,是推理层面真正融合了视觉信息。
六、Long2Short:想得深但说得简
长CoT推理的代价是延迟。一道题思考三千tokens和三百tokens,用户体验天差地别。K1.5搞了一套四步压缩管线:
- 权重合并(Model Merging):长CoT模型和短CoT模型的权重做平均。长模型”会想”,短模型”说得快”,平均出一个折中起点。
- 最短拒绝采样(Shortest Rejection Sampling):同一道题生成多条推理链,只保留最短的正确链当SFT数据。教模型”用最少步骤到正确答案”。
- DPO偏好训练:构造”短且正确”vs”长且正确”的偏好对,让模型学会偏好更简洁的推理路径。
- 长度惩罚RL:RL阶段进一步强化长度约束,保持正确率的前提下持续压缩输出。
四步走完,短CoT模型在AIME上拿到60.8,MATH500拿到94.6,LiveCodeBench拿到47.3——对比GPT-4o和Claude 3.5 Sonnet,提升幅度最高达550%。当然这个550%得放在语境里看:对比对象是2024年底的非推理模型,反映的是代际差距,不是跟o1硬碰硬。
但Long2Short证明的命题本身很硬:深度推理能力和推理效率不是不可调和的矛盾。“想得多”可以系统性地转化为”想得准”。
七、训推混部:Megatron加vLLM共享GPU
基础设施层面,K1.5的RL训练用了混合部署架构:训练侧跑Megatron做模型并行,推理侧跑vLLM做高吞吐生成,两者共享同一组GPU。
不是简单的”一半卡训练一半卡推理”。团队通过checkpoint engine和Mooncake RDMA技术,实现训练权重到推理引擎的快速同步。模型训练侧更新一步,推理侧几乎立刻加载新权重继续生成样本。代码任务的验证走独立沙箱执行环境。
对RL这种”生成-评估-更新”紧密耦合的训练范式来说,这种架构不是锦上添花,是能不能跑通的前提条件。GPU利用率从”训练时推理卡闲着、推理时训练卡闲着”的50%水平直接拉到接近满载。
收尾:我的一点看法
我最服的是这篇报告的”减法哲学”。2024年底那个时间点,业界做RL推理的主流思路是往上堆东西——critic、MCTS、PRM,恨不得把搜索和规划全塞进去。K1.5反其道而行,把能砍的全砍了,然后用工程上的死磕(128k上下文、部分滚动、训推混部)把简单算法的潜力榨干。这种品味比任何单点算法创新都稀缺。
当然也要泼盆冷水。报告里的对比对象是GPT-4o和Claude 3.5 Sonnet,“550%提升”这个数字冲击力很强,但本质上是推理模型对非推理模型的代际碾压,含金量没标题党看起来那么夸张。另外,整篇报告对预训练数据配方的描述偏粗,百万级样本的具体来源和质量控制没完全展开,这块的复现门槛其实很高。
读到这里再回头看Kimi的技术路线就很清晰了:K0-math是数学推理的试水,K1.5是把RL scaling方法论跑通并推广到多模态的里程碑,K2和K2.5则是在这套方法论上继续堆规模、堆数据。K1.5确立的”不要critic、不要MCTS、不要PRM”三不原则,几乎成了后续Kimi系列的祖训。它不是一篇提出全新算法的论文,但它把”正确的事情做到极致”这件事,做成了工业级多模态模型上的标杆案例。
附:核心数据速查
基本盘
| 项目 | 数据 |
|---|---|
| 发布时间 | 2025年1月20日 |
| arXiv编号 | 2501.12599 |
| 团队 | Moonshot AI(月之暗面) |
| 定位 | 多模态推理模型,RL scaling方法论 |
| 预训练上下文 | 约131k tokens |
| RL训练上下文 | 128k tokens |
训练配置
| 阶段 | 关键配置 |
|---|---|
| 预训练 | 视觉语言联合预训练 + 冷却 + 长上下文激活 |
| 普通SFT | 约百万级文本 + 百万级视觉样本(50万问答/20万代码/20万数学科学/5千写作/2万长上下文) |
| 长CoT SFT | 四种元认知能力示范(计划/评估/复盘/探索) |
| RL | OPMD变体,无critic/MCTS/PRM,结果级奖励,KL散度+熵正则化+L2 |
| 基础设施 | Megatron(训练)+ vLLM(推理)混部,Mooncake RDMA权重同步 |
Benchmark成绩
| 基准测试 | K1.5 长CoT | K1.5 短CoT | 说明 |
|---|---|---|---|
| AIME | 77.5 | 60.8 | 美国数学邀请赛 |
| MATH500 | 96.2 | 94.6 | 数学推理 |
| Codeforces | 94百分位 | - | 竞赛编程 |
| MathVista | 74.9 | - | 视觉数学推理 |
| LiveCodeBench | - | 47.3 | 实时代码生成 |
关键概念清单
| 术语 | 英文 | 一句话解释 |
|---|---|---|
| 在线策略镜像下降 | OPMD (Online Policy Mirror Descent) | 在概率单纯形上做自然梯度更新的策略优化框架,K1.5 RL算法的理论基础 |
| 价值网络 | Critic / Value Network | PPO等方案中用于估计状态价值的独立网络,K1.5完全不用 |
| 蒙特卡洛树搜索 | MCTS (Monte Carlo Tree Search) | 推理时通过树搜索扩展计算量的方法,K1.5明确排除 |
| 过程奖励模型 | PRM (Process Reward Model) | 对推理链每一步给奖励的模型,需要逐步标注,K1.5不用 |
| 部分滚动 | Partial Rollout | 复用未完成的长轨迹从中间继续生成,避免每步从头生成 |
| 课程采样 | Curriculum Sampling | 由易到难安排训练题目,防止早期策略崩塌 |
| 优先采样 | Prioritized Sampling | 对模型表现差的任务提高采样概率,补短板 |
| 长度惩罚 | Length Penalty | 奖励函数中惩罚输出长度,鼓励简洁 |
| 权重合并 | Model Merging | 长CoT模型与短CoT模型权重平均,Long2Short第一步 |
| 最短拒绝采样 | Shortest Rejection Sampling | 多条推理链中只保留最短正确链作为SFT数据 |
| DPO | Direct Preference Optimization | 通过偏好对直接优化策略,无需显式奖励模型 |
| 冷却 | Cooling / Annealing | 预训练末期降低学习率、提升数据质量,稳定权重收敛 |
| 训推混部 | Co-located Training & Inference | 训练和推理共享同一组GPU,通过快速权重同步避免资源闲置 |
| Mooncake RDMA | - | 月之暗面的高速远程内存访问技术,用于训练权重到推理引擎的快速同步 |
如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时





