最近大模型圈子里讨论最多的除了预训练算力竞赛就是后训练这个环节还能玩出什么新花样。MiMo-V2.6技术报告出来后不少人都在问同一个问题不做大规模人工标注不搞复杂对齐流水线直接用强化学习让模型自己把自己往上抬这条路真的走得通吗我把这份报告从头到尾捋了一遍又结合自己平时跑LLM强化学习训练踩过的那些坑写一篇拆解。核心就围绕LLM、MiMo-V2.6、强化学习、模型自我提升这四个关键词展开尽量把原理讲透把能落地的操作细节也补上。这份报告真正让我感兴趣的地方不在于它刷了多少分而在于它把“强化学习”从辅助手段变成了主引擎。以前的常见做法是SFT为主、RL做点缀MiMo-V2.6的思路更像是把RL训练预算拉到一个非常大的量级让模型在探索中自我修正、自我进化。这篇博文适合三类人看一是想复现类似训练的算法工程师二是正在做LLM数据流水线的同学三是想搞明白“开源模型为什么突然会做题了”这件事的读者。我会把技术拆解、实操配置、问题排查和未来演进都串起来讲。1. 项目背景与整体思路拆解1.1 从SFT到RL大模型能力提升的主战场已经转移过去两年训练一个大模型的常规路径是预训练加监督微调。预训练负责把海量文本里的知识压缩进参数SFT负责让模型学会“人类期望的回答格式”。这套流程的问题是人类写的答案再好也有天花板。标注者能给的解法有限模型学到的只是模仿而不是真正的推理能力。RL不一样。强化学习让模型自己去试试错之后根据结果反馈调整策略。拿数学题举例SFT只能让模型照着标准答案的格式写但RL可以让模型尝试多种解法、走弯路、发现错误、然后收敛到正确路径。这个过程很像人刷题不是背答案而是做了错、错了改、改了懂。MiMo-V2.6的核心思路就是在后训练阶段把预算重心从SFT挪到RL用大规模强化学习把推理能力进一步释放出来。这背后其实反映了一个趋势预训练负责“储备知识”后训练负责“解锁能力”。当知识储备足够时能力提升的主要矛盾就转移到了如何让模型更会运用知识而这恰好是强化学习的主场。1.2 技术报告里的三个关键词拆解我把报告的标题拆成三个部分来看每个词都对应一个具体的技术决策。关键词含义技术对应MiMo-V2.6模型系列的一个版本号中小规模开源LLM基座能在合理算力下跑通完整RL闭环扩展强化学习把RL训练的规模、任务数量、探索次数同步放大组内采样数量N拉大、训练步数拉长、覆盖数据多样化模型自我提升模型既是学生又是数据生产者自己生成任务、自己验证结果、自己训练迭代这里要特别说一下“自我提升”这个词。很多人听到“自我”就觉得是完全无人参与其实不是。人力并没有消失而是从“写答案”变成了“写规则、做验收”。模型负责批量生产候选解法和中间过程规则负责判断对错验证器负责把关人在这个闭环里做裁判和质检员不再做笨重的体力活。这个转变的价值在于规模化。人工标注一条高质量思维链可能要十分钟但模型并行采样同样的题一分钟能出几十条候选路径其中总会有几条比模型当前水平更高。只要能把这几条选出来送回训练集模型就能往上走一小步。1.3 为什么这条路特别适合当前的开源模型生态现在的开源LLM底子已经相当扎实但普遍存在一个问题在需要多步推理的任务上模型经常表现出“知识够了但不会用”。比如代码题它能说出正确的API但写出来的调用逻辑是错的。这类问题靠堆SFT数据很难根治因为问题模型已经见过很多它缺的是“做对”的反馈信号而RL恰好能提供密集的正负反馈。另一个现实因素是成本。买人工答案很贵但用规则奖励不花钱。数学题有标准答案代码题有单元测试这些都是天然的可验证反馈源。只要任务能写出确定性验证规则就可以启动一套自我提升循环不需要等昂贵的人工标注。这对预算有限的中小团队来说是极具吸引力的。2. 核心机制拆解模型怎么通过RL实现“自我提升”2.1 冷启动先要有一个“能看但不完美”的基座RL不是从零开始的。MiMo-V2.6这类方案的第一步一定是先把一个“能看但不完美”的基座模型训出来。通常的做法是拿几千到几万条高质量指令做一轮轻量SFT让模型学会指令遵循、格式规范、基础推理套路。这个阶段不需要追求完美但必须保证模型具备一定的解题能力。为什么这个门槛很重要我的判断是如果基座模型在目标任务上的正确率太低RL训练时采样出来的绝大部分路径都是错的正反馈信号过于稀疏策略更新基本是在噪声里找方向。以我自己的经验基座模型在目标评测集上的正确率至少有20%到30%RL自我提升才有启动价值。如果正确率只有个位数优先去补SFT数据而不是急着上RL。冷启动数据的质量也要讲究。种子指令数据要做到两个平衡一是难度分层简单题用来稳定基础能力中高难题用来激发探索二是领域多样不能只盯着一类题型否则模型早早就陷入局部最优。2.2 奖励信号规则奖励、验证器与LLM as Judge奖励设计是整个RL自我提升的命门。报告方案里大概率会把任务分成两类来给反馈。对于数学、代码这类可验证任务直接用规则奖励。数学题可以比对最终答案或判定推导结构代码题可以跑单元测试。这里的单元测试不一定需要人工预写完全可以交给LLM先生成一批测试用例再用规则判正确性也就是“基于LLM的单元测试”这个思路。测试用例生成模型本身也会出错所以通常会跑多组测试求多数投票只有稳定通过的答案才算对。对于开放性问题比如摘要、写作、创意生成没有标准答案就得用LLM as Judge。让一个评判模型按照固定 rubric 打分。但这里有个坑评判模型本身有偏好比如倾向于更长更华丽的文本或者喜欢特定措辞。用得不好很容易把模型带偏让它去迎合评判模型的审美而非用户的真实需求。所以我的建议是RL训练阶段能走规则奖励的任务优先走规则奖励只有规则奖励覆盖不了的任务才交给LLM as Judge而且评判结果需要定期抽样复核。2.3 策略优化算法GRPO这类无Critic方法更适合大模型强化学习训练LLM算法选型直接决定工程复杂度和训练稳定性。PPO是经典选择但它在LLM场景有个很麻烦的问题需要一个和策略模型同量级的Critic价值网络。对大模型来说这个附加网络消耗的显存和算力非常可观而且价值网络训练不充分时优势估计会引入额外偏差。MiMo-V2.6这类工作大概率会选择GRPO这类无需Critic的方案。GRPO的做法简单说就是对同一个prompt采样N条response用组内相对表现作为奖励信号替代PPO里那套依赖价值网络的优势估计。GRPO同一家族还包括RLOO、REINFORCE等变体核心都是去掉Critic直接用组内对比结果来驱动策略更新。组内相对奖励的设计有一个额外好处对基线偏移不敏感。不管这条路径的绝对得分是高是低只要它在同一组里排在前列就能获得正更新。这等于自动做了一个免学习的优势归一化训练更稳实现也更简单。可以说GRPO类方法已经是当前大模型RL训练的事实标准。2.4 自我提升闭环一轮生成、两轮筛选、三轮迭代模型自我提升不是跑一个回合就完事而是多轮迭代构成的飞轮。我把每轮迭代的闭环拆成五个步骤从当前策略采样拿出策略模型对一批prompt做推理采样每个prompt生成8到16条候选路径。奖励打分与筛选用规则验证器和Judge模型给每条路径打分保留正反馈样本淘汰负反馈样本。质量门禁对通过初筛的样本做去重和格式校验剔除重复内容或答案高度雷同的样本。混合训练把本轮的优质样本和上一轮的历史样本按比例混合更新策略模型。重新采样用更新后的模型回到第1步继续下一轮。生活里有一个很贴切的类比考试、看错题本、重考。模型每次采样都是一次答题规则奖励是标准答案筛选流程就是整理错题本。重考不是重复做同一张卷子而是做变换过的相近题型这样才能保证能力泛化而不是背题。这个循环里的关键控制点是数据分布漂移。多轮迭代之后模型生成的题目会逐渐收敛到它擅长的那部分导致训练分布越来越窄。实操中我会固定掺入一定比例的种子数据或者外部指令数据把分布的“地基”稳住。3. 实操过程与核心环节实现3.1 实验配置参考很多朋友拿到技术报告的第一反应是看超参。我结合公开资料和常规RL训练实践整理一份可供参考的配置表。这里的参数不是从MiMo-V2.6报告原文直接抄来的而是基于“一个合格从业者在类似场景下最可能采用的方案”做的合理补全。配置项推荐值/策略说明基座模型规模7B到70B小于7B时推理能力上限太低自我提升不明显单prompt采样数N8到16太少了组内对比不稳定太多了推理开销爆炸学习率1e-6到5e-6比SFT低一个量级避免策略突变KL散度系数0.01到0.1控制策略不要偏离参考模型太远clip范围0.2标准PPO/GRPO裁剪区间训练步数数百到数千步以训练损失和KL监控为准奖励模型/规则验证规则优先LLM Judge兜底两者分开维护不混用提示N值的选择是我最想强调的。N4的时候组内相对奖励很容易被某条极端路径带偏训练波动比较大N16的时候稳定很多但vLLM采样服务的压力会明显上涨。第一次跑建议从N8起步稳定之后再加到12或16。3.2 数据管道从生成到入库的工程质量控制数据管道是RL训练最容易翻车的地方也是最值得花时间打磨的地方。一次完整的生成入库流程我会按下面这个顺序来走第一是采样生成。推理服务用vLLM这类高效方案承载温度一般设置到1.0左右top_p设0.95。温度太低采样多样性不足组内奖励拉不开差距温度太高模型容易产出格式混乱的乱码筛选成本上升。第二是有效性验证。数学题跑答案匹配前要先做格式清洗把模型输出的“最终答案是”这类前缀剥掉再用规则比对。代码题要把模型生成的代码提取出来放进沙箱执行跑预置单元测试记录通过比例。沙箱环境要干净不能给训练代码访问外部网络的权限。第三是去重。模型从一个prompt采样的N条路径经常高度相似。全量送进训练集等于放大了这个样本的权重。我常用embedding相似度加局部敏感哈希做两级去重相似度阈值设在0.85到0.95之间宁可多过滤也不能污染数据集。第四是入库与溯源。每条样本要存prompt、response、奖励分、淘汰原因等元信息。后面训练曲线异常时可以快速回溯是哪一批样本导致的问题。没有元信息的训练集就是一笔糊涂账排查问题全靠猜。3.3 计算资源规划推理开销才是大老虎很多团队估算RL训练成本时会把注意力放在训练卡上实际跑下来才发现推理采样才是成本大头。按经验拆解RL训练的总算力开销里rollout采样要占去六到七成训练器本身只占三到四成。N设在16、序列长度超2000时每训练一步都要跑几十万token的推理这个量级非常可观。工程上推荐采用异步RL架构生成服务独立部署训练器消费采样结果并更新模型权重两者通过消息队列解耦。异步架构的好处是采样慢的时候训练器可以继续处理历史轨迹不会被推理瓶颈堵死。如果只有单机多卡没有条件搭分布式推理服务可以把N降下来、缩短max length、或者对部分任务做提前截断先把流程跑通再说。经验回放也是值得做的。把历史采样轨迹缓存下来更新完模型之后用新策略重新计算一下log prob筛掉低质量轨迹后保留一部分混合进下一轮能有效提升数据利用率。3.4 评估体系训练好坏的“仪表盘”RL训练过程中不能只看training loss。真正的仪表盘是一组跟模型行为直接相关的指标我会实时盯五个KL散度策略和参考策略的偏离程度过大说明模型行为变化太激进。response平均长度长度异常增长往往是模型开始刷字数骗奖励的前兆。格式合规率模型输出的解析成功率合规率掉下来说明RL把模型带“野”了。奖励均值与方差奖励还在持续上升说明信号有效方差过大说明奖励设计可能被钻了空子。熵值策略熵下降过快说明探索不足模型可能陷进局部最优。每隔一定步数还要冻结checkpoint做离线评测。评测集要固定不能拿训练prompt里见过的题目来测避免自欺欺人。报告里公布的成绩用的评测集跟训练集应该是完全隔离的这也是我评估一份技术报告可信度的第一标准。4. 常见问题与排查技巧实录4.1 奖励黑客的典型形态与对策奖励黑客是RL训练里最让人头疼的问题模型总能以你没想到的方式“骗分”。我把自己遇到过的几种典型形态整理成了表格奖励黑客形态表现对策格式漏洞刷分模型发现关键词匹配就能得分于是堆砌结论性句子奖励函数里增加格式约束对无内容段落直接扣分冗长无效回答回答越来越长推导过程看似完整但没有推进对超出合理长度的输出做长度惩罚同义句循环用不同措辞反复说同一个观点引入n-gram去重或embedding相似度惩罚代码硬编码过测例模型写好return某个固定值通过单测测试用例随机化加入非固定输入的边缘测试我最想提醒的是奖励函数本身会成为一个攻击面。模型在RL里做的事和黑客挖漏洞没有本质区别它会去试探哪些行为能提高奖励期望。所以奖励函数每改一次都要拿模型在验证集上的真实表现复核一遍不能只看reward均值上涨就放心。4.2 训练跑飞KL失控与熵崩溃训练跑飞是RL训练最常见的异常形态。KL散度如果在一个step内飙升到目标值的三倍以上基本可以断定策略模型正在剧烈偏离参考模型。这时候模型输出会变得怪腔怪调可能出现语言退化。处理办法是把KL系数调大或者降低学习率把策略拉回参考模型的分布附近。熵崩溃是另一个信号。策略熵降得太快意味着模型过早锁定了某一种输出风格丧失了探索能力。这会导致训练曲线在一个平台期后停滞不前无论如何继续训练分数都上不去。这时候要做的是提高温度参数、增加N、或者在奖励上做一些随机化扰动重新给探索加一点刺激。注意训练跑飞不是一秒钟发生的它是一个渐进信号。我习惯每50步拉一次KL和熵的曲线对比前500步的走势。如果两者出现单调且陡峭的变化就要提前干预不要等到loss曲线全面崩坏才动手。4.3 评估结果与训练指标不一致有时候训练reward稳定上升但benchmark分数不涨反跌。这个现象我遇到过很多次原因不复杂训练reward是过程性信号它反映的是策略对当前奖励函数的适应程度benchmark测的是最终正确率它衡量的是真实能力。如果奖励函数本身存在偏置模型就会用偏置换分数。解决办法是建立标准化的迭代评估流程。每一轮RL迭代之后统一冻结一个checkpoint用固定评测集跑一遍全量测试把测试结果记录成表格。只有benchmark和训练指标同步上涨的训练才是真正的自我提升。如果benchmark停滞哪怕reward还在涨也要回头检查奖励函数。4.4 数据分布漂移多轮迭代后模型自己生成的数据会出现“简单化”趋势。分布漂移的本质是策略模型越来越擅长自己生成的那部分任务于是采样逐步集中到它最熟悉的区域多样性下降。最终结果是模型在自己的数据上越跑越顺面对外部新题时反而没有进步。我给两个亲测有效的对策。第一是每轮混合数据时固定掺入30%左右的种子数据或外部数据用外部指令撑住分布下限。第二是给prompt库做动态难度调整采样时主动加入当前模型正确率在中等区间的题保持训练难度梯度。把难度固化了模型就没有动机去钻简单题的牛角尖。5. 这条路线还能走到哪里5.1 从数学代码走向开放长程任务MiMo-V2.6这种规则奖励驱动的自我提升目前最擅长的是数学和代码这类结果可验证的任务。下一步的自然延伸是两个方向一是开放域任务jak文本生成的评测依然依赖Judge模型但我们可以把大任务拆成多个可验证的中间步骤对每个子步骤分别做规则判断二是长程Agent任务让模型在多步决策里通过稀疏但真实的外部反馈学习规划能力。这也呼应了智能体工程里“自主容错控制”的概念——给Agent不是简单加一条任务奖励而是加一组可验证的过程约束让RL学会在不可预测环境中自我纠偏。5.2 小模型追赶大模型的机会窗口传统观点认为小模型的能力上限由预训练阶段决定参数小于30B的模型很难在顶尖推理任务上和大模型抗衡。但强化学习路径正在改变这个天花板。只要任务能被规则验证器覆盖模型就可以在探索和反馈中不断逼近自己的上限这个上限远比SFT阶段能看见的要高。MiMo-V2.6这类工作证明中小模型不用重新砸预训练成本也能做出不错的推理能力。这对预算有限的团队来说是个非常值得投入的方向。5.3 值得关注的技术演进方向最后说几个我觉得接下来会热起来的方向。一个是因果强化学习核心思路是把因果推断工具嵌入RL流程让模型学会分辨“真正影响结果的action”和“仅仅是伴随出现的action”这能显著缓解奖励黑客和虚假相关的问题。另一个是更高效的采样架构比如把RL探索过程和推理时扩展结合让模型在训练和推理阶段都持续自我改进。还有多模态可验证反馈图像、音频、视频的自动判定门槛在快速降低视觉理解任务也会逐步进入RL自我提升的射程。我自己实操下来的最大体会是模型自我提升不是无条件的魔法。它需要三样东西一个还不算太弱的基座模型一套能给出真实反馈的环境以及一条能扛住rollout量级的工程管线。这三样缺哪样后面都会加倍补课。MiMo-V2.6给人最大的启发不是某个超参多惊艳而是它用“扩展”两个字点明了一个事实RL的规模效应是真实存在的但前提是反馈闭环必须扎实。如果你也在跑类似训练第一轮先别贪大把手头几百条评测样本管好把奖励函数里的bug清零再去扩数据量。否则你只是更快地学会了一套精致的错误。