MiMo-7B:从预训练到强化学习,解锁语言模型的推理潜能

简介: 目前,大多数成功的 强化学习 工作,包括开源研究,都依赖于相对较大的基础模型,例如 32B 模型,特别是在增强代码推理能力方面。业内普遍认为在一个小模型中同时提升数学和代码能力是具有挑战性的。然而,小米MiMo研究团队相信 RL 训练的推理模型的有效性取决于基础模型固有的推理潜力。为了完全解锁语言模型的推理潜力,不仅需要关注后训练,还需要针对推理定制预训练策略。

引言

目前,大多数成功的 强化学习 工作,包括开源研究,都依赖于相对较大的基础模型,例如 32B 模型,特别是在增强代码推理能力方面。业内普遍认为在一个小模型中同时提升数学和代码能力是具有挑战性的。然而,小米MiMo研究团队相信 RL 训练的推理模型的有效性取决于基础模型固有的推理潜力。为了完全解锁语言模型的推理潜力,不仅需要关注后训练,还需要针对推理定制预训练策略。

MiMo-7B,这是一系列从零开始训练并为推理任务而生的模型。MiMo-7B-Base 的 RL 实验表明,MiMo-7B模型具有非凡的推理潜力,甚至超过了更大的 32B 模型。此外,研究团队在冷启动的 SFT 模型上进行了 RL 训练,生成了 MiMo-7B-RL,旨在通过强化学习(RL)提升数学推理和代码生成能力。模型的设计目标是解决复杂任务,特别是在长上下文理解和多步推理方面表现出色,与 OpenAI o1-mini 的性能相匹配。

image.gif 编辑

研究团队开源了 MiMo-7B 系列,包括基础模型、SFT 模型、从基础模型训练的 RL 模型以及从 SFT 模型训练的 RL 模型的Checkpoint。 研究团队相信这份报告及这些模型将为开发强大的推理 LLM 提供有价值的见解,从而造福更广泛的社区。

模型亮点

  • 预训练:为推理而生的基础模型
  • 优化了数据预处理流程,增强了文本提取工具包,并应用多维度数据过滤以提高预训练数据中的推理模式密度。同时,还采用多种策略生成大量多样化的合成推理数据。
  • 采用三阶段的数据混合策略进行预训练。总体而言,MiMo-7B-Base 在大约 25 万亿个令牌上进行了预训练。
  • 将多令牌预测作为额外的训练目标纳入其中,这增强了模型性能并加速了推理过程。
  • 后训练方案:开创性的推理模型
  • 研究团队精心挑选了 130K 个数学和代码问题作为强化学习训练数据,这些问题可以通过基于规则的验证器进行验证。每个问题都经过仔细清理和难度评估,以确保质量。仅使用基于规则的准确性奖励来避免潜在的奖励漏洞。
  • 为了缓解具有挑战性的代码问题的稀疏奖励问题,研究团队引入了由测试难度驱动的代码奖励。通过对不同难度级别的测试用例分配细粒度分数,可以更有效地通过密集奖励信号优化策略。
  • 对简单问题实施了数据重采样策略,以提高展开采样效率并稳定策略更新,特别是在强化学习训练的后期阶段。
  • 强化学习基础设施
  • 研究团队开发了一个Seamless Rollout引擎,以加速强化学习训练和验证。该设计集成了连续rollout、异步奖励计算和提前终止,以最小化 GPU 空闲时间,实现了 2.29倍 的更快训练速度和 1.96倍的更快验证速度。
  • 同时,在 vLLM 中支持 MTP,并增强了 RL 系统中推理引擎的鲁棒性。

模型结构

MiMo-7B 的 MTP 层在预训练和 SFT 期间进行调优,并在强化学习期间冻结。使用一层 MTP 进行推测解码时,接受率约为 90%。

image.gif 编辑

模型链接:https://modelscope.cn/collections/MiMo-7edb0ab729c744

模型评估

基准测试

GPT-4o-0513

Claude-3.5-Sonnet-1022

OpenAI o1-mini

QwQ-32B-Preview

R1-Distill-Qwen-14B

R1-Distill-Qwen-7B

MiMo-7B-RL

通用

             

GPQA Diamond

(Pass@1)

49.9

65.0

60.0

54.5

59.1

49.1

54.4

SuperGPQA

(Pass@1)

42.4

48.2

45.2

43.6

40.6

28.9

40.5

DROP

(3-shot F1)

83.7

88.3

83.9

71.2

85.5

77.0

78.7

MMLU-Pro

(EM)

72.6

78.0

80.3

52.0

68.8

53.5

58.6

IF-Eval

(Prompt Strict)

84.3

86.5

84.8

40.4

78.3

60.5

61.0

数学

             

MATH-500

(Pass@1)

74.6

78.3

90.0

90.6

93.9

92.8

95.8

AIME 2024

(Pass@1)

9.3

16.0

63.6

50.0

69.7

55.5

68.2

AIME 2025

(Pass@1)

11.6

7.4

50.7

32.4

48.2

38.8

55.4

代码

             

LiveCodeBench v5

(Pass@1)

32.9

38.9

53.8

41.9

53.1

37.6

57.8

LiveCodeBench v6

(Pass@1)

30.9

37.2

46.8

39.1

31.9

23.9

49.3

MiMo-7B 系列

基准测试

MiMo-7B-Base

MiMo-7B-RL-Zero

MiMo-7B-SFT

MiMo-7B-RL

数学

       

MATH500

(Pass@1)

37.4

93.6

93.0

95.8

AIME 2024

(Pass@1)

32.9

56.4

58.7

68.2

AIME 2025

(Pass@1)

24.3

46.3

44.3

55.4

代码

       

LiveCodeBench v5

(Pass@1)

32.9

49.1

52.3

57.8

LiveCodeBench v6

(Pass@1)

29.1

42.9

45.5

49.3

评估是在 temperature=0.6 的条件下进行的。

AIME24 和 AIME25 是基于 32 次重复的平均得分。LiveCodeBench v5 (20240801-20250201),LiveCodeBench v6 (20250201-20250501),GPQA-Diamond 和 IF-Eval 是基于 8 次重复的平均得分。MATH500 和 SuperGPQA 是单次运行的结果。

最佳实践

模型推理

使用transformers推理

from modelscope import AutoModel, AutoModelForCausalLM, AutoTokenizer
model_id = "XiaomiMiMo/MiMo-7B-Base"
model = AutoModelForCausalLM.from_pretrained(model_id, trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained(model_id)
inputs = tokenizer(["Today is"], return_tensors='pt')
output = model.generate(**inputs, max_new_tokens = 100)
print(tokenizer.decode(output.tolist()[0]))

image.gif

模型部署

SGLang 推理

感谢 SGLang 团队的贡献,我们在 24 小时内支持了 SGLang 主流中的 MiMo,MTP 即将到来。

示例脚本

# Install the latest SGlang from main branch
python3 -m uv pip install "sglang[all] @ git+https://github.com/sgl-project/sglang.git/@main#egg=sglang&subdirectory=python"
# Launch SGLang Server
SGLANG_USE_MODELSCOPE=true python3 -m sglang.launch_server --model-path XiaomiMiMo/MiMo-7B-RL --host 0.0.0.0 --trust-remote-code

image.gif

模型微调

ms-swift已经支持了MiMo-7B系列模型的微调。ms-swift是魔搭社区官方提供的大模型与多模态大模型训练部署框架。ms-swift开源地址:https://github.com/modelscope/ms-swift

我们将展示可运行的微调demo,并给出自定义数据集的格式。

在开始微调之前,请确保您的环境已准备妥当。

# pip install git+https://github.com/modelscope/ms-swift.git
git clone https://github.com/modelscope/ms-swift.git
cd ms-swift
pip install -e .

image.gif

自定义数据集格式如下,指定--dataset <dataset-path>即可开始训练:

# 通用格式
{"messages": [
    {"role": "system", "content": "<system-prompt>"},
    {"role": "user", "content": "<query1>"},
    {"role": "assistant", "content": "<response1>"}
]}
# 思考数据集格式
{"messages": [
    {"role": "user", "content": "浙江的省会在哪"},
    {"role": "assistant", "content": "<think>\n...\n</think>\n\n浙江的省会在杭州。"}
]}

image.gif

我们以 XiaomiMiMo/MiMo-7B-RL 模型为例,使用自我认知数据集进行训练。由于自我认知数据集不含思考链路,可以通过在训练时指定--loss_scale ignore_empty_think忽略<think>\n\n</think>\n\n的损失计算,缓解模型推理能力的下降。

CUDA_VISIBLE_DEVICES=0 \
swift sft \
    --model XiaomiMiMo/MiMo-7B-RL \
    --train_type lora \
    --dataset 'liucong/Chinese-DeepSeek-R1-Distill-data-110k-SFT#1000' \
              'swift/self-cognition:empty_think#500' \
    --torch_dtype bfloat16 \
    --num_train_epochs 1 \
    --per_device_train_batch_size 1 \
    --per_device_eval_batch_size 1 \
    --learning_rate 1e-4 \
    --lora_rank 8 \
    --lora_alpha 32 \
    --target_modules all-linear \
    --gradient_accumulation_steps 16 \
    --eval_steps 50 \
    --save_steps 50 \
    --save_total_limit 2 \
    --logging_steps 5 \
    --max_length 2048 \
    --output_dir output \
    --warmup_ratio 0.05 \
    --dataloader_num_workers 4 \
    --loss_scale ignore_empty_think \
    --model_author swift \
    --model_name swift-robot

image.gif

训练显存占用:

image.gif 编辑

训练效果展示:

image.gif 编辑

训练完成后,使用以下命令对训练后的权重进行推理,这里的`--adapters`需要替换成训练生成的last checkpoint文件夹。

CUDA_VISIBLE_DEVICES=0 \
swift infer \
    --adapters output/vx-xxx/checkpoint-xxx \
    --stream true \
    --max_new_tokens 2048 \
    --temperature 0

image.gif

推送模型到ModelScope:

CUDA_VISIBLE_DEVICES=0 \
swift export \
    --adapters output/vx-xxx/checkpoint-xxx \
    --push_to_hub true \
    --hub_model_id '<your-model-id>' \
    --hub_token '<your-sdk-token>'

image.gif

目录
相关文章
|
5天前
|
人工智能 定位技术 SEO
我学 GEO 第 15 天:终于知道AI GEO该如何做?
我是暴走的莉莉酱,边旅行边研究AI GEO的数字游民。专注普通人如何提升“AI可见度”——让AI在回答用户问题时准确识别、理解并推荐你。不讲玄学,只做可测、可调、可持续的GEO实践。
419 125
|
8天前
|
机器学习/深度学习 人工智能 调度
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
HappyHorse 1.1 是新一代视频生成大模型,全面升级动态表现力、角色一致性、指令遵循、视觉质感与音画协同能力。支持I2V/T2V/R2V三类生成,适配短剧、电商广告、品牌营销等场景,提供高质、流畅、可控的AI视频生产力。
707 5
🐴 HappyHorse 1.1 现已上线阿里云百炼!快来查收模型使用指南,现在调用享 6 折~
|
5天前
|
缓存 人工智能 运维
阿里云618百炼大模型Qwen3.7-Max功能、免费试用、订阅计费、配置接入详解
Qwen3.7-MAX是阿里云百炼平台推出的通义千问3.7系列旗舰大语言模型,专为智能体时代复杂任务打造,依托阿里云全域算力与自研技术,在逻辑推理、长文本处理、代码工程、长周期自主执行等领域达到行业顶尖水平。2026年618期间,该模型推出多重免费试用权益、按量计费5折、订阅套餐优惠等专属福利,覆盖个人开发者、团队与企业全场景需求,以下从核心功能、免费试用、订阅计费、配置接入四方面展开详细解析。
410 123
|
3天前
|
人工智能 自然语言处理 API
阿里云Token Plan团队版解析:功能、三档套餐与省钱订阅指南
阿里云百炼平台推出的Token Plan团队版,是面向企业与团队的AI大模型订阅服务,以Credits为统一计量单位,整合文本与图像生成模型,提供团队管理、数据安全、多工具兼容等核心能力,解决团队零散订阅AI服务的管理混乱、成本失控、数据安全等痛点。本文将从核心定位、套餐详情、计费规则、团队管理、工具兼容、便宜订阅技巧等方面,全面解析Token Plan团队版,帮助企业与团队高效、低成本地使用AI服务。
307 108
|
5天前
|
存储 人工智能 数据可视化
别再手动复制 Skill 了:多 Agent 时代的 Skill 管理方案
多 Agent 场景下 Skill 的统一管理与同步。
254 123
|
18天前
|
缓存 测试技术 API
Qwen 3.7 Plus 与 Max 实测:性价比与多模态能力差异解析(2026)
2026 年 6 月 1 日,阿里悄无声息地发布了 Qwen 3.7 Plus,距 Qwen 3.7 Max 上线刚好 11 天。同样的 1M 上下文,同样的 35 小时自治上限。但价格才是头条:Plus 是 0.40/M输入,Max是 2.50/M——便宜约 6 倍——并且还能看图、看视频。Vision Arena 上 Plus 已经排到 #16。所以这周真正值得讨论的问题不是”要不要为视觉能力买单”,而是”Max 凭什么用 6 倍价格换来 2 个百分点的 benchmark 领先”。
|
12天前
|
缓存 人工智能 运维
GLM 5.2自托管全流程实战:硬件选型、vLLM/SGLang部署与成本盈亏测算
2026年智谱发布GLM 5.2超大混合专家模型,区别于以往仅开放API的闭源大模型,该模型权重以MIT开源协议对外发布,企业与开发者可完整下载、本地审计、私有化部署,实现数据不出环境、自定义微调、自主调度推理资源。GLM 5.2拥有753B总参数,原生支持百万级上下文窗口,在代码生成、长文档推理、数学逻辑等多项基准测试中对标国际顶尖商用模型,是首款可完整自托管的前沿代码向大模型。
928 0
|
13天前
|
Linux 程序员 数据格式
【2026最新】Notepad++下载、安装和使用一篇搞定(附中文版安装包)
Notepad++ 是一款免费开源、轻量高效的 Windows 文本编辑器,支持 C/Python/HTML 等 80+ 语言语法高亮、代码折叠、正则替换、编码转换及插件扩展,专为程序员与文本处理用户打造,完美替代系统记事本。(239字)

热门文章

最新文章