本文译自小米 LLM-Core 团队的 MiMo-V2-Flash Technical Report1,2026 年 1 月 6 日提交 arXiv,1 月 8 日更新至 v2。原文 31 页,这里是全文翻译,覆盖摘要、§1 引言、§2 模型架构、§3 预训练、§4 后训练、§5 MTP 加速、§6 结论,以及附录 A(致谢)、附录 B(SWE-Bench 的 reward hacking)、附录 C(上下文管理)。附录 A 的 125 人贡献者名单按姓名排列,不逐条抄录,只译致谢正文。

摘要

我们推出 MiMo-V2-Flash,一个总参数 309B、激活参数 15B 的 Mixture-of-Experts(MoE)模型,目标是又快又强的推理与 agentic 能力。MiMo-V2-Flash 采用混合注意力架构,把 Sliding Window Attention(SWA)与全局注意力交错排列,滑动窗口为 128 token,混合比例为 5:1。模型用 Multi-Token Prediction(MTP)在 27 万亿 token 上预训练,原生上下文长度 32k,随后扩展到 256k。为了高效地 scale 后训练算力,MiMo-V2-Flash 引入了一种新的 Multi-Teacher On-Policy Distillation(MOPD)范式。在这个框架里,领域专精的教师模型(例如通过大规模强化学习训练得到)提供稠密的 token 级奖励,使学生模型能够完整掌握教师的专长。MiMo-V2-Flash 可与 DeepSeek-V3.2、Kimi-K2 这类顶级开源权重模型相抗衡,而总参数量分别只有它们的 $1/2$ 和 $1/3$。推理阶段,把 MTP 重新用作 speculative decoding 的 draft model,MiMo-V2-Flash 用三层 MTP 达到最高 3.6 的 acceptance length 和 $2.6\times$ 的解码加速。我们同时开源模型权重和三层 MTP 权重,以促进开放研究与社区协作。

Figure 1:MiMo-V2-Flash 的 benchmark 表现。七组柱状图分别是 SWE-Bench Verified(agentic 编码)、SWE-Bench Multilingual(多语言 agentic 编码)、Tau2-Bench(agentic 工具使用)、AIME25(数学)、GPQA-Diamond(科学知识)、HLE without Tool(学术推理)、Arena-Hard Creative Writing(通用能力),橙色斜纹柱为 MiMo-V2-Flash,其余灰色柱依次为 DeepSeek-V3.2、K2-Thinking、Claude Sonnet 4.5、GPT-5 (High)、Gemini 3.0 Pro
Figure 1:MiMo-V2-Flash 的 benchmark 表现。七组柱状图分别是 SWE-Bench Verified(agentic 编码)、SWE-Bench Multilingual(多语言 agentic 编码)、Tau2-Bench(agentic 工具使用)、AIME25(数学)、GPQA-Diamond(科学知识)、HLE without Tool(学术推理)、Arena-Hard Creative Writing(通用能力),橙色斜纹柱为 MiMo-V2-Flash,其余灰色柱依次为 DeepSeek-V3.2、K2-Thinking、Claude Sonnet 4.5、GPT-5 (High)、Gemini 3.0 Pro

1 引言

近期通往通用人工智能(AGI)的进展,越来越多地由两个前沿方向推动:高级推理链和自主 agentic 工作流,二者都建立在大规模强化学习(RL)之上。然而,构建可 scale 的推理模型和 agent 会撞上同一个关键瓶颈——长上下文建模必须同时做到又快又强。

在这项工作中,我们推出 MiMo-V2-Flash,一个高效且性价比高的大语言模型(LLM),具备强推理和强 agentic 表现。MiMo-V2-Flash 是一个 309B 参数的 MoE 模型,每 token 激活 15B。为缓解 full attention 的二次复杂度,MiMo-V2-Flash 采用混合注意力机制,把局部滑动窗口注意力和全局注意力交错排列。滑动窗口大小为 128 token,local:global 的混合比例是 5:1,在长上下文下带来接近 6 倍的 KV-cache 存储与注意力计算削减。借助可学习的 attention sink bias2,尽管滑动窗口尺寸和混合比例都相当激进,这个混合架构在长上下文场景下仍保持了很强的建模能力。MiMo-V2-Flash 还整合了 Multi-Token Prediction(MTP)来提升训练表现、加速推理解码。特别地,MTP 有很大潜力提升 RL 的 rollout 速度,而这有助于把 LLM 推向更高的智能水平。凭借轻量的稠密前馈网络(FFN)和滑动窗口注意力,我们的 MTP block 在实际部署中以很高的接受率带来了显著的解码加速。

MiMo-V2-Flash 的预训练配方大体沿用 MiMo-7B3,并做了若干增强。训练使用 FP8 混合精度,使 27T token 的大规模训练变得高效。模型先以原生 32K 上下文预训练,之后扩展到 256K。得到的预训练模型 MiMo-V2-Flash-Base 与 Kimi-K2-Base4、DeepSeek-V3.2-Exp-Base5 等领先开源 base 模型做了对比。MiMo-V2-Flash-Base 在通用 benchmark 上表现有竞争力,在偏推理的任务上超过同类模型。长上下文检索方面,我们的混合注意力架构在 32K 到 256K 的上下文长度上都达到接近 100% 的成功率。在极端长上下文推理 benchmark GSM-Infinite6 上,MiMo-V2-Flash 从 16K 扩到 128K 时性能衰减极小,表现稳健。

后训练阶段,我们专注于高效地 scale RL 算力,以提升推理和 agentic 能力。为此,MiMo-V2-Flash 引入了一种新的后训练范式,称为 Multi-Teacher On-Policy Distillation(MOPD)。这个框架通过三阶段流程同时解决学习效率低和能力不均衡两个问题:(1)通用的监督微调(SFT);(2)用专门的 RL/SFT 训练领域专精的教师模型;(3)MOPD,学生模型从两路互补信号中学习——来自跨多个领域训练的专精教师的稠密 token 级奖励,以及可验证的、基于结果的奖励。通过这种方式整合多样的专家知识,MiMo-V2-Flash 既掌握了各领域教师的峰值能力,又享受到稳定高效的学习动态。

MiMo-V2-Flash 在多数推理 benchmark 上达到了与 Kimi-K2-Thinking、DeepSeek-V3.2-Thinking 相当的水平。在 LongBench V2 和 MRCR 这类长上下文评测上,MiMo-V2-Flash 稳定超过体量更大的 full-attention 模型,印证了其混合 SWA 架构的稳健性。值得注意的是,模型在 SWE-Bench Verified 上取得 73.4%、在 SWE-Bench Multilingual 上取得 71.7%,使其成为软件工程任务上领先的开源模型。模型权重(含三层 MTP 权重)发布在 GitHub7

2 MiMo-V2-Flash 模型架构

2.1 整体架构

如 Figure 2 所示,MiMo-V2-Flash 沿用标准的 Transformer8 骨干,并用 MoE9 和混合注意力做了增强。MiMo-V2-Flash 主要由重复的 hybrid block 构成,每个 hybrid block 交错排列局部滑动窗口注意力(SWA)和全局注意力(GA)。它堆叠 $M = 8$ 个 hybrid block,每个由 $N = 5$ 个连续的 SWA block 后接一个 GA block 组成。唯一的例外是最开头的那个 Transformer block,它用全局注意力配稠密 FFN,以稳定早期的表示学习。MiMo-V2-Flash 使用的滑动窗口大小 $W$ 是 $128$。SWA block 和 GA block 都使用稀疏 MoE FFN。每个 MoE 层共有 256 个 expert,每 token 激活 8 个,没有 shared expert。

MiMo-V2-Flash 同时整合了 MTP10113 来提升模型表现(质量和效率两方面)。值得注意的是,MTP block 用的是稠密 FFN 而不是 MoE,用的是 SWA 而不是 GA,这让它作为 speculative decoding 的组件足够轻量。每个 MTP block 的参数量只有 0.33B。

Figure 2:MiMo-V2-Flash 模型架构示意。左侧是主干:$N\times$ 的 SWA block(RMSNorm + Sliding Window Attention + RMSNorm + Sparse MoE,带残差)与 $1\times$ 的 GA block(Global Attention + Sparse MoE)组成一个 hybrid block,重复 $M\times$,两端是 Embedding 和 LM Head。右侧是 $K\times$ 的 MTP block:两路 RMSNorm 拼接后过 Linear,再接 Sliding Window Attention 和 Dense FFN,共享 tied 的 Embedding 与 LM Head,依次预测 $x_{t+1}$、$x_{t+2}$、$x_{t+3}$
Figure 2:MiMo-V2-Flash 模型架构示意。左侧是主干:$N\times$ 的 SWA block(RMSNorm + Sliding Window Attention + RMSNorm + Sparse MoE,带残差)与 $1\times$ 的 GA block(Global Attention + Sparse MoE)组成一个 hybrid block,重复 $M\times$,两端是 Embedding 和 LM Head。右侧是 $K\times$ 的 MTP block:两路 RMSNorm 拼接后过 Linear,再接 Sliding Window Attention 和 Dense FFN,共享 tied 的 Embedding 与 LM Head,依次预测 $x_{t+1}$、$x_{t+2}$、$x_{t+3}$

Block 配置项 取值
Main Block 层数(总数/SWA/GA) $48 / 39 / 9$
Main Block SWA 注意力头(Q/KV) $64 / 8$
Main Block 滑动窗口大小 $128$
Main Block GA 注意力头(Q/KV) $64 / 4$
Main Block 每头维度(QK/V) $192 / 128$
Main Block expert 数(总数/激活) $256 / 8$
MTP Block SWA 注意力头(Q/KV) $64 / 8$
MTP Block 滑动窗口大小 $128$
MTP Block 每头维度(QK/V) $192 / 128$
MTP Block 参数量 $0.33$B

Table 1:MiMo-V2-Flash 的详细模型配置。

Table 1 汇总了 MiMo-V2-Flash 的详细配置。模型由 39 个 SWA 层和 9 个 GA 层组成。SWA 和 GA 都使用 Grouped-Query Attention(GQA)12。具体来说,SWA 有 64 个 query head 和 8 个 key-value head,GA 有 64 个 query head 和 4 个 key-value head。SWA 和 GA 的每头维度相同(query 和 key 是 192,value 是 128)。Rotary Positional Embedding(RoPE13)只施加在 query 和 key 的前 64 维上。遵循近期的最佳实践,我们采用了与 DeepSeek-V311 类似的 FP8 混合精度框架。具体地,我们对注意力的输出投影、以及 embedding 和输出头的参数保留 BF16 精度,对 MoE router 参数保持 FP32 精度。这套混合精度配置提升了数值稳定性,同时并未实质影响训练效率和显存占用。

2.2 混合滑动窗口注意力架构

滑动窗口注意力14把每个 token 的注意力范围限制在一个局部窗口内、而不是整条序列,从而大幅降低计算和内存复杂度。这自然催生了把滑动窗口注意力与全局注意力交错排列的混合注意力架构。不过,此前的工作表明,过于激进地使用 SWA——比如非常小的滑动窗口尺寸或很高的 SWA:GA 比例——会导致模型性能明显下降15,长上下文任务上尤为严重。最近,可学习的 attention sink bias 的引入,让模型可以在需要时给某些 token 分配很少甚至不分配注意力,这大幅增强了基于 SWA 的架构的建模容量2。虽然 attention sink 机制的确切理论依据仍是活跃的研究方向16,我们在实验中观察到,可学习的 attention sink bias 显著提升了混合 SWA 模型的表现,达到甚至超过了全 GA 层的 baseline。

在 MiMo-V2-Flash 中,我们的实现沿用 gpt-oss2 的设计:对每个注意力头,在 softmax 的分母上施加一个可学习的 attention sink bias $sink \in \mathbb{R}$。具体地,令单个头内 token $i$ 与 $j$ 之间的注意力 logits 为:

$$ a_{ij} = \frac{q_ik_j^\top}{\sqrt{d}}, $$

其中 $q_i$ 和 $k_j$ 分别表示 token $i$ 的 query 和 token $j$ 的 key,$d$ 是每头维度。注意力权重则由下式给出:

$$ s_{ij} = \frac{\exp \left( a_{ij} - m_i \right)}{\exp \left( sink - m_i \right) + \sum_{j'} \exp \left( a_{ij'} - m_i \right)}, $$ $$ m_i = \max \left( \max_j a_{ij}, \; sink \right). $$

最后,query $i$ 的注意力输出由各 value 的加权和得到:

$$ o_i = \sum_{j=1}^{n} s_{ij} v_j. $$

2.2.1 模型架构实验

为验证我们设计选择的有效性,我们在一个 32B 稠密模型上做了探索性的实证研究,其中 query–key 维度和 rotary embedding 配置与上面描述的保持一致。

模型 MMLU BBH TriviaQA GSM8K MATH CMMLU MBPP
All GA 57.3 54.7 53.2 34.2 9.5 50.3 54.7
Hybrid SWA($W = 128$,w/o sink) 54.9 52.4 52.8 36.9 8.9 - -
Hybrid SWA($W = 128$,w/ sink) 58.3 56.1 53.7 36.9 10.3 53.3 56.3
Hybrid SWA($W = 512$,w/ sink) 58.3 54.9 54.9 37.9 10.0 52.3 53.2

Table 2:不同注意力配置在通用 benchmark 上的结果。

模型 GSM-Infinite NoLiMa RULER-32k MRCR
All GA 12.3 49.7 89.4 32.5
Hybrid SWA($W = 128$,w/ sink) 17.3 51.2 89.4 34.4
Hybrid SWA($W = 512$,w/ sink) 17.2 38.5 84.7 19.6

Table 3:不同注意力配置在长上下文 benchmark 上的结果。

模型 AIME24/25 LiveCodebench GPQA-Diamond 平均
All GA 45.5 40.0 41.7 42.4
Hybrid SWA($W = 128$,w/ sink) 47.1 43.9 48.1 46.3

Table 4:不同注意力配置在复杂推理 benchmark 上的结果。

基线与 benchmark

我们在对比设定下评测四个模型架构变体,包括:全局注意力(All GA)的 baseline、一个 128 token 窗口但不带 attention sink bias 的混合 SWA 模型,以及两个带 attention sink bias、窗口大小分别为 128 和 512 的混合 SWA 模型。所有变体共享同一套训练流程:在 250B token 上以 8,192 序列长度预训练,再用额外 40B token 做长上下文扩展到 32,768,接着做长上下文 SFT 和带 chain-of-thought 监督的推理 SFT。我们在覆盖通用能力、长上下文理解、复杂推理的 benchmark 上评测各变体。通用领域的结果(Table 2)来自没做长上下文扩展的预训练 base 模型,在 MMLU17、BBH18、TriviaQA19、GSM8K20、MATH21、CMMLU22、MBPP23 上评测通用知识和推理。长上下文结果(Table 3)在 GSM-Infinite6、NoLiMa24、RULER-32k25 上评测长上下文扩展后的 base 模型,在 MRCR26 上评测长上下文 SFT 模型。对 GSM-Infinite 和 NoLiMa,我们构造了内部的 few-shot benchmark,以在受控的长上下文设定下评估 base 模型。复杂推理结果(Table 4)在 AIME24 和 2527、LiveCodeBench28、GPQA-Diamond29 上评测推理 SFT 模型。

下面列出我们的关键实证发现:

attention sink bias 的消融

如 Table 2 所示,混合 SWA($W = 128$,w/o sink)在各项通用 benchmark 上都有明显的性能下降,而引入 attention sink bias 后,性能相对全 GA baseline 稳定地恢复甚至提升。因此,在后续实验中我们默认施加 attention sink bias。

滑动窗口的尺寸

混合 SWA($W = 128$)和混合 SWA($W = 512$)在通用 benchmark 上看起来表现相近(Table 2)。然而,在长上下文扩展和长上下文 SFT 之后,混合 SWA($W = 128$)超过了全 GA baseline,而 SWA($W = 512$)则出现显著退化(Table 3)。

推理能力

如 Table 4 所示,混合 SWA($W = 128$)在多个高难推理 benchmark 上都超过全 GA baseline,在复杂推理能力上有明确提升。

2.2.2 总结与讨论

我们的实验显示,混合 SWA($W = 128$)不仅优于混合 SWA($W = 512$),还能超过全 GA baseline,这看起来可能有点反直觉。我们推测这来自更好的正则化与有效稀疏性两者的结合。更小的窗口迫使模型聚焦局部上下文,这构成一种归纳偏置,缓解了对虚假模式的过拟合。此外,更紧的窗口($W = 128$)逼着 SWA 去建模局部信息,把长程依赖交给全局注意力层,形成了更清晰的分工,学习也更准确高效。相反,更大的窗口($W = 512$)会模糊这个区分,使 SWA 自己也部分承担长程依赖,稀释了局部与全局信息之间的分离,导致次优的表现。

我们要强调,这些观察和发现都是实证的,来自我们特定的实验设定,包括模型规模、数据集和训练流程。尽管如此,我们希望这些观察能为「推理与 agentic AI 模型时代下的高效注意力架构」这场持续的讨论提供一个额外视角,并推动社区对高效架构做更多探究。

2.3 轻量级 Multi-Token Prediction(MTP)

2.3.1 为什么要用 MTP

此前的工作表明,MTP 是一个强力的训练目标,能提升训练效率和模型质量10113。除了这些训练层面的好处,我们更强调把 MTP 作为原生的 draft model 用于 self-speculative decoding,从而带来真实部署中的加速。下面我们从两个角度展开 MTP 如何加速推理:通用 LLM 解码加速,以及 RL 训练加速。

加速 LLM 解码

LLM 解码由于 arithmetic intensity 很低,本质上是 memory-bound 的。人们通常用 batch 级并行来提升 FFN 的 arithmetic intensity,但这对 注意力计算没有帮助,因为每个请求维护自己的 KV cache。相比之下,MTP 生成多个 draft token、再由主模型并行验证,同时抬高了 FFN 和注意力的 arithmetic intensity。这种做法在不增加 KV cache I/O 的前提下实现了 token 级并行。

加速 RL 训练

MTP 加速尤其适合 RL 训练——在 RL 里,rollout 阶段因为推理和解码的开销,一直是主要瓶颈。MTP 解决了 RL 训练中的两个关键难题:

  • 它让小 batch 的 RL 变得高效有效。当前的 RL 训练依赖大 batch 的 off-policy 算法来最大化吞吐30315。然而 on-policy 训练通常更稳定、更有效,可它的小 batch 会让 GPU 资源利用不足。MTP 通过 scale token 级并行而不是 batch size 来缓解这个限制,使小 batch 的 on-policy RL 训练更具可行性。
  • 它缓解了长尾 straggler 造成的 GPU 空转。随着 rollout 阶段推进,那些以很小 batch size(常常接近 1)处理长序列的长尾 straggler 会造成显著的 GPU 空转。在这种场景下,MTP 提升了注意力和 FFN 两者的计算效率,大幅降低整体延迟。

2.3.2 MiMo-V2-Flash 里的轻量 MTP 设计

在 MiMo-V2-Flash 中,MTP block 被刻意保持轻量,以防它自己变成新的推理瓶颈。我们用一个小的稠密 FFN 而不是 MoE 来限制参数量,并用 SWA 而不是全局注意力(GA)来降低 KV cache 和注意力计算的开销。预训练期间只挂一个 MTP head,以避免额外的训练开销。后训练时,把这个 head 复制 $K$ 份构成一个 $K$ 步的 MTP 模块,所有 head 联合训练做多步预测。每个 head 接收主模型的 hidden state 和 token embedding 作为输入,从而获得更丰富的预测信息。尽管设计轻量,MTP 模块依然非常有效,达到了很高的接受率。详细结果见 §5。

3 预训练

MiMo-V2-Flash 的预训练语料由 27 万亿 token 构成,取自多样的高质量来源,包括公开网页内容、书籍、学术论文、代码、数学以及更广义的 STEM 材料。我们的数据处理流水线大体沿用 MiMo-7B3,但刻意朝有长程依赖的数据倾斜。特别地,我们侧重长篇网页文档,以及经过精心筛选的代码语料——如 repository 级代码、pull request、issue 和 commit 历史——以强化模型捕捉长程上下文关系、进行复杂多步推理的能力。

3.1 数据调度

MiMo-V2-Flash 的预训练被组织为三个依次进行的阶段:

  • Stage 1(预训练,0 – 22T)。模型在多样的高质量通用语料上训练,上下文长度 32K token,用以建立扎实的基础语言能力。
  • Stage 2(中期训练,22 – 26T)。我们调整数据配比,上采样以代码为中心的数据,并加入约 5% 的合成推理数据,以进一步增强逻辑推理和程序合成能力。
  • Stage 3(上下文扩展,26 – 27T)。沿用 Stage 2 的数据分布,我们把模型的上下文窗口扩展到 256K token,并上采样带长程依赖的数据,从而更有效地建模长上下文和长程推理。

3.2 超参数

模型超参数

我们把 MiMo-V2-Flash 配置为 48 个 Transformer 层,包含 39 个滑动窗口注意力层和 9 个全局注意力层。hidden dimension 设为 4096。除第一层外的所有层都配备稀疏 MoE。每个 MoE 层包含 256 个 routed expert,每 token 激活 8 个,每个 expert 的 intermediate hidden dimension 为 2048。稠密层 FFN 的 intermediate hidden dimension 设为 16384。所有可学习参数随机初始化,标准差为 0.006。预训练期间模型使用单个 MTP 层。总体上,MiMo-V2-Flash 有 309B 总参数,其中 15B 是激活的。

训练超参数

我们使用 AdamW 优化器,$\beta_1=0.9$、$\beta_2=0.95$,weight decay 为 0.1。梯度裁剪的最大范数为 1.0。学习率调度分两个阶段。在 Stage 1,学习率先在前 50B token 上从 0 线性 warm-up 到 $3.2 \times 10^{-4}$,随后以 $3.2 \times 10^{-4}$ 恒定运行 12T token,最后在 10T token 上按 cosine 衰减到 $1.0 \times 10^{-4}$。Stage 2 从 $1.0 \times 10^{-4}$ 开始,在 4T token 上按 cosine 衰减到 $3.0 \times 10^{-5}$。batch size 在最初的 500B token 上线性 warm-up 到 2,048,此后两个阶段的剩余部分保持不变。辅助损失方面,MoE 的 sequence auxiliary loss 系数在所有阶段都设为 $1.0 \times 10^{-5}$。expert bias 的更新系数在 Stage 1 和 Stage 2 设为 0.001。MTP 的 loss 权重在 Stage 1 设为 0.3,在 Stage 2 和 3 设为 0.1。

长上下文扩展

在 Stage 1,我们把预训练序列长度设为 32,768,GA 的 RoPE base frequency 为 640,000、SWA 的为 10,000。在 Stage 3,序列长度扩展到 262,144,GA 的 RoPE base frequency 调整为 5,000,000。Stage 3 的学习率按 cosine 调度从 $3.0 \times 10^{-5}$ 衰减到 $1.0 \times 10^{-5}$,batch size 固定为 256。expert bias 的更新系数在 Stage 3 降到 $1.0 \times 10^{-5}$。

3.3 评测

3.3.1 评测设置

我们在一系列 benchmark 上评测 MiMo-V2-Flash-Base,覆盖多种能力:(1)通用语言理解与推理,包括 BBH18、MMLU17、MMLU-Redux32、MMLU-Pro33、DROP34、ARC35、HellaSwag36、WinoGrande37、TriviaQA19、GPQA-Diamond29、SuperGPQA38、SimpleQA39。(2)数学推理:GSM8K20、MATH21、AIME27(2024 和 2025)。(3)编码:HumanEval+40、MBPP+40、CRUXEval41、MultiPL-E42、BigCodeBench43、LiveCodeBench-v628、SWE-Bench44(few-shot Agentless Repair45)。(4)中文理解:C-Eval46、CMMLU22、C-SimpleQA47。(5)多语言理解:GlobalMMLU48、INCLUDE49。(6)长上下文:NIAH-Multi25、GSM-Infinite6(5-shot,Hard Ops-{2,4,6,8,10})。

3.3.2 评测结果

Benchmark # Shots MiMo-V2-Flash Base Kimi-K2 Base DeepSeek-V3.1 Base DeepSeek-V3.2 Exp Base
激活参数 - 15B 32B 37B 37B
总参数 - 309B 1043B 671B 671B
通用
BBH 3-shot 88.5 88.7 88.2 88.7
MMLU 5-shot 86.7 87.8 87.4 87.8
MMLU-Redux 5-shot 90.6 90.2 90.0 90.4
MMLU-Pro 5-shot 73.2 69.2 58.8 62.1
DROP 3-shot 84.7 83.6 86.3 86.6
ARC-Challenge 25-shot 95.9 96.2 95.6 95.5
HellaSwag 10-shot 88.5 94.6 89.2 89.4
WinoGrande 5-shot 83.8 85.3 85.9 85.6
TriviaQA 5-shot 80.3 85.1 83.5 83.9
GPQA-Diamond 5-shot 55.1 48.1 51.0 52.0
SuperGPQA 5-shot 41.1 44.7 42.3 43.6
SimpleQA 5-shot 20.6 35.3 26.3 27.0
数学
GSM8K 8-shot 92.3 92.1 91.4 91.1
MATH 4-shot 71.0 70.2 62.6 62.5
AIME 24&25 2-shot 35.3 31.6 21.6 24.8
代码
HumanEval+ 1-shot 70.7 84.8 64.6 67.7
MBPP+ 3-shot 71.4 73.8 72.2 69.8
CRUXEval-I 1-shot 67.5 74.0 62.1 63.9
CRUXEval-O 1-shot 79.1 83.5 76.4 74.9
MultiPL-E HumanEval 0-shot 59.5 60.5 45.9 45.7
MultiPL-E MBPP 0-shot 56.7 58.8 52.5 50.6
BigCodeBench 0-shot 70.1 61.7 63.0 62.9
LiveCodeBench v6 1-shot 30.8 26.3 24.8 24.9
SWE-Bench(AgentLess Repair) 3-shot 30.8 28.2 24.8 9.4*
中文
C-Eval 5-shot 87.9 92.5 90.0 91.0
CMMLU 5-shot 87.4 90.9 88.8 88.9
C-SimpleQA 5-shot 61.5 77.6 70.9 68.0
多语言
GlobalMMLU 5-shot 76.6 80.7 81.9 82.0
INCLUDE 5-shot 71.4 75.3 77.2 77.2

Table 5:MiMo-V2-Flash 与其他开源 base 模型的对比。星号(*)表示该模型没有遵循 few-shot 示例的格式。

Table 5 给出 MiMo-V2-Flash-Base 与领先开源 base 模型411 的全面对比。MiMo-V2-Flash-Base 在多数 benchmark 上表现有竞争力,并在推理任务(MMLU-Pro、GPQA-Diamond、AIME)上稳定超过同类。在 SWE-Bench 上,它以不到三分之一的参数量甚至超过了体量大得多的 Kimi-K2-Base,凸显了我们的方法在真实代码 agent 任务上的实力。不过,受参数量的限制,我们观察到 MiMo-V2-Flash 相比更大的模型知识容量偏低,这一点在 SimpleQA 上有体现。

Benchmark 长度 MiMo-V2-Flash Base Kimi-K2 Base DeepSeek-V3.1 Base DeepSeek-V3.2 Exp Base
激活参数 - 15B 32B 37B 37B
总参数 - 309B 1043B 671B 671B
NIAH-Multi 32K 99.3 99.8 99.7 85.6*
NIAH-Multi 64K 99.9 100.0 98.6 85.9*
NIAH-Multi 128K 98.6 99.5 97.2 94.3*
NIAH-Multi 256K 96.7 - - -
GSM-Infinite Hard 16K 37.7 34.6 41.5 50.4
GSM-Infinite Hard 32K 33.7 26.1 38.8 45.2
GSM-Infinite Hard 64K 31.5 16.0 34.7 32.6
GSM-Infinite Hard 128K 29.0 8.8 28.7 25.7

Table 6:MiMo-V2-Flash 与其他开源 base 模型的长上下文表现。星号(*)表示该模型可能没能遵循 prompt。所有 baseline 模型的最大模型长度都短于 256K。

Table 6 展示了各模型的长上下文能力。长上下文检索方面,我们的模型架构从 32K 到 256K 都达到接近 100% 的成功率。在极限压力的长上下文推理 benchmark GSM-Infinite 上,MiMo-V2-Flash 同样表现强劲,从 16K 到 128K 的性能衰减极小。相比之下,DeepSeek-V3.2-Exp 这个稀疏注意力 LLM 在 32K 以内拿到最高分,但在 64K 和 128K 上大幅退化,这说明它在带噪输入的长上下文推理上可能存在内在劣势。这些结果有力地证明了我们的混合 SWA 架构、朴素的 32K 预训练和上下文扩展训练的有效性与可扩展性。

4 后训练

4.1 Multi-Teacher On-Policy Distillation(MOPD):一种新的后训练范式

Figure 3:MiMo-V2-Flash 后训练各阶段总览。Stage 1 是 SFT Data 训出 SFT Model;Stage 2 用 Search Agent、Code Agent、Math、Reasoning、Safety 等方向分别训出 Domain Teachers;Stage 3 是 MOPD——SFT Model 做 Student Rollout 逐 token 生成,Domain Teachers 经 Prefill 给出 token-level reward(与学生分布做 Reverse KL),ORM 另给 seq-level reward,蒸馏出的学生可以 Replace 回 SFT Model 和 Domain Teachers 形成迭代
Figure 3:MiMo-V2-Flash 后训练各阶段总览。Stage 1 是 SFT Data 训出 SFT Model;Stage 2 用 Search Agent、Code Agent、Math、Reasoning、Safety 等方向分别训出 Domain Teachers;Stage 3 是 MOPD——SFT Model 做 Student Rollout 逐 token 生成,Domain Teachers 经 Prefill 给出 token-level reward(与学生分布做 Reverse KL),ORM 另给 seq-level reward,蒸馏出的学生可以 Replace 回 SFT Model 和 Domain Teachers 形成迭代

现代语言模型越来越依赖大量后训练来提升智能和能力。然而,当前的后训练流水线面临几个根本性挑战:能力不均衡,即提升一项技能会导致其他技能退化(「跷跷板」效应);以及学习效率低,即在整合多个专精模型的知识时,现有方法无法充分利用训练信号。

我们提出 Multi-Teacher On-Policy Distillation(MOPD),一个统一的后训练范式,通过三阶段框架来解决这些挑战,如 Figure 3 所示:

Stage 1:监督微调(SFT)

我们在高质量的指令—回答对上做监督学习,建立基础的指令跟随能力,让模型能够理解并执行跨多个领域的用户请求。

Stage 2:领域专精训练

我们通过在聚焦任务上独立做 RL 优化,训练出一批领域专精的教师模型,覆盖 agentic 能力(搜索、编码、通用工具使用)和非 agentic 任务(数学推理、通用推理、安全对齐)。每个教师通过带领域专属奖励信号的定向优化,在各自领域取得优异表现。

Stage 3:Multi-Teacher On-Policy Distillation

我们不是去合并模型参数、也不是用专家模型生成静态的离线数据集,而是把多教师知识整合表述为一个 on-policy 强化学习过程。学生模型从自己不断演化的分布中采样,通过 KL 散度奖励从领域专属教师那里接收 token 级监督505152,从而在不付出传统 trade-off 的前提下把各项专精能力组合起来(Table 7)。

Benchmark 学生(MOPD 前) 最佳教师 学生(MOPD 后) $\Delta$(学生−教师)
AIME 2025 89.3 93.9 (RL) 94.1 $+$0.2
HMMT Feb. 2025 76.9 82.6 (RL) 84.4 $+$1.8
LiveCodeBench 77.5 82.6 (RL) 83.2 $+$0.6
MMLU-Pro 84.7 84.7 (Self) 84.9 $+$0.2
GPQA-Diamond 84.9 84.9 (Self) 84.3 $-$0.6
HLE(w/o Tool) 21.2 21.2 (Self) 22.1 $+$0.9
Arena-Hard(Hard Prompt) 50.0 50.0 (Self) 54.1 $+$4.1
Arena-Hard(Creative Writing) 90.1 90.1 (Self) 86.2 $-$3.9
SWE-Bench Verified 67.8 74.2 (RL) 73.4 $-$0.8
Tau2-Bench 75.9 79.6 (RL) 80.3 $+$0.7
Tau2-Bench(Telecom) 92.7 95.0 (RL) 95.3 $+$0.3
BrowseComp 42.5 51.7 (SFT) 45.4 $-$6.3

Table 7:MOPD 的 benchmark 结果。最佳教师的模型类型已标注,包括 RL、SFT,以及学生模型自己(Self)。

这个统一框架相比传统后训练方法有几个关键优势:

  • 有效且高效。与常常需要在能力之间做取舍的参数合并或顺序训练不同,MOPD 在所有领域上都保住了最强教师的峰值表现。此外,用教师 logits 提供的稠密 token 级奖励做 on-policy 蒸馏,保证了稳定的 credit assignment 和快速收敛。由于是从自己的分布中学习,学生避免了 off-policy 方法在静态数据集上训练时常见的 exposure bias 和分布不匹配问题。
  • 模块化且可扩展。教师模型的选择非常灵活:可以是能力很强的、从 RL 得来的专精模型,可以是另一个 SFT 模型,甚至可以是学生模型自己。这种解耦的设计使得引入新教师无需重构整条流水线。此外,该框架与现有的 outcome reward model(ORM)无缝配合,对复杂 agentic 任务尤其有利——那些任务如果要各自搭建独立的训练流水线会相当麻烦。
  • 迭代协同进化。MOPD 天然支持教师—学生的协同进化循环。蒸馏出的学生模型可以重新进入专精 RL 阶段,产出更强的教师;后者又为下一代学生提供更高质量的监督,形成一个自我强化的改进循环,使能力得以持续 scale。

在接下来的几个小节里,我们逐一详述 MOPD 范式的各个阶段:先是监督微调(§4.2),然后是面向 agentic 与非 agentic 任务的专精 RL(§4.3),最后是多教师蒸馏机制的技术表述(§4.4)。

4.2 监督微调(SFT)

SFT 阶段是我们后训练流水线的基础,它把 base 模型变成一个有用的助手,能够跟随指令并在各类任务上有效回应。这一阶段对于激活模型在预训练中获得的潜在能力、把输出对齐到期望的格式和风格至关重要。

为此,我们整理了数百万条训练样本,横跨通用对话、推理、编码和 agent 任务等多个领域。这些样本同时覆盖 thinking 和 non-thinking 两种模式,回答由我们内部的领域专精模型 checkpoint 生成。这种多样的训练配比确保了模型在预期用例上的能力被全面激活。

通过前期实验,我们识别出 MoE SFT 训练的一个关键稳定性指标:梯度为零的参数数量(num-zeros)。这个指标为训练不稳定提供了早期预警信号:num-zeros 上升意味着 expert 之间的负载均衡在恶化,而 num-zeros 下降则说明模型正在显著过拟合训练数据。因此,在整个训练过程中保持 num-zeros 稳定是 SFT 成功的关键。更进一步,这种稳定性对于保证后续 RL 阶段的稳健性和收敛性也至关重要。

我们的实验揭示,num-zeros 的稳定性关键取决于两个超参数:expert bias 的更新率,以及 AdamW 优化器里的 $\epsilon$ 参数。基于这些发现,我们按如下超参数配置训练:采用 cosine 衰减的学习率调度,从 $5.0 \times 10^{-5}$ 降到 $5.0 \times 10^{-6}$,batch size 为 128,AdamW 的 $\epsilon$ 设为 $1.0 \times 10^{-8}$。MoE 的 expert bias 更新率设为 $1.0 \times 10^{-4}$,sequence auxiliary loss 系数设为 $1.0 \times 10^{-6}$。

4.3 Scaling 强化学习(RL)

强化学习把模型能力推到单靠监督微调无法达到的地方。我们根据任务是否涉及 agentic 行为采用不同的 RL 策略,并同时 scale 非 agentic 和 agentic 的 RL 训练,以在多样领域上最大化表现。

4.3.1 非 agentic 的 RL 训练

非 agentic 的 RL 训练聚焦于提升模型在单轮任务上的表现——在这类任务里模型一次生成完整回答,不需要交互式反馈或多步执行。首要目标是提升模型在可验证领域(如数学、编码、逻辑)的推理准确率,同时在开放式对话中把输出对齐到有帮助且安全的方向。

我们生成奖励信号的方式随任务特性而变。对于结果可验证的领域,我们采用混合验证系统,把程序化工具与 LLM judge 结合起来,对照整理好的问题—答案对自动判定正确性。对于「有帮助」「安全」这类主观品质,我们实现了一套基于 rubric 的框架,由一个先进的 LLM judge 依照详细的 rubric 和参考答案来评估回答,产出细粒度的奖励信号,引导模型走向期望的行为。

4.3.2 agentic 的 RL 训练

Agent 类型 任务数量 环境 Prompt 来源
Code Agent $90\textrm{K}$ 真实 真实
Code Agent $30\textrm{K}$ 真实 合成
Search Agent $150\textrm{K}$ 真实 合成
General Agent $50\textrm{K}$ 合成 合成

Table 8:我们在不同 agent 类型上的训练数据构成汇总。我们同时利用真实世界数据和合成生成的数据,构造出多样的任务集合,用于在各类环境中训练 agent。

非 agentic 的 RL 聚焦单轮推理与生成,而 agentic RL 训练模型在交互式、多轮的环境中运作,这需要规划、执行动作,并根据反馈调整。我们沿两个关键维度 scale agentic RL:环境多样性和算力资源。

Scaling agentic 环境多样性

我们构建了一套多样的 agentic 训练环境,横跨代码调试、终端操作、web 开发和通用工具使用(Table 8)。每个环境针对不同的能力,但共享同一个基本要求:多步推理与执行。下面我们详述这些 agentic 环境的细节。

Code Agent

我们在源自真实 GitHub issue 的大规模代码 agentic 任务上训练,模型在一个 agentic 循环里读写文件、执行命令,并依据可验证的单元测试获得奖励。我们的关键洞察是:持续 scale 可用任务量会带来代码智能的持续提升。为了在超过 100,000 个代码任务上做高效 RL 训练,我们开发了两个基础设施组件。第一,我们搭建了一条自动化的环境搭建流水线,从 repository 快照中拉起开发环境并打包成容器镜像,在 8 种编程语言上达到 70% 的成功率,背后是一个运行超过 10,000 个并发 pod 的大规模 Kubernetes 集群。第二,我们实现了一个轻量的 agent scaffold,可以无缝对接 Kubernetes、Docker 或本地后端,只暴露三个原子工具(bashstr_replacefinish),它们与执行后端的交互完全通过 shell 命令完成。这个设计消掉了基于 server 的工具实现,并采用一个不预设工作流的极简 system prompt,让模型在训练中自己发现最佳实践。

Terminal Agent

除 GitHub issue 之外,我们用来自 Stack Overflow 和 Stack Exchange 的任务强化基于终端的问题求解能力。我们挑选需要较高技术专业度的材料,把它们转化为计算任务,并配上相应的 query、Dockerfile 和测试用例。在验证环境能装起来、并按难度和可靠性做过筛选之后,我们得到约 30,000 条带已验证执行环境的 query。再基于通过率做一轮过滤,剔除正确性判定不可靠、或者复杂度不足以支撑有效 RL 训练的任务。

Web Development Agent

为了提升 web 开发的代码生成能力,我们构建了一个以真实世界为基础的合成数据集,并配一个多模态 verifier。我们收集高质量的用户手写网页,用 Playwright 执行生成的代码以获得渲染后的视频,再用一个多模态视觉判别器只保留高质量样本——比起静态截图,基于视频的评估能减少视觉幻觉。我们从精选页面反向推导出用户 query 作为种子 prompt,合成大规模 RL 数据,覆盖八个与真实使用场景高度贴合的 web 类别。我们基于视觉的 verifier 从录制的视频里给 rollout 执行结果打分,联合评估视觉质量、功能正确性和可执行性,确保奖励同时反映外观和行为。

General Agent

我们开发了两种通用 agentic 能力。我们的搜索 agent 采用一个提供三个核心工具(search、open、find)的 scaffold 做自主网页探索。我们从种子实体出发,通过递归的事实图扩展来构造 query,难度随关系链深度和细节模糊化程度上升,从而能自动生成带可验证答案的高难搜索问题。我们的 function-calling agent 在合成的应用环境上训练,其自定义工具集是通过生成 tool-call 图构造出来的,图中既有显式的数据依赖(直接的输入—输出关系),也有隐式的逻辑依赖(对隐藏系统状态的推理),因此同时要求数据传递和状态推断两种能力。

Scaling agentic 算力

在前述多样的 agentic 环境(Table 8)上训练,我们发现 scale agentic RL 算力不仅提升代码 agentic 表现,还能有效泛化到其他任务类型。Figure 4 展示了我们代码 agent 的 RL 训练曲线,模型在约 120K 个环境上做了 on-policy 的 rollout 与更新。这次 scaling 显著改进了 SFT base 模型在 SWE-Bench-Verified 和 SWE-Bench-Multilingual 上的表现。此外,Figure 5 表明大规模代码 agentic RL 训练能有效泛化到其他 agentic 任务,以及数学、代码和通用推理 benchmark,这说明 agentic 训练培养出了广泛可迁移的问题求解能力。

Figure 4:代码 agentic RL 的 scaling 曲线。横轴是 on-policy RL rollout 中消耗的交互式环境总数(0 到 120k),纵轴是 resolved 率。左图 SWE-Verified 从约 66% 震荡上升到约 74%,右图 SWE-Multilingual 从约 56% 震荡上升到约 71%
Figure 4:代码 agentic RL 的 scaling 曲线。横轴是 on-policy RL rollout 中消耗的交互式环境总数(0 到 120k),纵轴是 resolved 率。左图 SWE-Verified 从约 66% 震荡上升到约 74%,右图 SWE-Multilingual 从约 56% 震荡上升到约 71%

Figure 5:代码 agentic RL 训练向其他任务领域的泛化。六个子图分别是 Tau-2 Bench、AIME 2025、GPQA-Diamond、LiveCodeBench、Arena-Hard (Hard Prompt)、HMMT Feb. 2025,横轴同为训练过的环境数(到约 100k),六条曲线在震荡中均呈上升趋势
Figure 5:代码 agentic RL 训练向其他任务领域的泛化。六个子图分别是 Tau-2 Bench、AIME 2025、GPQA-Diamond、LiveCodeBench、Arena-Hard (Hard Prompt)、HMMT Feb. 2025,横轴同为训练过的环境数(到约 100k),六条曲线在震荡中均呈上升趋势

4.4 MOPD 的技术表述

在通过 SFT 打好基础、并用领域专属 RL 训出专精教师之后,我们现在把「将这些专精能力整合进一个统一学生模型」的多教师 on-policy 蒸馏机制形式化。

具体地,我们把多教师蒸馏表述为一个 on-policy 强化学习目标。令 $\pi_\theta$ 表示在训练引擎中被优化的目标学生策略,$\mu_\theta$ 表示推理引擎中采用的学生采样策略,$\pi_{\text{domain}_x}$ 表示针对 prompt $x$ 所属领域的专精教师策略,其中 $x$ 从分布 $\mathcal{D}$ 中采样。令 $\text{sg}[\cdot]$ 表示 stop-gradient 算子。学生与教师之间的 reverse KL 散度损失定义为:

$$ \mathcal{L}_\text{reverse-KL}(\theta) = -\mathbb{E}_{x\sim\mathcal{D}, y_{t}\sim \pi_\theta(\cdot|x, y_{其梯度为:

$$ \nabla_{\theta}\mathcal{L}_\text{reverse-KL}(\theta) = -\mathbb{E}_{x\sim\mathcal{D}, y_{t}\sim \pi_\theta(\cdot|x, y_{沿用 IcePop53 的做法,我们施加 training-inference importance sampling,并丢弃那些呈现巨大差异的 token。随后定义 MOPD 的 surrogate loss 为:

$$ \mathcal{L}_{\text{MOPD}}(\theta) = -\mathbb{E}_{x \sim\mathcal{D}, y \sim \mu_{\theta}(\cdot|x)} \left[\frac{1}{|y|}\sum_{t=1}^{|y|} w_{t} \hat{A}_{\text{MOPD},t}\log\pi_{\theta}(y_{t}|x, y_{其中

$$ w_{t}(\theta)= \begin{cases} \text{sg}\left[\frac{\pi_\theta(y_{t}|x, y_{默认情况下,我们把 MOPD 的 advantage 与其他类型的 advantage 组合起来,比如用 outcome reward model(ORM)算出来的那些,包括 GRPO54。令 $\hat{A}_{\text{ORM}}$ 表示由 ORM 计算的 advantage,最终的 advantage 由下式给出:

$$ \hat{A}_{\text{MOPD},t} = \text{sg}\left[\log\frac{ \pi_{\text{domain}_x}(y_{t}|x, y_{
Figure 6 左:AIME 2025 上不同后训练方法的对比,横轴 training step(0–50),纵轴准确率。ORM 一路停在 85–87%,MOPD w/o ORM 和 MOPD 都从约 86% 升到 93–94%,逼近灰色虚线标出的 teacher model 水平(约 94%)
Figure 6 左:AIME 2025 上不同后训练方法的对比,横轴 training step(0–50),纵轴准确率。ORM 一路停在 85–87%,MOPD w/o ORM 和 MOPD 都从约 86% 升到 93–94%,逼近灰色虚线标出的 teacher model 水平(约 94%)

Figure 6 右:LiveCodeBench 上的同一组对比。ORM 一路停在 72–75%,MOPD w/o ORM 升到约 81% 后回落,MOPD 持续升到约 84%,超过灰色虚线标出的 teacher model 水平(约 82.6%)
Figure 6 右:LiveCodeBench 上的同一组对比。ORM 一路停在 72–75%,MOPD w/o ORM 升到约 81% 后回落,MOPD 持续升到约 84%,超过灰色虚线标出的 teacher model 水平(约 82.6%)

Figure 6 展示了 MOPD 相比传统后训练方法的有效性。在数学推理(AIME 2025)和编码(LiveCodeBench)benchmark 上,MOPD 成功地保住并组合了来自多个教师的专精能力,在多数领域达到或超过了最强教师的水平。

4.5 评测

4.5.1 评测设置

我们在以下 benchmark 上评测 MiMo-V2-Flash:MMLU-Pro33、GPQA-Diamond29、HLE 纯文本55、AIME 202527、LiveCodeBench(2024.08–2025.04)28、HMMT Feb. 202556、Arena-Hard57、LongBench V258、MRCR26({2,4,8}-needles,最长 128K)、SWE-Bench Verified59、SWE-Bench Multilingual60、Terminal-Bench、BrowseComp61、$\tau^{2}$-Bench62

4.5.2 评测结果

我们在 Table 9 中展示评测结果。MiMo-V2-Flash 在多数推理 benchmark 上达到了与 Kimi-K2-Thinking、DeepSeek-V3.2-Thinking 相当的表现。模型也保持了有竞争力的通用写作能力,能在开放式任务上生成高质量回答。在长上下文评测中,我们的模型超过了 Kimi-K2-Thinking——一个体量大得多的 full global attention LLM——凸显了我们混合 SWA 架构的长上下文能力之强。

值得注意的是,MiMo-V2-Flash 在 SWE-Bench Verified 上取得 73.4%,超过所有开源竞品,逼近 GPT-5-High 的水平。在 SWE-Bench Multilingual 上,我们的模型解决了 71.7% 的 issue,使其成为软件工程任务上能力最强的开源 LLM。这些结果凸显了我们超大规模 agentic RL 训练的有效性。在 Terminal Bench 上,模型也交出了有竞争力的分数。

在搜索 agent 的评测中,MiMo-V2-Flash 在 BrowseComp 上得 45.4 分,配合附录 C 所述的上下文管理方法可进一步提升到 58.3。对于 $\tau^{2}$-Bench 上的通用工具使用,我们用 DeepSeek-V3.2 作为 user agent,各类别得分为 95.3(Telecom)、79.5(Retail)、66.0(Airline)。

综合来看,这些结果验证了在 MOPD 后训练范式下超大规模 RL 训练的有效性,也说明模型在真实世界的编码、推理和 agentic 工作流上有很强的潜力。

Benchmark MiMo-V2 Flash Kimi-K2 Thinking DeepSeek-V3.2 Thinking Gemini-3.0 Pro Claude Sonnet 4.5 GPT-5 High
推理
MMLU-Pro 84.9 84.6 85.0 90.1 88.2 87.5
GPQA-Diamond 84.3 84.5 82.4 91.9 83.4 85.7
HLE(no tools) 22.1 23.9 25.1 37.5 13.7 26.3
AIME 2025 94.1 94.5 93.1 95.0 87.0 94.6
HMMT Feb. 2025 84.4 89.4 92.5 97.5 79.2 88.3
LiveCodeBench-v6 85.1 83.1 83.3 90.7 64.0 84.5
通用写作
Arena-Hard(Hard Prompt) 54.1 71.9 53.4 72.6 63.3 71.9
Arena-Hard(Creative Writing) 86.2 80.1 88.8 93.6 76.7 92.2
长上下文
LongBench V2 60.6 48.1 58.4 65.6 61.8 -
MRCR 45.7 44.2 55.5 89.7 55.4 -
代码 Agent
SWE-Bench Verified 73.4 71.3 73.1 76.2 77.2 74.9
SWE-Bench Multilingual 71.7 61.1 70.2 - 68.0 55.3
Terminal-Bench Hard 30.5 30.6 35.4 39.0 33.3 30.5
Terminal Bench 2.0 38.5 35.7 46.4 54.2 42.8 35.2
通用 Agent
BrowseComp 45.4 - 51.4 - 24.1 54.9
BrowseComp(w/ Context Manage) 58.3 60.2 67.6 59.2 - -
$\tau^{2}$-Bench 80.3 74.3 80.3 85.4 84.7 80.2

Table 9:MiMo-V2-Flash 与开源/闭源模型的对比。

4.6 RL 基础设施

我们的 RL(以及 MOPD)基础设施用 SGLang63 作为推理引擎、Megatron-LM64 作为训练引擎。训练和推理都采用 FP8。为了实现稳定、高效、灵活的 RL 训练,我们实现了三个扩展模块:Rollout Routing Replay65(§4.6.1)、Data Scheduler(§4.6.2),以及 Tool Manager 配 Toolbox(§4.6.3)。

4.6.1 用 Rollout Routing Replay(R3)稳定训练

MoE 模型会因为数值精度问题,在 rollout 和训练之间出现 expert 路由不一致。我们提出 Rollout Routing Replay(R3)65,用 rollout 时相同的 routed expert 来做 RL 训练,并通过优化数据类型和通信 overlap 把开销压到可忽略。对于多轮 agent 训练,我们在 rollout 时采用 request 级的 prefix cache。这个 cache 存下前几轮的 KVCache 和 MoE routed expert,让同一个 request 的后续生成步骤可以复用。与当前推理引擎里常用的 radix cache 不同,我们的 request 级 prefix cache 避免了重新 prefill,也不做跨 request 的输出 cache 共享,从而保证了 routed expert 的采样一致性。

4.6.2 Data Scheduler

对于 MiMo-V2-Flash,我们扩展了 Seamless Rollout Engine3,并实现了一个 Data Scheduler,用来无缝调度细粒度的序列而不是 micro-batch,以解决分布式 MoE 训练中的 GPU 空转。在动态采样中,随着序列返回做奖励计算,我们参考历史通过率,并在必要时把新的 prompt 分配给 GPU 做负载均衡。我们集成了 partial rollout6667 来把过长的轨迹切分到多个 step,同时限制 staleness 以及每个 batch 中 partial 样本的占比。通过对 partial rollout 采用 staleness-aware 的截断式 importance sampling,我们在不牺牲模型质量的前提下显著加速了 RL 训练。

Data Scheduler 支持按数据源分别配置(采样配额、调度优先级、长度上限、温度),并对通过率做拟合,按配置好的比例接受样本。基于优先级的调度会把不同时间特征的数据源之间的奖励计算和推理 overlap 起来,从而保证高 GPU 利用率。

4.6.3 Toolbox 与 Tool Manager

我们实现了 Toolbox 和 Tool Manager,用来解决 RL agent 训练中的全局资源争用和局部低效。这两个模块借助 Ray68 做高效调度。Toolbox 充当集中式的资源分配器,为并发任务中的各种工具施加资源配额和 QPS 限制。它采用具备容错能力的 Ray actor pool,消除了冷启动延迟。Tool Manager 与 rollout 引擎集成,并与 Toolbox 协同,通过环境预热和序列级的异步奖励计算来加速训练。它通过超时恢复和实时监控来维持训练稳定性。通过把工具管理与 rollout 工作流解耦,Toolbox 将任务专属逻辑与系统级策略隔离开,在不损害稳定性的前提下实现了模块化的可扩展性。

5 MTP 加速

5.1 MTP 的 acceptance length

我们分析模型的预测不确定性——用 next token cross-entropy 度量——与 Multi-Token Prediction(MTP)模块效率之间的关系。如 Figure 7 所示,我们在多样的 benchmark 上评测 3 层 MTP 的平均 acceptance length,范围从代码生成(如 WebDev、LiveCodeBench)到复杂推理任务(如 AIME25、MMLU Pro)。

Figure 7:不同数据集上 next token cross-entropy 与平均 accept length 的相关性。六个灰点从左上到右下依次是 WebDev(熵约 0.05,accept length 约 3.62)、AIME25、SciCode、LiveCodeBench、GPQA、MMLU Pro(熵约 0.27,accept length 约 2.95),橙色虚线是拟合曲线 $y = 4(1 - 0.58x^{0.58})$,$R^2 = 0.995$
Figure 7:不同数据集上 next token cross-entropy 与平均 accept length 的相关性。六个灰点从左上到右下依次是 WebDev(熵约 0.05,accept length 约 3.62)、AIME25、SciCode、LiveCodeBench、GPQA、MMLU Pro(熵约 0.27,accept length 约 2.95),橙色虚线是拟合曲线 $y = 4(1 - 0.58x^{0.58})$,$R^2 = 0.995$

结果揭示出一个很强的反相关:熵更低的上下文(比如 WebDev)允许显著更长的接受序列,达到约 3.6 个 token。反过来,内在不确定性更高的任务(如 MMLU Pro)由于预测分歧更大,acceptance length 更短。这一行为被一个对数变换的拟合($y = 4(1 - 0.58x^{0.58})$)精确刻画,$R^2$ 达到 $0.995$,说明 next token cross-entropy 是决定 MTP 吞吐的主要因素。

5.2 MTP 的推理加速

我们测量 MiMo-V2-Flash 配 3 层 MTP 在不同 batch size(每节点)和 acceptance length 下的解码加速,输入长度 16K、输出长度 1K。Table 10 的结果表明,MTP 在不增加硬件成本的前提下稳定优于 baseline。值得注意的是,加速比随 acceptance length 线性增长。在不同 batch size 下 MTP 展现出不同的加速幅度,这取决于相应的计算与 I/O 需求以及 kernel 效率。实践中,研究者和工程师应当依据硬件的 roofline 模型同时调节 batch size 和 MTP 层数,以优化速度—成本的取舍。

Batch Size w/o MTP Acceptance Length 2.8 3.0 3.2 3.4 3.6 3.8
32 1.00$\times$ 1.86$\times$ 1.99$\times$ 2.12$\times$ 2.25$\times$ 2.39$\times$ 2.52$\times$
48 1.00$\times$ 1.82$\times$ 1.95$\times$ 2.08$\times$ 2.21$\times$ 2.34$\times$ 2.47$\times$
64 1.00$\times$ 1.97$\times$ 2.11$\times$ 2.25$\times$ 2.39$\times$ 2.53$\times$ 2.67$\times$
96 1.00$\times$ 1.99$\times$ 2.13$\times$ 2.28$\times$ 2.42$\times$ 2.56$\times$ 2.70$\times$
128 1.00$\times$ 1.82$\times$ 1.94$\times$ 2.07$\times$ 2.20$\times$ 2.33$\times$ 2.46$\times$

Table 10:MiMo-V2-Flash 配 3 层 MTP 与不配 MTP 的解码加速对比,横跨不同 batch size(每节点)和 acceptance length,输入长度 16K、输出长度 1K。

译注:原文这张表的表头是两层——第一层把后六列合并成「Acceptance Length」,第二层才是 2.8/3.0/…/3.8。Markdown 表只有一层表头,所以这里把「Acceptance Length」并进了第一个数据列的表头,后面五列继续沿用同一含义。数字逐字未改。

6 结论、局限与未来工作

MiMo-V2-Flash 凭借混合 Sliding Window Attention 架构、轻量的 Multi-Token Prediction,以及 MOPD 后训练范式,取得了很强的推理与 agentic 能力,同时具备很快的推理速度。凭这些长处,MiMo-V2-Flash 可与 DeepSeek-V3.2、Kimi-K2 这类更大的开源权重模型相抗衡。不过,与最强的闭源权重模型之间仍有明显差距,我们希望通过扩大模型规模和训练算力来缩小它。此外,我们目前的架构探索仍是初步的,对设计取舍的分析有限。未来的工作将聚焦于设计更稳健、更高效、面向 agentic 的模型架构。我们还计划在 MOPD 中扩大教师与学生迭代协同进化的算力,以充分释放它的潜力。

附录 A 贡献与致谢

我们要向所有贡献者表达诚挚的感谢,感谢他们宝贵的支持和付出,包括小米数据平台、CloudML、NGK、MiChat、Mify、MiKS 和 LLM-Plus 团队,以及那些未在本文中明确列出的同事。每个角色内部的作者按名字首字母顺序排列。

译注:原文此处列出 57 位 Core Contributors 和 68 位 Contributors 的姓名,另标注 Fuli Luo 为通讯作者。名单不在译文中逐条抄录,需要时见原文附录 A。

附录 B SWE-Bench 的 reward hacking

与 SWE-Bench 社区近期的发现一致,我们同样发现官方 SWE-Bench 镜像里有个 bug——ground truth commit 没有被正确删除。在 RL 训练期间,这可能导致 reward hacking 和评测虚高,模型倾向于通过偷看未来的 commit 来拿奖励,如 Figure 8 所示——我们通过统计 rollout 轨迹中一组关键词(比如 git log ---all)的出现次数,来量化这类 git hacking 尝试。为修复这一点,我们更新到最新的 SWE-Bench 镜像做评测。对于我们自建的训练镜像,我们也遵循官方 SWE-Bench 针对 git hacking 的处理方案,并反复确认我们的模型没有表现出任何 reward hacking。

Figure 8:在未经处理的镜像上,我们对 Qwen3-32B 做的实验在 RL 训练中出现 reward hacking 的趋势。红线是 Git Hack Attempts 数(左轴),前 250 步接近 0,之后急剧上升到 400 以上;绿线是 Resolved 率(右轴),在 52%–66% 之间震荡上行
Figure 8:在未经处理的镜像上,我们对 Qwen3-32B 做的实验在 RL 训练中出现 reward hacking 的趋势。红线是 Git Hack Attempts 数(左轴),前 250 步接近 0,之后急剧上升到 400 以上;绿线是 Resolved 率(右轴),在 52%–66% 之间震荡上行

附录 C 上下文管理

微调和强化学习优化的是模型参数 $\theta$,而上下文管理则是有策略地精修 $P(y \mid C,\theta)$ 中的条件上下文 $C$。我们的做法针对两个互补的挑战。在上下文增强方面,我们采用一种受 Unix 启发的抽象:工具、文档和数据库统一以文件形式暴露,使模型能通过 Bash 命令来取信息——这利用了它原生的代码生成能力。在上下文整合方面,我们通过施加激进的记忆压缩来对抗「Lost in the Middle」现象。当上下文占用超过某个阈值(低至 30%)时,系统就提示模型做摘要,把完整历史归档到一个可检索的 memory 文件,并用摘要替换活跃上下文。经验上,这在 Deep Research 任务上带来 5–10% 的准确率提升。我们的结果与 DeepSeek V3 的发现一致——丢弃 tool-call 历史优于保留策略;复现他们激进的 reset 协议后,我们在可比的 benchmark 上取得 58.3。核心洞察是反直觉的:更少的上下文,只要管理得当,反而能产生更聚焦、更准确的生成。


  1. MiMo-V2-Flash Technical Report, https://arxiv.org/abs/2601.02780 ↩︎

  2. gpt-oss-120b & gpt-oss-20b Model Card, https://arxiv.org/abs/2508.10925 ↩︎ ↩︎ ↩︎

  3. MiMo: Unlocking the Reasoning Potential of Language Model — From Pretraining to Posttraining, https://arxiv.org/abs/2505.07608 ↩︎ ↩︎ ↩︎ ↩︎ ↩︎

  4. Kimi K2: Open Agentic Intelligence, https://arxiv.org/abs/2507.20534 ↩︎ ↩︎

  5. DeepSeek-V3.2: Pushing the Frontier of Open Large Language Models, https://arxiv.org/abs/2512.02556 ↩︎ ↩︎

  6. GSM-Infinite: How Do Your LLMs Behave over Infinitely Increasing Context Length and Reasoning Complexity?, https://arxiv.org/abs/2502.05252 ↩︎ ↩︎ ↩︎

  7. MiMo-V2-Flash 模型权重, https://github.com/XiaomiMiMo/MiMo-V2-Flash ↩︎

  8. Attention Is All You Need, NeurIPS 2017 ↩︎

  9. Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer, https://arxiv.org/abs/1701.06538 ↩︎

  10. Better & Faster Large Language Models via Multi-Token Prediction, ICML 2024 ↩︎ ↩︎

  11. DeepSeek-V3 Technical Report, https://arxiv.org/abs/2412.19437 ↩︎ ↩︎ ↩︎ ↩︎

  12. GQA: Training Generalized Multi-Query Transformer Models from Multi-Head Checkpoints, https://arxiv.org/abs/2305.13245 ↩︎

  13. RoFormer: Enhanced Transformer with Rotary Position Embedding, Neurocomputing 568:127063, 2024 ↩︎

  14. Longformer: The Long-Document Transformer, https://arxiv.org/abs/2004.05150 ↩︎

  15. Gemma 3 Technical Report, https://arxiv.org/abs/2503.19786 ↩︎

  16. Efficient Streaming Language Models with Attention Sinks, ICLR 2024 ↩︎

  17. Measuring Massive Multitask Language Understanding, https://arxiv.org/abs/2009.03300 ↩︎ ↩︎

  18. Challenging BIG-Bench Tasks and Whether Chain-of-Thought Can Solve Them, https://arxiv.org/abs/2210.09261 ↩︎ ↩︎

  19. TriviaQA: A Large Scale Distantly Supervised Challenge Dataset for Reading Comprehension, https://aclanthology.org/P17-1147 ↩︎ ↩︎

  20. Training Verifiers to Solve Math Word Problems, https://arxiv.org/abs/2110.14168 ↩︎ ↩︎

  21. Measuring Mathematical Problem Solving With the MATH Dataset, https://arxiv.org/abs/2103.03874 ↩︎ ↩︎

  22. CMMLU: Measuring Massive Multitask Language Understanding in Chinese, https://arxiv.org/abs/2306.09212 ↩︎ ↩︎

  23. Program Synthesis with Large Language Models, https://arxiv.org/abs/2108.07732 ↩︎

  24. NoLiMa: Long-Context Evaluation Beyond Literal Matching, https://arxiv.org/abs/2502.05167 ↩︎

  25. RULER: What’s the Real Context Size of Your Long-Context Language Models?, https://arxiv.org/abs/2404.06654 ↩︎ ↩︎

  26. Michelangelo: Long Context Evaluations Beyond Haystacks via Latent Structure Queries, https://arxiv.org/abs/2409.12640 ↩︎ ↩︎

  27. AIME, American Invitational Mathematics Examination, https://artofproblemsolving.com/wiki/index.php/AIME_Problems_and_Solutions ↩︎ ↩︎ ↩︎

  28. LiveCodeBench: Holistic and Contamination Free Evaluation of Large Language Models for Code, https://arxiv.org/abs/2403.07974 ↩︎ ↩︎ ↩︎

  29. GPQA: A Graduate-Level Google-Proof Q&A Benchmark, https://arxiv.org/abs/2311.12022 ↩︎ ↩︎ ↩︎

  30. Proximal Policy Optimization Algorithms, https://arxiv.org/abs/1707.06347 ↩︎

  31. Group Sequence Policy Optimization, https://arxiv.org/abs/2507.18071 ↩︎

  32. Are We Done with MMLU?, https://arxiv.org/abs/2406.04127 ↩︎

  33. MMLU-Pro: A More Robust and Challenging Multi-Task Language Understanding Benchmark, https://arxiv.org/abs/2406.01574 ↩︎ ↩︎

  34. DROP: A Reading Comprehension Benchmark Requiring Discrete Reasoning Over Paragraphs, NAACL-HLT 2019 ↩︎

  35. Think you have Solved Question Answering? Try ARC, the AI2 Reasoning Challenge, https://arxiv.org/abs/1803.05457 ↩︎

  36. HellaSwag: Can a Machine Really Finish Your Sentence?, ACL 2019 ↩︎

  37. WinoGrande: An Adversarial Winograd Schema Challenge at Scale, 2019 ↩︎

  38. SuperGPQA: Scaling LLM Evaluation across 285 Graduate Disciplines, https://arxiv.org/abs/2502.14739 ↩︎

  39. Introducing SimpleQA, https://openai.com/index/introducing-simpleqa/ ↩︎

  40. Is Your Code Generated by ChatGPT Really Correct? Rigorous Evaluation of Large Language Models for Code Generation, https://arxiv.org/abs/2305.01210 ↩︎ ↩︎

  41. CRUXEval: A Benchmark for Code Reasoning, Understanding and Execution, https://arxiv.org/abs/2401.03065 ↩︎

  42. MultiPL-E: A Scalable and Extensible Approach to Benchmarking Neural Code Generation, https://arxiv.org/abs/2208.08227 ↩︎

  43. BigCodeBench: Benchmarking Code Generation with Diverse Function Calls and Complex Instructions, ICLR 2025 ↩︎

  44. SWE-bench: Can Language Models Resolve Real-World GitHub Issues?, https://arxiv.org/abs/2310.06770 ↩︎

  45. Agentless: Demystifying LLM-based Software Engineering Agents, https://arxiv.org/abs/2407.01489 ↩︎

  46. C-Eval: A Multi-Level Multi-Discipline Chinese Evaluation Suite for Foundation Models, https://arxiv.org/abs/2305.08322 ↩︎

  47. Chinese SimpleQA: A Chinese Factuality Evaluation for Large Language Models, https://arxiv.org/abs/2411.07140 ↩︎

  48. Global MMLU: Understanding and Addressing Cultural and Linguistic Biases in Multilingual Evaluation, https://arxiv.org/abs/2412.03304 ↩︎

  49. INCLUDE: Evaluating Multilingual Language Understanding with Regional Knowledge, https://arxiv.org/abs/2411.19799 ↩︎

  50. MiniLLM: Knowledge Distillation of Large Language Models, ICLR 2024 ↩︎

  51. On-Policy Distillation of Language Models: Learning from Self-Generated Mistakes, https://arxiv.org/abs/2306.13649 ↩︎

  52. On-Policy Distillation, Thinking Machines Lab, https://thinkingmachines.ai/blog/on-policy-distillation ↩︎

  53. Every Step Evolves: Scaling Reinforcement Learning for Trillion-Scale Thinking Model, https://arxiv.org/abs/2510.18855 ↩︎

  54. DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models, https://arxiv.org/abs/2402.03300 ↩︎

  55. Humanity’s Last Exam, https://arxiv.org/abs/2501.14249 ↩︎

  56. MathArena: Evaluating LLMs on Uncontaminated Math Competitions, NeurIPS 2025 Datasets and Benchmarks ↩︎

  57. From Crowdsourced Data to High-Quality Benchmarks: Arena-Hard and BenchBuilder Pipeline, https://arxiv.org/abs/2406.11939 ↩︎

  58. LongBench v2: Towards Deeper Understanding and Reasoning on Realistic Long-Context Multitasks, ACL 2025 ↩︎

  59. Introducing SWE-bench Verified, https://openai.com/index/introducing-swe-bench-verified/ ↩︎

  60. SWE-smith: Scaling Data for Software Engineering Agents, https://arxiv.org/abs/2504.21798 ↩︎

  61. BrowseComp: A Simple Yet Challenging Benchmark for Browsing Agents, https://arxiv.org/abs/2504.12516 ↩︎

  62. τ²-Bench: Evaluating Conversational Agents in a Dual-Control Environment, https://arxiv.org/abs/2506.07982 ↩︎

  63. SGLang: Efficient Execution of Structured Language Model Programs, https://arxiv.org/abs/2312.07104 ↩︎

  64. Megatron-LM: Training Multi-Billion Parameter Language Models Using Model Parallelism, https://arxiv.org/abs/1909.08053 ↩︎

  65. Stabilizing MoE Reinforcement Learning by Aligning Training and Inference Routers, https://arxiv.org/abs/2510.11370 ↩︎ ↩︎

  66. Kimi k1.5: Scaling Reinforcement Learning with LLMs, https://arxiv.org/abs/2501.12599 ↩︎

  67. AReaL: A Large-Scale Asynchronous Reinforcement Learning System for Language Reasoning, https://arxiv.org/abs/2505.24298 ↩︎

  68. Ray: A Distributed Framework for Emerging AI Applications, OSDI 2018 ↩︎