- 人工智能
- 大模型
- 基础模型
【免费下载链接】MiniCPM5-2B
MiniCPM5-2B 是一款面向端侧、本地部署和资源受限场景的 2B 稠密 Transformer,能够达到同尺寸开源模型 SOTA 水平。
本篇技术指南以 OpenBMB 开源的 MiniCPM5-2B 为对象,系统讲解这款面向端侧与资源受限场景的 2B 稠密 Transformer 的架构规格、评测表现、SFT/RL/OPD 训练配方,以及基于 vLLM、SGLang、llama.cpp、Transformers 等主流推理引擎的完整部署与工具调用方案。读完本文,你将掌握 MiniCPM5-2B 的选型依据、采样参数调优技巧、DSpark 投机采样加速方法,以及如何在本地端侧快速拉起一个可用的 OpenAI 兼容推理服务。
模型定位与核心亮点
MiniCPM5-2B 是 MiniCPM5 系列继 MiniCPM5-1B 之后发布的第二个模型,面向本地助手(local assistant)、coding agent、工具调用流程(tool-use workflow)以及需要紧凑模型的推理场景。它以较小的部署成本提供原生长上下文能力,是 MiniCPM5 系列中把"端侧可部署"与"强推理能力"结合的 2B 级代表。模型主体说明位于仓库根目录的 README-cn.md,英文版本见 README.md。
根据官方说明,其核心亮点可概括为三点:
- 同尺寸开源模型 SOTA:在与 LFM2.5-2.6B、Qwen3.5-2B、Gemma-4-E2B-it 等同尺寸模型的对比中,MiniCPM5-2B 平均分 53.9,达到该对比范围内的 SOTA 水平;同时整体表现可与 4B 级模型竞争(对比组内 4B 级最高分为 51.1),在代码、数学、长文本、工具调用和 Agent 任务上优势明显。
- 开放高质量数据:与模型同步开源其训练数据,均属于 UltraData 数据体系,包括高质量网页预训练数据集 UltraX-Preview、L0–L3 分级代码治理数据集 UltraData-Code、50 万条 Agent 训练样本 UltraData-SFT-Agent-2609,以及覆盖数学、代码、通用知识与长文本推理的超 8 万条 RL 训练样本 UltraData-RL-2609。
- 标准架构零门槛接入:模型使用标准
LlamaForCausalLM架构,主流推理引擎可直接加载,无需自定义算子,也无模型代码 fork。
模型版本与格式清单:按运行环境选型
MiniCPM5-2B 发布了完整的训练阶段 checkpoint 与多种推理格式,覆盖从量化部署到草稿模型加速的各类场景。其中 BF16 正式版即当前仓库所承载的版本(经 RL + OPD 后训练)。
MiniCPM5-2B 系列(Hugging Face 标识 openbmb/MiniCPM5-2B,ModelScope 标识 OpenBMB/MiniCPM5-2B):
| 版本 | 格式 / 说明 |
|---|---|
| MiniCPM5-2B | BF16 正式版,经 RL + OPD 后训练 |
| MiniCPM5-2B-SFT | BF16 SFT 单独 checkpoint(RL / OPD 之前) |
| MiniCPM5-2B-Midtrain | BF16 mid-training checkpoint(SFT 之前) |
| MiniCPM5-2B-Base | BF16 base checkpoint(仅预训练) |
| MiniCPM5-2B-GGUF | GGUF,适用于 llama.cpp / Ollama / LM Studio |
| MiniCPM5-2B-MLX | MLX / 4bit,适用于 Apple Silicon |
| MiniCPM5-2B-GPTQ | GPTQ / 4bit 量化模型 |
| MiniCPM5-2B-DSpark | DSpark 草稿模型,用于推理加速 |
| MiniCPM5-2B-DSpark-GGUF | GGUF 版本的 DSpark 草稿模型 |
| MiniCPM5-2B-LiteRT | MiniCPM5-2B 的 LiteRT-LM 版本 |
MiniCPM5-1B 系列同步提供 BF16 正式版、SFT、Base、GGUF、MLX 等版本,供更低资源预算的场景选用。
从部署角度看:追求极致小内存用 GGUF / GPTQ / MLX 量化版;需要最快解码速度可用 DSpark 草稿模型配合 SGLang 投机采样;需要在手机、桌面、IoT 等端侧运行时加载,则选择 LiteRT-LM 版本。
技术规格:从配置到权重的源码级核对
README 中给出的模型信息,可以在仓库的 config.json 中逐一得到验证。下表汇总了模型的核心规格:
| 配置项 | 数值 | config.json 对应字段 |
|---|---|---|
| 类型 | Causal Language Model(因果语言模型) | model_type: "llama" |
| 架构 | 标准LlamaForCausalLM | architectures: ["LlamaForCausalLM"] |
| 总参数量 | 2,516,756,480 | 由 model.safetensors.index.json 中的权重分片汇总 |
| 非嵌入参数量 | 1,981,982,720 | 同上(不含 token embedding 与 lm_head) |
| 层数 | 42 | num_hidden_layers: 42 |
| 注意力头(GQA) | 16 个 Q heads / 2 个 KV heads | num_attention_heads: 16、num_key_value_heads: 2 |
| 上下文长度 | 131,072 | max_position_embeddings: 131072 |
从 config.json 还可以获得更多细节:
- 隐藏层维度
hidden_size: 2048,FFN 中间维度intermediate_size: 6144,注意力头维度head_dim: 128; - 激活函数
hidden_act: "silu"(SwiGLU 结构); - RoPE 频率基数
rope_theta: 5000000(500 万),且rope_scaling: null,说明 131K 长上下文是原生长上下文能力,不依赖额外的位置插值或缩放技巧,这一点也呼应了 README 中"在较小部署成本下提供原生长上下文能力"的表述; - 词表大小
vocab_size: 130560,tie_word_embeddings: false(embedding 与 lm_head 不共享); - 数值精度
torch_dtype: "bfloat16",对应 README 中"BF16 正式版"的说明; - 特殊 token:
bos_token_id: 0、pad_token_id: 1、eos_token_id: [1, 130073](即</s>与<|im_end|>双结束符)。
权重文件方面,model.safetensors.index.json 显示total_size: 5033512960(约 5.03 GB,对应 2.5B 参数 × 2 字节的 BF16 存储),全部参数存放于单个分片 model-00000-of-00001.safetensors 中。权重清单涵盖 42 层的q_proj / k_proj / v_proj / o_proj、gate_proj / up_proj / down_proj、两层 LayerNorm,以及embed_tokens与lm_head,与标准 Llama 结构完全一致。
默认采样配置
仓库中的 generation_config.json 预置了官方推荐的采样参数:do_sample: true、temperature: 1.0、top_p: 0.95。这与 README 中"生成时建议使用 temperature=1.0, top_p=0.95, min_p=0.0"的建议保持一致。
评测结果:与 2B / 4B 级模型的横向对比
官方选取LFM2.5-2.6B、Qwen3.5-2B、Gemma-4-E2B-it作为同尺寸对比模型,同时列出Qwen3.5-4B、granite-4.2-3B、Nemotron-3-Nano-4B、Gemma-4-E4B-it、LFM2.5-8B-A1B等更大规模模型作为参考。评测覆盖九个能力维度。以下按维度整理完整数据(分数取自 README-cn.md,带 † 标记的分数取自 Artificial Analysis 官方公布值,其余为内部复现结果)。
平均分(对比组内 SOTA):
| 指标 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| 平均分 | 53.9 | 33.2 | 28.0 | 24.6 | 51.1 | 42.7 | 32.6 | 31.2 | 28.4 |
代码推理:
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| LiveCodeBench v6 | 69.1 | 42.1 | 20.2 | 42.9 | 56.4 | 58.9 | 50.7 | 53.9 | 39.8 |
| LCB-Pro 25Q2 (Easy) | 68.0 | 30.9 | 10.3 | 27.1 | 58.3 | 54.6 | 51.6 | 45.8 | 27.8 |
| LCB-Pro 25Q2 (Medium) | 17.5 | 0.0 | 0.0 | 0.0 | 7.0 | 5.3 | 5.3 | 1.8 | 0.0 |
| OJBench | 32.5 | 11.2 | 2.6 | 11.6 | 24.8 | 21.8 | 20.0 | 19.0 | 8.2 |
| SciCode (wbg)† | 26.3 | 14.2 | 2.8 | 20.9 | 16.1 | 24.9 | 16.4 | 24.4 | 7.8 |
数学推理:
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| AIME 2025 | 86.5 | 41.9 | 29.6 | 31.7 | 78.8 | 79.4 | 56.3 | 37.1 | 46.0 |
| AIME 2026 | 86.5 | 45.2 | 29.0 | 39.8 | 82.7 | 83.5 | 62.1 | 45.0 | 56.7 |
| HMMT Feb 2026 | 63.8 | 33.7 | 20.5 | 17.8 | 64.0 | 60.8 | 51.3 | 30.1 | 38.5 |
| MATH-500 | 94.6 | 89.6 | 85.8 | 85.4 | 99.0 | 97.0 | 91.6 | 88.2 | 93.2 |
指令遵循:
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| IFBench | 66.3 | 59.0 | 46.0 | 25.7 | 59.0 | 73.0 | 58.3 | 28.3 | 51.0 |
| IFEval | 86.7 | 93.4 | 77.5 | 31.4 | 90.2 | 93.7 | 88.0 | 44.4 | 90.8 |
| Multi-IF | 71.8 | 76.8 | 57.1 | 40.3 | 73.6 | 75.9 | 65.9 | 45.9 | 71.4 |
综合知识:
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| MMLU-Pro | 70.8 | 65.2 | 64.3 | 56.0 | 78.0 | 65.8 | 65.7 | 68.3 | 63.1 |
| MMLU-Redux | 84.7 | 80.0 | 80.0 | 71.8 | 88.7 | 78.9 | 79.8 | 83.7 | 80.0 |
| HLE† | 8.9 | 6.2 | 2.6 | 4.8 | 9.9 | 6.6 | 4.9 | 3.8 | 6.9 |
| GPQA-Diamond† | 70.2 | 55.8 | 45.6 | 43.3 | 77.1 | 55.9 | 51.3 | 57.6 | 51.3 |
| SuperGPQA | 40.8 | 26.2 | 38.6 | 30.3 | 52.8 | 39.9 | 37.8 | 38.7 | 34.5 |
长文本(131K 上下文的直接验证):
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| AA-LCR† | 59.0 | 5.3 | 28.7 | 17.0 | 61.0 | 24.3 | 17.3 | 33.0 | 0.0 |
| NoLiMa | 68.1 | 0.7 | 17.1 | 3.9 | 43.5 | 5.1 | 1.1 | 2.3 | 0.5 |
| LongBenchPro | 44.8 | 23.7 | 8.2 | 42.2 | 58.4 | 34.8 | 27.9 | 53.5 | 19.6 |
| LongBench v2 | 43.7 | 30.3 | 24.9 | 33.2 | 47.3 | 36.0 | 32.0 | 42.7 | 30.4 |
工具调用:
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| τ³-Bench Banking† | 20.8 | 7.2 | 2.1 | 3.9 | 6.8 | 5.6 | 1.2 | 4.1 | 3.4 |
| τ²-Bench Telecom | 97.1 | 90.4 | 69.0† | 20.8† | 92.1† | 40.9 | 28.1† | 20.8† | 16.1† |
| BFCL v4 | 66.6 | 61.1 | 43.6 | 36.6 | 56.8 | 52.2 | 43.7 | 47.0 | 49.2 |
代码智能体:
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| SWE-bench Verified | 46.4 | 6.0 | 5.0 | 2.0 | 33.6 | 36.8 | 3.0 | 15.0 | 0.4 |
| SWE-bench Pro | 14.4 | 0.6 | 0.8 | 0.0 | 28.2 | 12.3 | 0.1 | 3.3 | 0.4 |
| Terminal-Bench v2.1† | 8.6 | 4.5 | 3.0 | 0.4 | 25.8 | 13.9 | 3.8 | 1.9 | 1.9 |
搜索智能体:
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| BrowseComp-ZH | 43.5 | 9.8 | 18.2 | 4.7 | 39.6 | 21.1 | 3.3 | 7.0 | 13.2 |
| BrowseComp Top100 | 39.7 | 13.7 | 19.3 | 6.0 | 33.3 | 19.0 | 4.7 | 6.3 | 9.7 |
| GAIA Text-103 | 88.7 | 49.5 | 47.9 | 30.1 | 78.6 | 57.3 | 26.5 | 39.5 | 41.1 |
通用智能体:
| 基准 | MiniCPM5-2B | LFM2.5-2.6B | Qwen3.5-2B | Gemma-4-E2B-it | Qwen3.5-4B | granite-4.2-3B | Nemotron-3-Nano-4B | Gemma-4-E4B-it | LFM2.5-8B-A1B |
|---|---|---|---|---|---|---|---|---|---|
| GDPval-AA v2† | 19.6 | 4.5 | 0.0 | 0.0 | 11.7 | 0.0† | 0.0 | 0.0 | 0.0 |
| Claw-Gym | 59.2 | 19.3 | 25.5 | 31.3 | 51.6 | 60.0 | 33.7 | 37.9 | 2.7 |
| WildClaw | 23.9 | 10.2 | 9.2 | 8.9 | 17.0 | 20.0 | 8.9 | 14.3 | 4.5 |
| QwenClaw | 42.9 | 19.3 | 18.2 | 14.5 | 37.1 | 36.4 | 16.8 | 16.7 | 4.5 |
表中加粗为对应行最优结果(含 4B 级模型)。综合来看,MiniCPM5-2B 的优势集中在代码推理、数学推理、长文本、工具调用与多个智能体任务上;在 NoLiMa、τ²-Bench Telecom、SWE-bench Verified、GAIA Text-103 等基准上,它甚至超过了所有参与对比的 4B 级模型。
训练流程:UltraData 分级数据体系下的三阶段配方
MiniCPM5-2B 的训练是UltraData 分级数据管理体系的一次完整实践,覆盖 base training、mid-training 与后训练三个阶段。
- Base training(预训练):采用逐级推进的训练配方,包含 stable training 与 decay training,用于建立基础语言能力与训练稳定性。
- Mid-training(中期训练):进一步强化目标能力并适配目标数据分布。训练语料来自同步开源的 Ultra-FineWeb、Ultra-FineWeb-L3、UltraX-Preview、UltraData-Code 与 UltraData-Math 等数据集。
- Post-training(后训练):分为SFT → RL → OPD三步。
后训练阶段是这套配方的精髓:
- SFT:先使用 400B tokens 的 deep-thinking SFT 建立深度思考和通用对话能力,相关数据同步开源为 UltraData-SFT-2605 与 50 万条的 UltraData-SFT-Agent-2609;
- RL:针对数学、代码、Agent、写作等方向训练专用 RL teacher,使用 JustRL II 阐述的 critic-based 算法,大幅提升训练稳定性(数据开源为超 8 万条的 UltraData-RL-2609);
- OPD(On-Policy Distillation,在线策略蒸馏):将各 RL teacher 的能力蒸馏回同一个发布模型,实现能力合并。
RL + OPD 带来了什么?
- 在官方列出的基准上,RL + OPD 使推理与通用能力平均提升 ↑10.96 分,Agent 能力平均提升 ↑6.96 分;
- OPD 细节:OPD 阶段合并了 16 个 RL 训练得到的专家模型(含 5 个 agentic 专家模型)的能力。训练方式上,在 response 序列的每个位置分别对学生模型和教师模型的 logits 计算全词表的反向 KL 散度作为优势估计值,替代原有的 verification-based advantage;
- 数据复用:OPD 直接复用各 RL teacher 训练时的 prompt 作为蒸馏数据,无需额外构造语料。
这套"一个模型 + 多个 RL 专家 + 蒸馏合并"的思路,使最终发布模型能够在单一权重内同时具备数学、代码、工具调用与通用 Agent 能力,这也是其在评测表中多项 Agent 任务领先的直接原因。
快速上手:采样参数与四套主流部署方案
官方建议的采样参数组合如下(不同推理框架对采样参数的支持程度有所差异):
- 标准配置:
temperature=1.0, top_p=0.95, min_p=0.0 - 遇到重复输出时:
temperature=1.0, top_p=0.95, min_p=0.0, repetition_penalty=1.05
其中min_p值得特别留意:llama.cpp 默认min_p=0.05,会过滤掉概率低于最高概率 token 5% 的 token,这种过滤反而可能引发重复——它恰恰过滤掉了模型摆脱重复循环所需的 token,因此官方明确建议设为0.0以禁用该过滤。
vLLM 部署
pip install "vllm>=0.21" vllm serve openbmb/MiniCPM5-2B --port 8000启动后即可通过 OpenAI 兼容接口调用:
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 30000curl 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 投机采样加速(SGLang)
官方同步开源了为 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关键参数说明:--speculative-algorithm DSPARK指定投机采样算法;--speculative-draft-model-path指向草稿模型;--speculative-dspark-block-size 7设置 DSpark 的块大小(官方推荐值)。
llama.cpp 部署(GGUF)
llama-server -m MiniCPM5-2B-F16.gguf -a MiniCPM5-2B --port 8080 -ngl 99 -c 8192 --jinja-c 8192设置上下文长度为 8192,可以根据需要修改(模型原生支持最长 131072);-ngl 99表示尽可能将层卸载到 GPU;--jinja启用 Jinja 模板(对应本仓库根目录下的 chat_template.jinja)。
curl http://localhost:8080/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "MiniCPM5-2B", "messages": [{"role": "user", "content": "1+1=?"}], "temperature": 1.0, "top_p": 0.95, "min_p": 0.0, "max_tokens": 256 }'Transformers 本地推理
pip install -U "transformers>=5.6" accelerate torchfrom 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, # 开启深度思考模式(<think> 思维链) 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))注意enable_thinking=True:MiniCPM5-2B 使用<think>...</think>结构承载推理过程,是否开启思考会直接影响输出格式,这个参数由 chat_template.jinja 中的模板逻辑控制(enable_thinking is false时输出空 think 块,enable_thinking is true时开启 think 前缀)。
工具调用:XML 协议与 SGLang 原生解析
MiniCPM5-2B 的工具调用推荐使用 SGLang。模型以XML 格式产出工具调用,SGLang 内置的minicpm5parser 会自动将其转换为 OpenAI 兼容的tool_calls字段:
python -m sglang.launch_server --model-path openbmb/MiniCPM5-2B --port 30000 \ --tool-call-parser minicpm5 # 或:--tool-call-parser auto工具调用的底层协议
仓库根目录的 chat_template.jinja 完整定义了工具调用协议,从中可以看到三个关键机制:
- 工具定义注入:当 messages 中携带
tools时,模板将每个工具以 JSON 序列化后放入<tools>...</tools>XML 标签,并注入 system 提示,说明"可调用零个或多个函数,无调用时直接正常作答"; - XML 调用格式:模型产出形如
<function name="函数名"><param name="参数名">参数值</param></function>的调用,多行或包含<、&、换行符的参数值自动包裹 CDATA 块; - 多轮工具响应:工具执行结果以
<tool_response>...</tool_response>包裹并作为 user 消息回填,支持连续多步工具调用。
tokenizer 层面,tokenizer_config.json 与 special_tokens_map.json 中注册了完整的协议 token:<think>(id 8)、</think>(id 9)、<tool_response>(id 10)、</tool_response>(id 11)、<tools>(id 12)、</tools>(id 13)、<function(id 18)、</function>(id 19)、<param(id 20)、</param>(id 21),以及 ChatML 风格的<|im_start|>(id 130072)与<|im_end|>(id 130073,同时是 eos token)。
部署与微调生态:主流框架全覆盖
由于使用标准LlamaForCausalLM架构且无需自定义算子与模型代码 fork,MiniCPM5-2B 可被主流推理引擎直接加载。官方为各后端提供了详细的逐步部署说明(cookbook)以及面向 Cursor / Claude Code 类 coding agent 的 Agent Skills 资源。
部署后端一览:
| 后端 | 模型格式 / 适用场景 |
|---|---|
| Transformers | BF16 / FP16,本地 Python 推理,GPU + CPU |
| vLLM | BF16 / FP16 OpenAI server |
| SGLang | BF16 / FP16 OpenAI server,推荐用于 tool calling |
| llama.cpp | GGUF,CPU/GPU 本地推理 |
| Ollama | GGUF,本地端侧运行 |
| LM Studio | GGUF,Mac 桌面应用与 OpenAI server |
| MLX | MLX / 4bit,Apple Silicon 本地推理 |
| ArcLight | GGUF 本地端侧 / CPU / 桌面 / 服务器 |
| vLLM Ascend | BF16 / FP16 OpenAI server |
| LiteRT-LM | .litertlm端侧运行时:Android / iOS / 桌面 / IoT,CPU + GPU |
微调框架一览:
| 框架 | 适用场景 |
|---|---|
| TRL + PEFT | LoRA / SFT 微调 |
| LLaMA-Factory | 通用微调 |
| ms-swift | 通用微调 |
| unsloth | 通用微调 |
多芯片部署:FlagOS 生态
除上述框架外,MiniCPM5-2B 还支持通过FlagOS进行多芯片部署。FlagOS 社区致力于打造面向多种 AI 芯片的统一开源系统软件栈,涵盖大型算子库、统一 AI 编译器、并行训推框架、统一通信库等核心项目,目标是"一次开发、跨芯迁移"。基于 FlagOS 的多芯片统一 AI 系统软件栈,MiniCPM5-2B 已适配9 种不同的 AI 芯片,并在 FlagOS 团队的 FlagRelease 平台上发布了多芯片版本,覆盖 Nvidia、Hygon(海光)、Metax(沐曦)、Iluvatar(天数智芯)、Zhenwu(真武)、Mthreads(摩尔线程)、Kunlunxin(昆仑芯)、Ascend(昇腾)、ARM-v9 等厂商。
在 Nvidia 上体验性能加速有两种途径:
- 从 FlagRelease 开始(推荐):FlagRelease 已内置相关软件包,无需用户安装;
- 从零开始:需要 Python 3.12、GLIBC 2.39、GLIBCXX 3.4.33、CXXABI 1.3.15 环境。安装 FlagGems 算子库后,在 vLLM 推理源码中加入以下导入即可开启加速:
pip install flag-gems==4.2.1rc0 pip install triton==3.5.1import 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此外,vllm-plugin-FL是基于 FlagOS 统一多芯片后端为 vLLM 构建的插件,用于扩展 vLLM 在多种硬件环境下的功能与性能。
局限性、开源协议与引用
局限性声明:本模型不具备自主意识或法律主体资格,其输出仅为基于统计模式的文本生成结果,可能不准确、有偏见或具冒犯性,也可能被精心设计的提示词("越狱")操纵而产生不符合预期的内容。对政治、健康、金融、法律等敏感话题的回答未经专家审核,不应视为专业建议。模型按"现状"提供,不附带任何明示或默示担保;使用者应仅将其用于合法、合规且符合伦理的目的,自行配置必要的安全措施,并按当地要求标识 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} }小结:什么时候选 MiniCPM5-2B
综合以上分析,MiniCPM5-2B 适合以下场景:需要在端侧或资源受限环境部署、但又不愿牺牲推理与 Agent 能力的应用;需要原生 131K 长上下文(不依赖位置插值)的文档级理解任务;需要以 2B 体积与 4B 级模型竞争的代码、数学或工具调用工作流。仓库文件本身即是部署清单:模型权重见 model-00000-of-00001.safetensors,架构与超参见 config.json,采样默认值见 generation_config.json,对话与工具协议见 chat_template.jinja。按本文的 vLLM / SGLang / llama.cpp / Transformers 四套命令即可完成从服务端到端侧的快速部署。
- 人工智能
- 大模型
- 基础模型
【免费下载链接】MiniCPM5-2B
MiniCPM5-2B 是一款面向端侧、本地部署和资源受限场景的 2B 稠密 Transformer,能够达到同尺寸开源模型 SOTA 水平。
相关推荐
MiniCPM5-2B 端侧大模型完整实战指南:架构、RL+OPD 训练配方与多框架部署微调
MiniCPM5 2B 端侧大模型完整实战指南:架构、RL+OPD 训练配方与多框架部署微调 MiniCPM5 2B 是 OpenBMB 开源社区 MiniCP
大模型本地部署模型量化微调LoRA工具调用openBMBAscend端侧部署 MiniCPM5-2B / MiniCPM5-1B:基于 LiteRT-LM 的 .litertlm 单包跨端实战指南
端侧部署 MiniCPM5 2B / MiniCPM5 1B:基于 LiteRT LM 的 .litertlm 单包跨端实战指南 本篇指南完整讲解如何在 And
大模型本地部署模型量化微调LoRA工具调用openBMBAscendMiniCPM5-2B 技术全解析:稠密小模型架构、RL+OPD 训练配方与端侧部署微调实战(基于 OpenBMB/MiniCPM 开源仓库)
MiniCPM5 2B 技术全解析:稠密小模型架构、RL+OPD 训练配方与端侧部署微调实战(基于 OpenBMB/MiniCPM 开源仓库) 本篇技术指南以
大模型本地部署模型量化微调LoRA工具调用openBMBAscend
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考