vkshdev/MiniCPM5-2B / README-cn.md
vkshdev's picture
|
download
raw
109 kB
metadata
license: apache-2.0
language:
  - zh
  - en
library_name: transformers
pipeline_tag: text-generation
tags:
  - minicpm
  - minicpm5
  - llama
  - text-generation
  - long-context
  - tool-calling
  - on-device
  - edge-ai
datasets:
  - openbmb/Ultra-FineWeb
  - openbmb/UltraX-Preview
  - openbmb/Ultra-FineWeb-L3
  - openbmb/UltraData-Math
  - openbmb/UltraData-Code
  - openbmb/UltraData-SFT-2605
  - openbmb/UltraData-SFT-Agent-2609
  - openbmb/UltraData-RL-2609

MiniCPM 技术报告 | MiniCPM 知识库 | GitHub 仓库 | UltraData | 在线 Demo

English | 中文

亮点

我们正式发布 MiniCPM5-2B,这是继 MiniCPM5-1B 之后 MiniCPM5 系列的第二个模型。它是一款面向端侧、本地部署和资源受限场景的 2B 稠密 Transformer,能够达到同尺寸开源模型 SOTA 水平。

🏆 同尺寸开源模型 SOTA:与同尺寸优秀开源模型相比,MiniCPM5-2B 在该对比范围内达到 SOTA 水平,整体表现可与 4B 级模型竞争,并在代码、数学、长文本、工具调用和 Agent 任务上展现出明显优势。

📂 开放高质量数据:与模型一同开源其背后的高质量训练数据,均属于 UltraData 数据体系:UltraX,高质量网页预训练数据集;UltraData-Code,L0–L3 分级代码治理,推动代码能力显著跃升;UltraData-SFT-Agent-2609,50 万 Agent 训练样本,赋能端侧 Agent 综合能力提升;UltraData-RL-2609,超 8 万条高质量 RL 训练样本,覆盖数学、代码、通用知识与长文本推理。

模型列表

你可以按运行环境选择对应模型格式:

MiniCPM5-2B

MiniCPM5-1B

模型信息

MiniCPM5-2B 具有以下特性:

  • 类型:Causal Language Model
  • 架构:标准 LlamaForCausalLM
  • 参数数量:2,516,756,480
  • 非嵌入参数数量:1,981,982,720
  • 层数:42
  • 注意力头(GQA):16 个 Q heads / 2 个 KV heads
  • 上下文长度:131,072

简介

MiniCPM5-2B 是 MiniCPM5 系列的第二个模型,面向本地助手、coding agent、工具调用流程以及需要紧凑模型的推理场景。它在较小部署成本下提供原生长上下文能力。

评测结果

我们选取 LFM2.5-2.6BQwen3.5-2BGemma-4-E2B-it 等同尺寸开源模型进行横向比较,并同时列出 Qwen3.5-4Bgranite-4.2-3BNemotron-3-Nano-4BGemma-4-E4B-itLFM2.5-8B-A1B 等更大规模模型作为参考。

在这组对比中,MiniCPM5-2B 达到同尺寸开源模型 SOTA 水平(平均分 53.9 ),也超过了参与对比的全部更大规模模型(最高 51.1)。其优势主要体现在代码推理、数学推理、长文本、工具调用与多个智能体任务上。

MiniCPM5-2B 与基线模型评测结果

MiniCPM5-2B2B 级模型4B 级模型
LFM2.5-2.6BQwen3.5-2BGemma-4-E2B-itQwen3.5-4Bgranite-4.2-3BNemotron-3-Nano-4BGemma-4-E4B-itLFM2.5-8B-A1B
平均分
53.933.228.024.651.142.732.631.228.4
代码推理
LiveCodeBench v6
69.142.120.242.956.458.950.753.939.8
LCB-Pro 25Q2 (Easy)
68.030.910.327.158.354.651.645.827.8
LCB-Pro 25Q2 (Medium)
17.50.00.00.07.05.35.31.80.0
OJBench
32.511.22.611.624.821.820.019.08.2
SciCode (wbg)
26.314.22.820.916.124.916.424.47.8
数学推理
AIME 2025
86.541.929.631.778.879.456.337.146.0
AIME 2026
86.545.229.039.882.783.562.145.056.7
HMMT Feb 2026
63.833.720.517.864.060.851.330.138.5
MATH-500
94.689.685.885.499.097.091.688.293.2
指令遵循
IFBench
66.359.046.025.759.073.058.328.351.0
IFEval
86.793.477.531.490.293.788.044.490.8
Multi-IF
71.876.857.140.373.675.965.945.971.4
综合知识
MMLU-Pro
70.865.264.356.078.065.865.768.363.1
MMLU-Redux
84.780.080.071.888.778.979.883.780.0
HLE
8.96.22.64.89.96.64.93.86.9
GPQA-Diamond
70.255.845.643.377.155.951.357.651.3
SuperGPQA
40.826.238.630.352.839.937.838.734.5
长文本
AA-LCR
59.05.328.717.061.024.317.333.00.0
NoLiMa
68.10.717.13.943.55.11.12.30.5
LongBenchPro
44.823.78.242.258.434.827.953.519.6
LongBench v2
43.730.324.933.247.336.032.042.730.4
工具调用
τ³-Bench Banking
20.87.22.13.96.85.61.24.13.4
τ²-Bench Telecom
97.190.469.020.892.140.928.120.816.1
BFCL v4
66.661.143.636.656.852.243.747.049.2
代码智能体
SWE-bench Verified
46.46.05.02.033.636.83.015.00.4
SWE-bench Pro
14.40.60.80.028.212.30.13.30.4
Terminal-Bench v2.1
8.64.53.00.425.813.93.81.91.9
搜索智能体
BrowseComp-ZH
43.59.818.24.739.621.13.37.013.2
BrowseComp Top100
39.713.719.36.033.319.04.76.39.7
GAIA Text-103
88.749.547.930.178.657.326.539.541.1
通用智能体
GDPval-AA v2
19.64.50.00.011.70.00.00.00.0
Claw-Gym
59.219.325.531.351.660.033.737.92.7
WildClaw
23.910.29.28.917.020.08.914.34.5
QwenClaw
42.919.318.214.537.136.416.816.74.5

1. 蓝色加粗为该行全场最优结果(含 4B 级模型);黑色加粗为 2B 级模型中的最优结果。
2. 带 的分数取自 Artificial Analysis 官方公布值,其余为内部复现结果。

训练流程

MiniCPM5-2B 的训练过程是 UltraData 分级数据管理体系 的一次完整实践,覆盖 base training、mid-training 与后训练三个阶段。

Base training 采用逐级推进的训练配方,包含 stable training 与 decay training,用于建立基础语言能力与训练稳定性。随后进入 mid-training,进一步强化目标能力并适配数据分布。训练语料来自我们同步开源的 Ultra-FineWebUltra-FineWeb-L3UltraXUltraData-CodeUltraData-Math

后训练阶段分为 SFTRLOPD 三步。我们先使用 400B tokens deep-thinking SFT 建立深度思考和通用对话能力,相关 SFT 数据已同步开源为 UltraData-SFT-2605UltraData-SFT-Agent-2609。随后针对数学、代码、Agent 和写作等方向训练专用 RL teacher(相关数据已同步开源为UltraData-RL-2609),并通过 On-Policy Distillation (OPD) 将这些 teacher 的能力蒸馏回同一个发布模型。

MiniCPM5-2B 训练流程

RL + OPD 带来了什么?

RL + OPD 是 MiniCPM5-2B 后训练中的关键环节。RL 阶段,使用了 JustRL II 阐述的 critic-based 算法,大幅提升训练稳定性,并在多个领域取得了显著的收益。在下面列出的基准中,RL + OPD 在推理与通用能力上平均提升 ↑ 10.96 分,Agent 能力平均提升 ↑ 6.96 分

OPD 阶段对 16 个 RL 训练所得到的专家模型(含 5 个 agentic 专家模型)实现了能力合并。训练方式上,我们在 response 序列的每个位置分别对学生模型和教师模型 logits 计算全词表的反向 KL 散度作为优势估计值,替代原有的 verification-based advantage;训练数据上,我们的 OPD 直接复用各 RL teacher 训练时 prompt 作为蒸馏数据,无需额外构造语料。

MiniCPM5-2B RL + OPD 增益

快速上手

vLLM

pip install "vllm>=0.21"
vllm serve openbmb/MiniCPM5-2B --port 8000
curl http://localhost:8000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openbmb/MiniCPM5-2B",
    "messages": [{"role": "user", "content": "你是谁?可以简单介绍一下自己吗?"}],
    "max_tokens": 128,
    "temperature": 1.0
  }'

SGLang

pip install "sglang[srt]>=0.5.16"
python -m sglang.launch_server --model-path openbmb/MiniCPM5-2B --port 30000
curl http://localhost:30000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openbmb/MiniCPM5-2B",
    "messages": [{"role": "user", "content": "你是谁?可以简单介绍一下自己吗?"}],
    "max_tokens": 128,
    "temperature": 1.0
  }'

投机采样(DSpark):我们同步开源了为 MiniCPM5-2B 训练的 DSpark 草稿模型 MiniCPM5-2B-DSpark。在 SGLang 中启用后可加速解码,且不改变目标模型的输出:

python -m sglang.launch_server \
  --model-path openbmb/MiniCPM5-2B \
  --trust-remote-code \
  --speculative-algorithm DSPARK \
  --speculative-draft-model-path openbmb/MiniCPM5-2B-DSpark \
  --speculative-dspark-block-size 7 \
  --port 30000

Transformers

pip install -U "transformers>=5.6" accelerate torch
from transformers import AutoModelForCausalLM, AutoTokenizer
model_id = "openbmb/MiniCPM5-2B"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    torch_dtype="auto",
    device_map="auto",
)
messages = [{"role": "user", "content": "你是谁?可以简单介绍一下自己吗?"}]
inputs = tokenizer.apply_chat_template(
    messages,
    tokenize=True,
    add_generation_prompt=True,
    enable_thinking=True,
    return_dict=True,
    return_tensors="pt",
).to(model.device)
outputs = model.generate(**inputs, max_new_tokens=128)
print(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:], skip_special_tokens=True))

推荐的采样参数:temperature=1.0, top_p=0.95

工具调用

工具调用推荐使用 SGLang。MiniCPM5-2B 以 XML 格式产出工具调用,SGLang 内置的 minicpm5 parser 会自动将其转换为 OpenAI 兼容的 tool_calls 字段。

python -m sglang.launch_server --model-path openbmb/MiniCPM5-2B --port 30000 \
    --tool-call-parser minicpm5      # 或:--tool-call-parser auto

GitHub Cookbooks 与 Agent Skills

MiniCPM5-2B 使用标准 LlamaForCausalLM 架构,主流推理引擎可直接加载,无需自定义算子,也无模型代码 fork。逐步部署和微调说明请参考下方 GitHub cookbooks;Agent Skills 作为 GitHub 资源提供给使用 Cursor / Claude Code 类 coding agent 的用户。

部署

后端 模型格式 / 适用场景 Cookbook Agent Skill
Transformers BF16 / FP16,本地 Python 推理,GPU + CPU transformers.md minicpm5-deploy-transformers
vLLM BF16 / FP16 OpenAI server vllm.md minicpm5-deploy-vllm
SGLang BF16 / FP16 OpenAI server,推荐用于 tool calling sglang.md minicpm5-deploy-sglang
llama.cpp GGUF,CPU/GPU 本地推理 llama_cpp.md minicpm5-deploy-llama-cpp
Ollama GGUF,本地端侧运行 ollama.md minicpm5-deploy-ollama
LM Studio GGUF,Mac 桌面应用与 OpenAI server lmstudio.md minicpm5-deploy-lmstudio
MLX MLX / 4bit,Apple Silicon 本地推理 mlx.md minicpm5-deploy-mlx
ArcLight GGUF 本地端侧 / CPU / 桌面 / 服务器 arclight.md minicpm5-deploy-arclight
vLLM Ascend BF16 / FP16 OpenAI server vllm_ascend.md minicpm5-deploy-vllm-ascend

微调

框架 适用场景 Cookbook Agent Skill
TRL + PEFT LoRA / SFT 微调 trl.md minicpm5-finetune-trl
LLaMA-Factory 微调 llamafactory.md minicpm5-finetune-llamafactory
ms-swift 微调 ms_swift.md minicpm5-finetune-ms-swift
unsloth 微调 unsloth.md minicpm5-finetune-unsloth

其他支持的框架

除上文列出的部署与微调框架外,MiniCPM5-2B 也支持通过 FlagOS 进行多芯片部署。

FlagOS 介绍

为解决不同 AI 芯片大规模落地应用,北京智源研究院联合众多科研机构、芯片企业、系统厂商、算法和软件相关单位等国内外机构共同发起并创立了 FlagOS 开源社区。

FlagOS 社区致力于打造面向多种 AI 芯片的统一、开源的系统软件栈,包括大型算子库、统一AI编译器、并行训推框架、统一通信库等核心开源项目,构建「模型-系统-芯片」三层贯通的开放技术生态,通过“一次开发跨芯迁移”释放硬件计算潜力,打破不同芯片软件栈之间生态隔离,有效降低开发者的迁移成本。FlagOS 社区构建人工智能软硬件生态,突破单一闭源垄断,推动AI硬件技术大范围落地发展,立足中国、拥抱全球合作。

官网速递:https://flagos.io

FlagOS 多 AI 芯片支持与使用方式

FlagOS 多 AI 芯片支持

基于 FlagOS 极短时间内适配 MiniCPM5-2B 到 9 种不同的 AI 芯片,得益于众智 FlagOS 的多芯片统一 AI 系统软件栈的能力。目前,在 FlagOS 团队构建的面向多架构人工智能芯片的大模型自动迁移、适配与发布平台 FlagRelease 上,已发布 MiniCPM5-2B 的多芯片版本。细节如下:

FlagOS 使用方式

使用 FlagOS 在 Nvidia 体验性能加速
From FlagRelease(推荐

FlagRelease是FlagOS团队构建的一套面向多架构人工智能芯片的大模型自动迁移、适配与发布平台,已发布MiniCPM5-2B的多芯片版本。FlagRelease 已内置相关软件包,无需用户安装。

FlagRelease 镜像关键版本信息
FlagRelease 使用速递
从零开始
  • 依赖Python3.12, GLIBC_2.39, GLIBCXX_3.4.33, CXXABI_1.3.15 环境
Vllm 版本
安装 FlagOS 算子库

官方仓库:https://github.com/flagos-ai/FlagGems

pip install flag-gems==4.2.1rc0
pip install triton==3.5.1
开启加速

通过在vllm执行推理的源码中增加flagGems的导入即可开启flagGems加速

import flag_gems
flag_gems.enable(record=True, once=True, path="/root/gems.txt")
vllm serve ${model_path} \
--trust-remote-code \
--dtype bfloat16 \
--enforce-eager \
--port ${Port} \
--served-model-name ${model_name} \
--gpu-memory-utilization 0.85
使用 FlagOS 统一多芯片后端插件

vllm-plugin-FL 是一个为 vLLM 推理/服务框架构建的插件,它基于 FlagOS 的统一多芯片后端开发,旨在扩展 vLLM 在多种硬件环境下的功能和性能表现。

vllm-plugin-FL 使用
厂商 从零开始 从 FlagRelease 开始
英伟达 vllm-plugin-FL/MiniCPM5-2B MiniCPM5-2B-ModelScope MiniCPM5-2B-nvidia-FlagOS

局限性与免责声明

本模型不具备自主意识或法律主体资格,其输出仅为基于统计模式的文本生成结果,可能不准确、有偏见或具冒犯性,也可能被精心设计的提示词(“越狱”)操纵而产生不符合预期的内容。对政治、健康、金融、法律等敏感话题的回答未经专家审核,不应视为专业建议。

本模型按“现状”提供,不附带任何明示或默示担保,开发者不对使用本模型产生的任何损害承担责任。使用者应仅将模型用于合法、合规且符合伦理的目的,自行配置必要的安全措施,并按当地要求标识 AI 生成内容;不得故意越狱、注入攻击或诱导模型产生有害内容,若进行此类测试,风险自担。

开源协议

MiniCPM 模型权重与相关代码依照 Apache-2.0 协议发布。

引用

如果觉得我们的工作有帮助,请引用:

@article{minicpm4,
  title={Minicpm4: Ultra-efficient llms on end devices},
  author={MiniCPM, Team},
  journal={arXiv preprint arXiv:2506.07900},
  year={2025}
}

Xet Storage Details

Size:
109 kB
·
Xet hash:
de0102eff9c408608af4da613e9b12a42f9cebb114fd2e8877ee65a6bc4916ad

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.