小米开源MiMo-V2-Flash:用1/2参数挑战DeepSeek-V3,代码Agent能力登顶开源榜首
小米LLM团队开源了MiMo-V2-Flash,一个仅309B总参数(15B激活)的MoE模型,在代码Agent任务上达到73.4%(SWE-Bench Verified),超越所有开源模型。更令人惊讶的是,它仅用DeepSeek-V3.2一半的参数,就实现了接近的推理和Agent能力。核心创新在于128-token极致激进的滑动窗口注意力架构,以及首创的Multi-Teacher On-Policy Distillation (MOPD)后训练范式,通过让学生模型从多个领域专家教师中在线蒸馏,完美继承各领域巅峰能力。
论文标题:MiMo-V2-Flash Technical Report
来源:arXiv预印本
链接:https://github.com/XiaomiMiMo/MiMo-V2-Flash
PS: 整理了LLM、量化投资、机器学习方向的学习资料,关注同名公众号 「 AI极客熊 」 即刻免费解锁
文章核心
研究背景
通往AGI的道路上,高级推理链和自主Agent工作流正成为关键前沿,这些能力都建立在大规模强化学习之上。然而,构建可扩展的推理器和Agent面临一个共同的关键瓶颈:长上下文建模必须同时做到快速和强大。传统全局注意力机制的二次复杂度使得长上下文处理成本高昂,而过于激进的滑动窗口注意力又会导致性能大幅下降。此外,现有后训练方法在提升某一领域能力时,往往会导致其他领域能力退化(“跷跷板效应”),且无法充分利用多个专家模型的知识。MiMo-V2-Flash正是为解决这些核心挑战而设计的高效推理与Agent模型。
研究问题
- 极致滑动窗口的性能挑战:先前研究表明,过小的滑动窗口(如128 tokens)或过高的SWA:GA比例会导致模型性能严重下降,尤其在长上下文任务中
- 后训练的能力失衡:传统后训练方法在提升某一领域能力时会导致其他领域退化,且学习效率低下,无法充分整合多个专家模型的知识
- RL训练的效率瓶颈:Agent的RL训练中,rollout阶段的推理解码成本成为主要瓶颈,小batch的on-policy训练难以充分利用GPU资源
主要贡献
- 极致高效的混合滑动窗口架构:采用128-token滑动窗口和5:1的SWA:GA混合比例,配合可学习的attention sink bias,在长上下文场景下KV-cache存储和注意力计算降低近6倍,同时保持甚至超越全局注意力的建模能力。在GSM-Infinite极端长上下文推理基准上,从16K到128K性能衰减极小
- 首创MOPD后训练范式:提出Multi-Teacher On-Policy Distillation,通过让学生模型从自身分布采样,接收来自多个领域专家教师的token级密集奖励和outcome奖励的联合监督。这种on-policy蒸馏避免了分布不匹配,使学生模型完美继承各领域教师的巅峰能力,无需参数合并或离线数据集
- 轻量级MTP加速推理与RL:设计轻量级Multi-Token Prediction模块(每层仅0.33B参数),采用dense FFN和滑动窗口注意力,实现高达3.6的平均接受长度和2.6倍解码加速。特别适用于RL训练的rollout加速,解决小batch on-policy训练的GPU利用率问题
方法论精要
混合滑动窗口注意力架构
MiMo-V2-Flash的核心架构采用Transformer骨干,增强了MoE和混合注意力机制。模型堆叠8个混合块(Hybrid Block),每个混合块包含5个连续的滑动窗口注意力(SWA)层和1个全局注意力(GA)层,形成5:1的混合比例。唯一例外是第一个Transformer块使用全局注意力配合dense FFN以稳定早期表示学习。
滑动窗口设计:滑动窗口大小设置为极致激进的128 tokens,远小于常见的512或更大窗口。这种设计迫使SWA层专注于局部信息建模,而将长程依赖委托给GA层,形成清晰的劳动分工。研究团队通过32B dense模型的消融实验发现,128-token窗口在通用基准、长上下文和复杂推理任务上均优于512-token窗口。
Attention Sink Bias:关键创新在于引入可学习的attention sink bias。在标准softmax注意力中,每个头学习一个可训练的bias参数sink ∈ R \text{sink} \in \mathbb{R}sink∈R,应用于softmax分母:
s i j = exp ( a i j − m i ) exp ( sink − m i ) + ∑ j ′ exp ( a i j ′ − m i ) s_{ij} = \frac{\exp(a_{ij} - m_i)}{\exp(\text{sink} - m_i) + \sum_{j'} \exp(a_{ij'} - m_i)}sij=exp(sink−mi)+∑j′exp(aij′−mi)exp(aij−mi)
其中m i = max ( max j a i j , sink ) m_i = \max(\max_j a_{ij}, \text{sink})mi=max(maxjaij,sink)。这使得模型可以在不需要关注任何token时,将注意力分配给"sink",显著增强了SWA架构的建模容量。消融实验显示,无attention sink的128-window SWA在MMLU等基准上性能下降2-3个百分点,而加入sink后性能反超全局注意力基线。
架构配置:模型共48层(39层SWA + 9层GA),采用Grouped-Query Attention (GQA)。SWA层使用64个query头和8个KV头,GA层使用64个query头和4个KV头。每个头的维度为192(QK)和128(V)。RoPE位置编码部分应用于前64维。除第一层外,所有层使用sparse MoE FFN,每个MoE层包含256个专家,每token激活8个,无共享专家。总参数309B,激活参数15B。
轻量级Multi-Token Prediction
MTP模块被设计为轻量级以避免成为推理瓶颈。每个MTP块使用小型dense FFN(而非MoE)和滑动窗口注意力(而非全局注意力),每块仅0.33B参数。
训练策略:预训练阶段仅附加单个MTP头以避免额外训练开销。后训练阶段,该头被复制K次形成K步MTP模块,所有头联合训练进行多步预测。每个头接收主模型隐藏状态和token embedding作为输入,提供更丰富的预测信息。
加速机制:MTP通过提升FFN和attention的算术强度实现加速,生成多个draft tokens供主模型并行验证。这种token级并行性无需增加KV cache I/O。实验显示,3层MTP在不同数据集上平均接受长度达2.8-3.6 tokens,在16K输入1K输出场景下实现1.82-2.70倍解码加速。
RL加速优势:MTP特别适合RL训练加速。RL rollout阶段是主要瓶颈,且常面临小batch场景(尤其是长尾stragglers)。MTP通过token级并行缓解GPU利用率不足,使小batch on-policy RL训练更加实用。此外,MTP减轻了长尾stragglers导致的GPU空闲问题。
预训练策略
MiMo-V2-Flash在27T tokens上进行预训练,采用三阶段策略:
Stage 1(0-22T):在多样化高质量通用语料上训练,使用32K上下文长度。数据包括公开网页、书籍、学术论文、代码、数学和STEM材料,特别强调长程依赖数据,如长文档和仓库级代码、PR、issues、commit历史。
Stage 2(22-26T):Mid-training阶段,上采样代码数据并加入约5%合成推理数据,增强逻辑推理和程序合成能力。
Stage 3(26-27T):上下文扩展至256K tokens,上采样长程依赖数据。RoPE base频率从640K(GA)调整至5M。
训练配置:采用FP8混精度训练,AdamW优化器(β 1 = 0.9 , β 2 = 0.95 \beta_1=0.9, \beta_2=0.95β1=0.9,β2=0.95,weight decay 0.1)。学习率Stage 1从0线性warm-up至3.2 × 1 0 − 4 3.2 \times 10^{-4}3.2×10−4(50B tokens),保持12T tokens,然后cosine衰减至1.0 × 1 0 − 4 1.0 \times 10^{-4}1.0×10−4(10T tokens)。Batch size从500B tokens线性warm-up至2048并保持。MTP loss权重Stage 1为0.3,Stage 2/3为0.1。
Multi-Teacher On-Policy Distillation (MOPD)
MOPD是MiMo-V2-Flash的核心后训练创新,通过三阶段框架解决能力失衡和学习低效问题:
Stage 1 - SFT:在数百万高质量指令-响应对上进行监督微调,覆盖通用对话、推理、编码和Agent任务,激活预训练获得的潜在能力。关键发现是MoE SFT训练稳定性依赖于"零梯度参数数量"(num-zeros)指标,通过调整expert bias更新率(1.0 × 1 0 − 4 1.0 \times 10^{-4}1.0×10−4)和AdamWϵ \epsilonϵ(1.0 × 1 0 − 8 1.0 \times 10^{-8}1.0×10−8)维持稳定。
Stage 2 - 领域专家训练:通过独立RL优化训练一套领域专家教师模型,包括:
- Non-agentic任务:数学推理、通用推理、安全对齐。使用混合验证系统(程序化工具+LLM judge)生成奖励信号
- Agentic任务:
- Code Agent:在超过12万个真实GitHub issues上训练,开发自动化环境设置流水线(70%成功率,支持8种语言),采用轻量级agent scaffold仅暴露3个原子工具(bash, str_replace, finish)
- Terminal Agent:从Stack Overflow/Exchange筛选约3万个需要高级技术专长的任务
- Web Dev Agent:构建真实世界合成数据集,使用Playwright执行生成代码并通过多模态视觉判别器评分
- Search Agent:通过递归事实图扩展生成查询,提供3个核心工具(search, open, find)
- General Agent:合成应用环境,构建基于显式数据依赖和隐式逻辑依赖的工具调用图
实验显示,代码Agent RL训练在12万环境上扩展,SWE-Bench Verified从60%提升至75%,且泛化到数学、通用推理等其他任务。
Stage 3 - MOPD:将多教师知识整合形式化为on-policy强化学习目标。学生策略π θ \pi_\thetaπθ从自身分布采样,接收两类信号:
- 领域专家教师π domain x \pi^{\text{domain}_x}πdomainx的token级密集奖励(通过reverse KL divergence)
- Outcome Reward Model (ORM)的验证性结果奖励
技术上,MOPD的surrogate loss定义为:
L MOPD ( θ ) = − E x ∼ D , y ∼ μ θ ( ⋅ ∣ x ) [ 1 ∣ y ∣ ∑ t = 1 ∣ y ∣ w t A ^ MOPD , t log π θ ( y t ∣ x , y < t ) ] \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_{<t}) \right]LMOPD(θ)=−Ex∼D,y∼μθ(⋅∣x)[∣y∣1∑t=1∣y∣wtA^MOPD,tlogπθ(yt∣x,y<t)]
其中w t w_twt是importance sampling权重(带截断),A ^ MOPD , t \hat{A}_{\text{MOPD},t}A^MOPD,t结合教师KL奖励和ORM优势:
A ^ MOPD , t = sg [ log π domain x ( y t ∣ x , y < t ) π θ ( y t ∣ x , y < t ) ] + α A ^ ORM \hat{A}_{\text{MOPD},t} = \text{sg}\left[\log \frac{\pi^{\text{domain}_x}(y_t|x, y_{<t})}{\pi_\theta(y_t|x, y_{<t})}\right] + \alpha \hat{A}_{\text{ORM}}A^MOPD,t=sg[logπθ(yt∣x,y<t)πdomainx(yt∣x,y<t)]+αA^ORM
优势:MOPD实现了学生模型在所有领域匹配或超越最强教师的性能(表7)。例如,在AIME 2025上从89.3%提升至94.1%(教师93.9%),在HLE上从21.2%提升至22.8%(教师自身)。相比传统参数合并或离线蒸馏,MOPD避免了分布不匹配,提供密集token级信号,学习高效且稳定。
基础设施创新
Rollout Routing Replay (R3):解决MoE模型在rollout和training阶段因数值精度导致的expert routing不一致问题。R3在训练时重放rollout阶段路由的相同专家,开销可忽略。对多轮Agent训练,采用request级前缀缓存存储KVCache和MoE routed experts。
Data Scheduler:扩展Seamless Rollout Engine,调度细粒度序列而非micro-batches,解决分布式MoE训练的GPU空闲问题。支持partial rollout将超长轨迹分段,采用staleness-aware truncated importance sampling显著加速训练。
Toolbox & Tool Manager:基于Ray的工具资源管理系统。Toolbox作为中心化资源分配器,强制执行资源配额和QPS限制。Tool Manager协调环境预热和序列级异步奖励计算,通过超时恢复和实时监控维持训练稳定性。
实验洞察
基座模型性能
MiMo-V2-Flash-Base在多数基准上与Kimi-K2-Base(1043B总参数)和DeepSeek-V3.2-Exp-Base(671B总参数)竞争,在推理任务上表现尤为突出:
- 推理优势:MMLU-Pro达73.2%(超越K2的69.2%和V3.2的62.1%),GPQA-Diamond 55.1%(超越K2的48.1%),AIME 24&25达35.3%(超越K2的31.6%和V3.2的24.8%)
- 代码Agent:SWE-Bench(Agentless Repair 3-shot)达30.8%,超越K2(28.2%)和V3.2(9.4%),仅用1/3参数超越K2
- 知识容量限制:SimpleQA仅20.6%,低于K2(35.3%)和V3.2(27.0%),反映参数规模限制
长上下文能力
混合SWA架构在长上下文任务上表现优异:
- 检索任务:NIAH-Multi在32K-256K长度上成功率96.7%-99.9%,接近100%
- 极端长上下文推理:GSM-Infinite Hard从16K到128K仅从37.7%下降至29.0%,性能衰减最小。相比之下,DeepSeek-V3.2-Exp在32K达50.4%但在128K骤降至25.7%,暴露稀疏注意力在噪声输入下的长上下文推理劣势
后训练性能
MiMo-V2-Flash在推理、Agent和长上下文任务上全面表现:
推理基准:与Kimi-K2-Thinking和DeepSeek-V3.2-Thinking竞争:
- AIME 2025: 94.1%(K2: 94.5%, V3.2: 93.1%)
- GPQA-Diamond: 83.7%(K2: 84.5%, V3.2: 82.4%)
- LiveCodeBench-v6: 80.6%(K2: 83.1%, V3.2: 83.3%)
代码Agent登顶:
- SWE-Bench Verified:73.4%(开源第一,超越K2的71.3%和V3.2的73.1%,接近GPT-5-High的74.9%)
- SWE-Bench Multilingual:71.7%(开源最强,超越K2的61.1%和V3.2的70.2%)
- Terminal-Bench Hard: 30.5%(与K2持平)
长上下文超越全局注意力:
- LongBench V2: 60.6%(超越K2的45.1%,接近V3.2的58.4%)
- MRCR: 45.7%(超越K2的44.2%),验证混合SWA架构对长上下文的鲁棒性
通用Agent:
- 휏²-Bench: 80.3%(与V3.2持平,超越K2的74.3%),Telecom子类达95.3%
- BrowseComp: 45.4%(配合上下文管理提升至58.3%)
MTP加速效果
接受长度与熵的关系:实验发现next-token交叉熵与MTP平均接受长度呈强负相关(R 2 = 0.995 R^2=0.995R2=0.995)。低熵上下文(如WebDev)接受长度达3.6 tokens,高熵任务(如MMLU Pro)接受长度较短。拟合曲线为y = 4 ( 1 − 0.58 x 0.58 ) y = 4(1 - 0.58x^{0.58})y=4(1−0.58x0.58)。
实际加速:3层MTP在16K输入1K输出场景下,不同batch size实现1.82-2.70倍解码加速。加速随接受长度线性扩展,在接受长度3.6时达2.39-2.67倍加速(batch 32-96)。
关键发现
- 128-token窗口的反直觉优势:极小窗口强制SWA专注局部信息,GA处理长程依赖,形成清晰劳动分工和更好正则化,实际性能超越512-token窗口和全局注意力基线
- MOPD的能力保持:学生模型在所有领域达到或超越最强教师性能,无"跷跷板效应"。数学和代码任务上,MOPD持续优于纯ORM训练
- 代码Agent RL的泛化性:大规模代码Agent RL训练(12万环境)不仅提升代码任务,还泛化到数学、通用推理等领域,表明Agent训练发展了广泛可迁移的问题解决能力
- 上下文管理的重要性:激进的记忆压缩策略(30%阈值触发总结)在Deep Research任务上带来5-10%准确率提升,验证"更少但战略性管理的上下文产生更聚焦准确的生成"
MiMo-V2-Flash通过架构创新(极致滑动窗口+attention sink)、训练范式创新(MOPD)和推理优化(轻量级MTP),在参数效率和性能之间取得了新的平衡点。其在代码Agent任务上的开源榜首表现,以及接近大2-3倍模型的推理能力,为高效AGI系统的构建提供了新的范式参考。模型权重和3层MTP权重已在GitHub开源。