扩展强化学习:MiMo-V2.6如何实现大模型自我提升
最近如果你持续关注大模型技术报告应该能明显感觉到一个转向各家不再只拼预训练语料的规模也不再单纯堆SFT数据的数量“强化学习”这个词出现在论文标题里的频率越来越高。MiMo-V2.6这份技术报告的标题《通过扩展强化学习实现模型自我提升》就是这个趋势里一个相当典型的样本。我把这份报告以及背后代表的方法论完整拆了一遍整理成这篇文章——它到底解决了什么痛点、数据管道怎么设计、RL训练怎么保持稳定、评测结果该怎么解读以及哪些经验可以直接借鉴到自己团队的模型迭代流程里。不管你是做LLM训练的研究员还是正在折腾开源模型微调的工程师这篇都值得花几分钟读完。1. 技术报告背后MiMo-V2.6解决的是什么问题1.1 “自我提升”的核心定义从辅助角色到训练主引擎先说清楚一个容易混淆的概念。“模型自我提升”听起来像是模型自己写代码、自己改自己其实不是这个意思。在MiMo-V2.6这个语境下自我提升指的是模型通过自身生成的候选回答、自身的评分信号或者一个轻量级奖励模型反复迭代优化自身策略的过程。换句话说模型不再只是训练流水线末端被动接收数据的“容器”而是主动参与数据生成、数据筛选、质量评估的闭环。这个转变的行业背景很明确。过去两年大家已经达成了一个共识高质量的人类标注数据是稀缺资源尤其对于数学推理、代码生成这类需要专家知识才能标注的领域数据成本非常高。比如让一位数学专业的研究生为一道竞赛题写详细解题过程可能比标注一条情感分类数据贵几十倍。于是大家开始想能不能让模型自己生成大量候选答案再用相对便宜的规则或者一个训练好的奖励模型去筛选。这就是自我提升最朴素也最实用的形态。MiMo-V2.6做的事就是把这条路线“扩展”到了极致。报告标题里有个关键词“扩展强化学习”对应英文里常说的scaling reinforcement learning。过去RL在LLM训练里往往只是最后一公里的对齐工具比如RLHF阶段用几十万到几百万条偏好数据把模型“调教”到符合人类偏好。但MiMo-V2.6的方向是把RL当作主训练引擎显著增加RL训练步数、增加每次生成的响应长度、扩大prompt覆盖范围让模型从“学会模仿某个答案”变成“学会在多次尝试中找出正确路径”。1.2 为什么强化学习比SFT更适合承载自我提升这里必须解释一个很关键的问题既然SFT同样可以让模型学会做题为什么非得绕一圈去做RL我的理解是SFT的本质是行为克隆。它要求训练数据里存在“正确答案”然后让模型去拟合这个正确答案的分布。问题在于对于复杂推理任务正确答案的空间非常巨大——一道数学题可能有四种不同解法每种的中间步骤都不一样。人类标注者只能覆盖其中少数几条路径模型学到的其实是“被标注过的路”而不是“能解决问题的策略”。强化学习处理问题的逻辑完全不同。它不要求每条训练样本都有标准答案只要求每一条样本能获得一个反馈信号——对了还是错了好了多少。模型自己采样多条轨迹自己探索各种中间步骤和推理路径然后根据奖励信号调整策略。奖励高的路径被加强奖励低的路径被削弱。这意味着模型有机会探索出人类标注者从来没写过的解法。这才是“自我提升”的真正价值不是模仿已知答案而是探索未知路径。另一个现实因素是token效率。SFT阶段一条高质量思维链数据可能要几百甚至上千个token标注成本高、获取速度慢。而RL阶段模型可以一次性批量采样几千条候选虽然大部分是错的但错得五花八门反而让模型更清楚“什么样的推理会走偏”。这在数据扩充的意义上相当于“用算力换数据标注”在当前算力价格持续下降的背景下这笔账是划算的。2. 数据飞轮怎么转模型生产的自我增压回路2.1 弱监督数据的再加工拒绝采样与筛选漏斗任何一个RL训练循环最怕的不是模型笨而是数据脏。MiMo-V2.6在数据层面的做法可以概括成三个字漏斗化。第一步是种子数据收集。这里的种子数据不需要太“高级”来源可以包括开源指令数据、之前SFT阶段积累的prompt、甚至从通用语料里提取的数学和代码相关问题。报告里重点提到的思路是“弱监督、强筛选”用当前版本的模型或者一个稍弱版本的模型对每个prompt采样大量候选回答比如每个问题采样32条、64条甚至更多然后用规则或者奖励模型筛选出高质量子集。这个过程有几个容易被忽略的细节。第一采样时的温度参数很关键。温度太高会引入太多随机噪声温度太低又容易塌缩到少数几条重复路径。实际经验是在RL数据生成阶段使用0.6到0.8的温度配合top-p采样可以在探索性和稳定性之间取得比较好的平衡。第二筛选标准不能只看最终答案对不对还要看推理过程的完整度。一个只写“答案是42”没有任何中间步骤的答案即使最终结果正确对训练RL也没有帮助因为奖励信号没法分配到具体步骤上。第三筛选漏斗通常不是单层的。一般先做规则过滤比如代码能否编译通过、数学答案是否匹配、格式是否符合预期再做模型过滤用奖励模型或者一个更强的教师模型打分最后还会做去重和难度均衡避免数据分布过于偏向简单问题或某几个固定题型。这个漏斗结构在MiMo-V2.6的报告中被反复强调本质上是因为强化学习对数据分布非常敏感——如果一个batch里大量是简单题模型很快就会饱和并开始过拟合这些简单题的“表面模式”。2.2 构造“先思考、再作答”的长链数据另一个数据层面的核心操作是引入长思维链。细心的人会发现近一年推理模型的一个显著变化就是“回答变长了”。以前LLM的输出稳定在几百token以内现在领先模型的推理输出动不动就是几千token甚至更长。这背后不是模型变啰嗦了而是大家意识到很多复杂问题必须给模型足够的“思考空间”。MiMo-V2.6在构造RL训练数据时把“prompt难度与响应长度匹配”作为一条设计原则。具体来说简单的prompt允许模型直接给答案不需要强制生成大段思考过程中等难度的prompt要求模型先写出已知条件、然后推导、最后验证高难度的prompt则要求模型采用类似“自我批判”的结构——先提出一个初步思路然后指出这个思路哪里不合适再切换新思路最后给出结论。这种多轮自我纠错式的思维链学名叫“System 2思维”的显性化。它不是让模型一次性蹦出正确答案而是像人类解难题一样先在草稿纸上写写画画、推导几步、发现思路堵住了、换个角度再来。从强化学习的视角来看这种长流程的思维链给策略优化提供了更多梯度信息——模型能清楚地看到哪些步骤导致最终拿到了高奖励哪些步骤把推理带进了死胡同从而更精细地调整策略而不是粗糙地记住“这题选C”。当然长链数据不是越长越好。报告里也展示了响应的token分布曲线发现存在一个“甜蜜点”。超过某个长度之后增加思考时间对正确率的边际收益迅速下降甚至因为推理链条过长导致中间步骤累积错误而出现正确率下降的情况。所以构造数据时控制响应长度分布、让不同难度的题匹配不同长度的思维链是非常重要的工程细节。2.3 奖励模型迭代自我评判如何避免“自己夸自己”奖励模型在自我提升闭环里的角色相当于一个“会打分的裁判”。但裁判也有裁判的问题如果裁判太弱分不出好坏策略优化就没有方向如果裁判太强模型会想尽办法钻裁判的漏洞出现所谓的reward hacking。MiMo-V2.6在奖励模型设计上采取了一个很务实的策略——分而治之。对于数学和代码这类结果可验证的任务使用基于规则的密集奖励答案对了给满分过程部分正确给部分分数答案错了给零分。规则奖励的成本低、稳定性高、不容易被“花言巧语”骗过。而对于通用对话和开放域推理任务则使用一个持续迭代的奖励模型。这个奖励模型本身也是自我提升闭环的一部分。它最初基于少量人工偏好数据训练出来然后在RL训练过程中持续收集模型输出和对应的奖励打分定期用新的数据重新训练奖励模型。这个“奖励模型迭代”的概念很容易被忽视但极其重要如果奖励模型固定不变模型逐渐摸清它的打分偏好之后就会朝着“讨好裁判”的方向优化而不是朝着“真正解决问题”的方向优化。定期更新奖励模型相当于反复移动球门让模型永远无法通过简单的模式匹配获得高奖励。实际操作中奖励模型和数据漏斗是联动的关系RL训练产出的批量数据一边喂给主策略模型做优化一边切出一部分用于奖励模型的再训练。这样奖励模型的水准始终比策略模型高半步形成一个持续的“追赶-超越”循环。我自己的体会是这两者的迭代节奏需要精心设计——奖励模型更新得太频繁策略优化目标不稳定训练曲线会剧烈震荡更新得太慢又可能出现奖励黑客问题。MiMo-V2.6的方向是每若干轮RL训练后做一次奖励模型评估只有当新奖励模型在验证集上稳定超过旧版时才替换而不是每轮都换。3. 扩展强化学习的工程细节3.1 策略优化算法选型GRPO与PPO的取舍聊完了数据进入训练环节。MiMo-V2.6的标题里专门强调“扩展强化学习”那这个扩展的底座是哪个算法从行业公开实践来看主流选择是PPO及其变体尤其是Group Relative Policy Optimization也就是GRPO。PPO是强化学习里的经典算法核心思想是通过裁剪让策略更新步长被限制在一个可控范围内。它引入了价值网络和广义优势估计理论上稳定但代价是需要大量内存来维护价值网络。PPO的批评者经常说训练一个70B模型做PPO相当于同时在训练两个70B模型——策略模型和价值网络显存和算力开销几乎翻倍。GRPO的思路更轻巧。它不再为每个状态训练一个价值网络来估算基线而是用同一批prompt采样出若干条回答计算这组回答奖励的平均值作为baseline然后让每条回答的优势函数等于它的奖励减去组内平均奖励。这样省掉了价值网络的巨大内存开销特别适合大模型的分布式训练。DeepSeek-R1等模型就是采用这条技术路线取得显著效果的。MiMo-V2.6选择GRPO这类轻量级策略优化算法逻辑上和“扩展RL”的目标是一致的——只有把单次训练的显存和算力成本降下来才有条件去延长训练步数、扩大batch规模。但这不意味着GRPO没有缺点。组内相对奖励天然存在一种尺度依赖如果组内所有回答都很好它们的相对差距可能非常小优势函数接近零策略几乎没有更新信号反过来如果组内所有回答都很差相对差距同样不大。所以使用GRPO时prompt的难度分布要精心构造保证每个组内的回答质量拉开档次。MiMo-V2.6的prompt分组策略在报告中提得比较细会按难度把prompt分成若干桶然后在同一桶内采样确保同一组的回答“起点相同、结果不同”这样才能产生有效的相对奖励信号。3.2 训练稳定性从KL约束到优势估计的各个旋钮强化学习训练的稳定性是所有做RL的人的共同噩梦。loss曲线明明在下降测试集效果却突然崩了或者训练到一半模型的输出开始出现大量重复性的胡言乱语。MiMo-V2.6为了把扩展RL这条路走通在稳定性上做了几个关键设计。第一个是关于参考模型的KL约束。自我提升和自毁之间往往只有一线之隔如果策略模型在RL过程中完全放飞自我它很可能为了让奖励最大化而牺牲语言的流畅性和通用能力典型表现是输出变成类似“为了奖励我说我是对的”的套话。为了避免这种情况训练时通常会保留一个冻结的参考模型计算当前策略模型与参考模型的KL散度并作为惩罚项加进损失函数。KL系数不是固定不变的MiMo-V2.6采用了自适应KL控制当KL超过阈值时加大惩罚当KL过小时减小惩罚。这个阈值在训练早期可以放宽一些让模型大胆探索训练后期逐步收紧让策略收敛到稳定区域。第二个是优势估计的归一化处理。RL训练的batch与batch之间差异很大不同batch的奖励平均值和方差浮动非常剧烈。如果直接用原始优势值做梯度更新学习率稍高一点就会剧烈震荡。所以实际训练中会在batch层面或者mini-batch层面做优势归一化减去均值、除以标准差。这个操作看起来不起眼但往往能直接决定训练能不能跑下去。第三个是学习率和梯度裁剪的精细设置。深度学习中大家习惯了一家独大的Adam优化器但在RL场景里训练信号的非平稳性远大于普通监督学习。MiMo-V2.6的经验是把峰值学习率降到SFT训练时的三分之一到五分之一并且设置严格的最大梯度范数比如1.0。这样每一步更新都是小幅但可靠的改进。报告中训练曲线的平滑程度其实依赖于这些非常“笨”但必要的工程手段。还有一个容易被忽略的要点是训练与采样的数据流隔离。RL训练在主训练集群上进行而模型采样通常需要大量前缀解码、KV缓存优化等推理侧手段。如果采样和训练直接混在一起采样速度会拖慢训练节奏导致GPU利用率下降。MiMo-V2.6采用异步采样架构一个独立的推理集群不断生成新的训练样本注入经验回放队列训练集群从队列中消费样本更新模型参数每隔若干步把最新权重同步给推理集群。这个异步机制是“扩展RL”规模化运行的必备基础设施。3.3 算力与效率扩展RL的真实账单说实话扩展RL最直观的代价是算力账单。同一个模型做SFT可能跑几千step就够了但做RL往往要跑几万stepSFT阶段batch里的每条样本是固定长度的离线数据RL阶段每条样本的生成过程本身也是算力消耗。我给一个粗略的估算逻辑。假设每个prompt需要采样64条候选回答每条回答平均2000个token那么一个prompt的总生成token是12.8万。再假设训练阶段每个token的梯度计算成本大约是前向推理的2到3倍。那么一条prompt在RL训练中的算力消耗折合成单卡A100大概在几十秒到几分钟量级。如果RL训练用100万条prompt总算力消耗就是千万卡时级别的。这个数字会让很多小团队望而却步这也是为什么大部分真实世界里的“扩展RL”实践是在中小模型上先跑通再迁移到大模型上。MiMo-V2.6在效率层面的一个值得借鉴的设计是“课程式扩展”。它不是一开始就对整个数据集跑完整RL而是先用一个难度适中的子集小规模试跑观察奖励模型的区分度、策略模型的响应长度分布、KL的变化趋势再逐步扩大数据规模和训练步数。这个思路有点像大模型预训练里的warmup只是warmup的是“难度”而不是“学习率”。我在自己项目里也复刻过这个逻辑先拿500条数据进行RL热身确认奖励信号没有明显异常之后再逐步扩容到全量数据。这种做法可以把最昂贵的训练浪费扼杀在早期。4. 效果评估与边界讨论自我提升的上限在哪里4.1 推理基准上的硬指标变化评测是技术报告最见真章的部分。MiMo-V2.6在报告里展示的评测结果覆盖了数学推理、编程竞赛、通用问答和指令遵循等多个维度。先说硬指标。在数学推理这个最成熟的RL验证领域报告展示基线与RL后的模型对比AIME这类竞赛级数学基准上RL训练后的pass1正确率显著提升而且这种提升不是“记住题目”带来的——AIME每年题目都不同模型必须在没见过的新题上完成推理。在代码生成基准上改进同样明显特别是修复逻辑错误和边界条件处理这两类能力提升幅度最大。通用问答维度则呈现出与推理维度不太一样的趋势提升幅度没有推理任务那么夸张但指令遵循和格式规范性有明显改善。这里面最值得玩味的不是“提升了多少分”而是“哪些任务提升得多、哪些提升得少”。报告里的消融实验显示凡是答案有明确对错客观标准的任务RL提升都非常显著凡是答案质量依赖主观判断的任务提升就相对有限。这个现象本质上反应了强化学习的本质——它需要清晰、稳定、可学习的奖励信号。奖励信号越清晰策略优化的置信度越高提升越明显。评测维度典型基准RL相对SFT的变化趋势说明数学推理AIME、MATH显著提升结果可验证奖励信号最干净代码生成LiveCodeBench明显提升编译和单测提供自动反馈通用推理MMLU-Pro、BBH中等提升部分题目存在逻辑漏洞可利用指令遵循IFEval小幅提升格式要求相对机械开放域对话人工评估不稳定奖励模型主观性较强4.2 思考长度的双刃剑能力增强与过度思考扩展RL带来的一个直接副作用是模型“变长了”。报告里专门分析了响应长度与准确率的关系结论是所有评测对象里都存在一个临界点。在临界点之前增加思考长度能明显提升正确率超过临界点之后正确率不升反降同时响应中开始出现大量无意义的重复和“伪深度”的废话。这个现象行业里叫“过度思考”。实际观察中会发现模型遇到简单题也要长篇大论本来一行代码就能写清楚非要先分析需求、再写注释、再验证一遍。这种行为的成因很容易理解RL训练过程中模型发现“更长”的回答往往更容易获得高奖励于是策略朝“尽量多写”的方向偏移。如果训练数据的prompt以高难度为主模型没有机会学会“快速回答简单题”就会在推理时无差别地拖长。MiMo-V2.6的应对策略是在RL训练的奖励函数中加入了长度惩罚项。它不是简单地惩罚长回答而是根据prompt难度动态调整对低难度prompt设置更严格的长度上限对高难度prompt保持较宽松的长度预算。这个设计背后是“if简单题答太长了说明它没真正理解题目的难度分级”。我在实际复现中也发现动态长度惩罚的效果比统一的长度惩罚好得多前者让模型学会了“依据问题类型调节思考深度”后者只是让模型把所有回答都缩短误伤了需要长链推理的难题。4.3 失败模式与下一个版本的想象空间任何技术报告都不会告诉你它失败的实验但我们可以从公开讨论和经验推断出扩展RL的几个典型失败模式先说最基础的这几个再说说我对下一个版本的理解。失败模式一奖励过密导致的策略塌缩。如果奖励函数的颗粒度过细模型会被“每走一步都要获得奖励”的目标绑架输出变成一堆讨好奖励模型的小碎步失去全局规划能力。模式二数据多样性不足导致的漂移。RL阶段使用的prompt如果与预训练、SFT阶段的数据分布差异过大模型会在强化任务上表现出色但同时出现“灾难性遗忘”——写作能力下降、事实性知识回忆变差。模式三奖励模型与策略模型的“军备竞赛”两个模型同步变强但从人类视角看最终输出质量不升反降。针对这些失败模式下一阶段的扩展方向其实已经比较清晰了。一是把结果奖励升级为过程奖励让模型对每一步推理得到即时反馈二是引入多技能的联合RL训练在推理、代码、对话等多个任务上同时做策略优化避免单一任务过拟合三是让奖励模型本身也具备“链式思考”能力通过分析推理过程来综合打分而不是只看最终答案。这些方向在MiMo-V2.6的框架里都有所铺垫接下来的版本大概率会沿着“更大范围的RL统一训练更智能的奖励信号”这条路继续走下去。把话说回最核心的结论MiMo-V2.6的技术报告与其说是一个具体模型的性能展示不如说是一份“强化学习作为LLM训练主轴”的方法论样本。它用实际数据验证了一个重要判断——模型是可以利用自身生成的信号持续提升推理能力的而且这个提升空间远没有被榨干。最后聊一点我自己的实操体会。如果你想把这条路复制到自己项目中我建议从这三件事开始第一先把奖励信号做干净宁可奖励函数简单到“只有对错”也不要用一个分不清好坏的复杂模型来打分第二在小模型上跑通完整的“采样-筛选-训练-评估”闭环再迁移到大模型这个闭环本身才是真正的核心资产第三一定要盯住训练过程中响应长度和输出多样性这两个指标它们往往比基准分数更早暴露训练异常。扩展RL这条路现在还没有到天花板恰恰是现在入场做工程沉淀后面才能真正吃到技术红利。