MiniCPM5-2B 端侧 Agent 部署完全指南:2B 参数跑出通用 Agent 雏形
2026年9月8日,面壁智能联合 OpenBMB 开源社区正式开源 MiniCPM5-2B。20亿参数,INT4 量化后仅 1.2GB,AA 榜单 23 分登顶全球 4B 以下开源模型第一,Agent 能力榜 20 分断层领先。本文手把手教你从零部署到实测验证。
一、MiniCPM5-2B 是什么:20亿参数的端侧 Agent 基座
MiniCPM5-2B 是面壁智能「小钢炮」系列的最新成员,参数规模 20 亿(2B),定位为高密度端侧语言基座模型。
核心能力:
- 工具调用:支持 Function Calling,可接入外部 API、文件系统
- 深度搜索:多轮搜索 + 信息提取 + 答案合成
- 代码生成:代码推理与生成效率较前代提升 2.4 倍
- 长文本处理:512K 上下文窗口,实测 12.5 万 token 仍可准确召回
- 混合思考:快速模式延迟 <50ms,深度模式 500-800ms
训练体系:
| Agent Midtraining | 200B tokens | 通用知识与 Agent 能力基础训练 |
| Agent SFT | 100万+轨迹 | 覆盖工具调用、Search、CodeAgent、General Agent |
| Agent RL | JustRL II 策略 | GRPO + Critic 词元级信用分配 |
与 5 月底开源的 MiniCPM5-1B 不同,2B 版本在 7 月 WAIC 2026 上首次亮相但未开源,开发者在 HuggingFace 上追问两个月后,9 月 8 日正式放出。
二、榜单数据:凭什么 2B 能打赢 12B
2.1 AA Intelligence Index 综合榜
Artificial Analysis 权威评测中,MiniCPM5-2B 以 23 分位列全球 4B 以下开源模型第一:
| MiniCPM5-2B | 2B | 23 | 1 |
| Gemma 4 12B | 12B | 22 | 2 |
| Qwen3.5 9B | 9B | 22 | 3 |
| Qwen3.5 4B | 4B | 20 | 4 |
参数量是 Gemma 4 12B 的六分之一,分数反而更高。这就是面壁智能「密度定律」的最新印证:达到特定智能水平的模型参数量每 3.5 个月减半。
2.2 Agentic Index 智能体榜(断层领先)
| MiniCPM5-2B | 2B | 20 |
| Granite 4.2 8B | 8B | 9 |
| Qwen3.5 9B | 9B | 7 |
| gpt-oss-20b | 20B | 3 |
| 同级 2B-3B 模型 | 2-3B | 2 |
20 分 vs 第二名 9 分,差距超过一倍。同级 2B-3B 模型普遍只有 2 分,这是端侧模型首次在通用 Agent 能力上展现出可用雏形。
2.3 GDPval-AA v2 真实工作任务榜
以人类基线 1000 分为锚点的 Elo 评分:
| MiniCPM5-2B | 891 | -109 |
| Granite 4.2 8B | 702 | -298 |
| Granite 4.2 3B | 325 | -675 |
| Ministral 3 3B | 286 | -714 |
MiniCPM5-2B 是所有参评模型中最接近人类水平的一个,领先第二名近 190 分。
2.4 推理效率:不靠堆 token 换分数
完成同样任务,MiniCPM5-2B 平均仅消耗 21K 输出 token(推理 14K + 回答 7K),全场最低一档。作为对比,Qwen3.5 9B 需要 34K,Granite 4.2 8B 需要 26K。对端侧部署来说,更少的 token 意味着更快的响应和更低的功耗。
综合 benchmark 平均分 53.9,同级第二名仅 33.2,甚至超过了参数量翻倍的 Qwen3.5-4B(51.1)。
三、硬件需求:最低什么配置能跑
MiniCPM5-2B 的端侧定位意味着硬件门槛极低:
| INT4 量化 | Q4_K_M | ~1.2GB | 4GB | 8GB 内存 |
| INT8 量化 | Q8_0 | ~2.5GB | 8GB | 16GB 内存 |
| FP16 全精度 | 无 | ~5.0GB | 12GB | 16GB+ 或 GPU 8GB+ |
硬件适配生态(9 款 AI 芯片 + 多平台):
- NVIDIA GPU:20 系及以上(CUDA 加速)
- Intel:酷睿 Ultra 系列 XPU 全异构算力(CPU+GPU+NPU),通过 OpenVINO 优化
- AMD:ROCm 支持
- ARM 端侧:瑞芯微、联发科天玑系列
- 国产芯片:华为昇腾、海光、昆仑芯等
- 纯 CPU:面壁自研 arclight 框架,Intel/AMD CPU 均可运行
关键结论:4GB 内存的电脑就能跑 INT4 量化版,不需要独立显卡。这对「端侧 Agent」的普及意义重大——你的旧笔记本也能成为本地 AI 助手。
四、方式一:Ollama 一键部署(最简单)
Ollama 是目前最简单的本地大模型部署方案,三条命令搞定。
4.1 安装 Ollama
Windows:
irm https://ollama.com/install.ps1 | iex
macOS / Linux:
curl -fsSL https://ollama.com/install.sh | sh
安装完成后验证:
ollama –version
4.2 拉取并运行 MiniCPM5-2B
ollama run minicpm5:2b
首次运行会自动下载模型。如果 Ollama 库尚未收录,可手动导入 GGUF 文件(见下一节)。
4.3 手动导入 GGUF(Ollama 库未收录时)
从 ModelScope 下载 GGUF 量化文件后,创建 Modelfile:
FROM ./minicpm5-2b-q4_k_m.gguf
PARAMETER num_ctx 32768
PARAMETER temperature 0.7
PARAMETER top_p 0.8
TEMPLATE """{{ .System }}
<用户>: {{ .Prompt }}
<助手>: """
SYSTEM "你是 MiniCPM5-2B,一个由面壁智能训练的端侧 AI 助手。"
导入并运行:
ollama create minicpm5-2b -f Modelfile
ollama run minicpm5-2b
4.4 通过 API 调用
Ollama 默认在 11434 端口提供 OpenAI 兼容 API:
curl http://localhost:11434/api/chat -d '{
"model": "minicpm5:2b",
"messages": [{"role": "user", "content": "用 Python 写一个快速排序"}],
"stream": false
}'
Python 调用:
from ollama import chat
response = chat(
model='minicpm5:2b',
messages=[{'role': 'user', 'content': '解释什么是 Agent 的工具调用'}]
)
print(response['message']['content'])
五、方式二:llama.cpp 手动部署(最灵活)
llama.cpp 是 C++ 实现的高性能推理引擎,支持全平台和各类量化方案。
5.1 编译安装
git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp
make GGUF_CUDA=1 # 有 NVIDIA 显卡加此参数,纯 CPU 去掉
5.2 下载 GGUF 量化模型
国内用户推荐从 ModelScope 下载(速度快):
pip install modelscope
python -c "
from modelscope import snapshot_download
snapshot_download('openbmb/MiniCPM5-2B-GGUF',
cache_dir='./models')
"
或者从 HuggingFace 下载(需科学上网):
pip install huggingface_hub
python -c "
from huggingface_hub import snapshot_download
snapshot_download('openbmb/MiniCPM5-2B-GGUF',
cache_dir='./models')
"
下载完成后在 models 目录找到 .gguf 文件,推荐使用 Q4_K_M 量化版本(体积与质量最佳平衡)。
5.3 启动推理
./llama-server \\
-m ./models/minicpm5-2b-q4_k_m.gguf \\
-c 32768 \\
-n 512 \\
–port 8080
参数说明:
- -c 32768:上下文窗口设为 32K(按需调整,最高可到 512K 但显存占用大)
- -n 512:单次生成最大 token 数
- –port 8080:API 服务端口
启动后访问 http://localhost:8080 即可对话,也支持 OpenAI 兼容 API 调用。
5.4 纯命令行对话
./llama-cli \\
-m ./models/minicpm5-2b-q4_k_m.gguf \\
-c 4096 \\
-p "你是一个端侧 AI 助手。请用中文回答:MiniCPM5-2B 的 Agent 能力体现在哪些方面?"
六、方式三:vLLM / SGLang 高性能部署
适合有 GPU 服务器、需要高并发场景的开发者。
6.1 vLLM 部署
pip install vllm
vllm serve openbmb/MiniCPM5-2B \\
–port 8000 \\
–max-model-len 32768 \\
–gpu-memory-utilization 0.9
vLLM 优势在于 PagedAttention 和连续批处理,适合多用户并发调用。MiniCPM5-2B 只有 2B 参数,即使是 4GB 显存的入门级 GPU 也能跑。
6.2 SGLang 部署
pip install sglang
python -m sglang.launch_server \\
–model-path openbmb/MiniCPM5-2B \\
–port 30000 \\
–context-length 32768
SGLang 在 Agent 场景下有针对性优化,支持约束解码和前缀缓存,适合需要大量结构化输出(JSON)的 Agent 任务。
七、方式四:LM Studio 图形界面部署(零命令行)
如果你不想碰命令行,LM Studio 是最友好的方案。
LM Studio 底层基于 llama.cpp,性能与手动编译版接近,但省去了所有环境配置步骤。
八、Agent 能力实测:工具调用 + 文件操作
MiniCPM5-2B 的核心卖点是端侧 Agent 能力。下面用一个实际例子验证。
8.1 接入磁盘工具
给模型提供 4 个文件操作工具:
import json
import os
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8080/v1", api_key="none")
tools = [
{
"type": "function",
"function": {
"name": "list_dir",
"description": "列出指定目录下的文件",
"parameters": {
"type": "object",
"properties": {
"path": {"type": "string", "description": "目录路径"}
},
"required": ["path"]
}
}
},
{
"type": "function",
"function": {
"name": "read_file",
"description": "读取文件内容",
"parameters": {
"type": "object",
"properties": {
"path": {"type": "string", "description": "文件路径"}
},
"required": ["path"]
}
}
},
{
"type": "function",
"function": {
"name": "write_file",
"description": "写入文件",
"parameters": {
"type": "object",
"properties": {
"path": {"type": "string", "description": "文件路径"},
"content": {"type": "string", "description": "写入内容"}
},
"required": ["path", "content"]
}
}
},
{
"type": "function",
"function": {
"name": "search_files",
"description": "按关键词搜索文件",
"parameters": {
"type": "object",
"properties": {
"directory": {"type": "string", "description": "搜索目录"},
"keyword": {"type": "string", "description": "搜索关键词"}
},
"required": ["directory", "keyword"]
}
}
}
]
8.2 执行 Agent 任务
def execute_agent_task(task_prompt):
messages = [
{"role": "system", "content": "你是一个端侧文件管理 Agent。你可以调用工具来读取、写入和搜索文件。"},
{"role": "user", "content": task_prompt}
]
response = client.chat.completions.create(
model="minicpm5-2b",
messages=messages,
tools=tools,
temperature=0.3
)
msg = response.choices[0].message
# 如果模型决定调用工具
if msg.tool_calls:
for call in msg.tool_calls:
func_name = call.function.name
args = json.loads(call.function.arguments)
# 执行工具
if func_name == "list_dir":
result = os.listdir(args["path"])
elif func_name == "read_file":
with open(args["path"], "r") as f:
result = f.read()
elif func_name == "write_file":
with open(args["path"], "w") as f:
f.write(args["content"])
result = "文件写入成功"
elif func_name == "search_files":
result = [f for f in os.listdir(args["directory"])
if args["keyword"] in f]
# 将工具结果送回模型
messages.append(msg)
messages.append({
"role": "tool",
"tool_call_id": call.id,
"content": str(result)
})
# 模型根据工具结果生成最终回复
final = client.chat.completions.create(
model="minicpm5-2b",
messages=messages,
temperature=0.3
)
return final.choices[0].message.content
return msg.content
# 测试:故意说错文件名,看模型能否自己找到
result = execute_agent_task(
"notes 目录里有个 meeting.md,帮我整理成会议纪要,写到 output/纪要.md"
)
print(result)
实测结果(基于公开评测数据):
- 文件不存在时,模型会主动调用 list_dir 找到真实文件名
- 5 轮测试落盘成功率 5/5
- 会议转写稿压缩至约 1/4 篇幅
- 平均处理速度 12 秒/轮
- 未指定负责人的待办项标注「待定」,5/5 未编造人名
8.3 并发结构化抽取
另一个实测场景:50 份合成简历,16 路并发结构化抽取,跑 3 轮:
- 单轮 23 秒跑完 50 份
- 150 次调用 JSON 合法率 150/150
- 字段级准确率 97.1%
- 字段缺失时正确返回 null(低幻觉)
九、混合思考模式:快答与深想灵活切换
MiniCPM5-2B 原生支持混合思考(Hybrid Thinking),可在两种模式间切换:
快速模式(Fast Mode):
- 跳过思维链直接输出
- 延迟 <50ms
- 适合简单问答、闲聊、快速摘要
深度模式(Deep Mode):
- 启用完整思维链推理
- 延迟 500-800ms
- 适合数学推理、代码生成、复杂 Agent 任务
切换方法(通过 system prompt 或参数控制):
# 快速模式:不要求展示推理过程
messages = [
{"role": "system", "content": "直接回答,不需要推理过程。"},
{"role": "user", "content": "北京的人口是多少?"}
]
# 深度模式:要求展示推理过程
messages = [
{"role": "system", "content": "请逐步推理后给出答案。"},
{"role": "user", "content": "一个水池有两个进水管,单独分别需要 6 小时和 8 小时注满,两个管同时开需要多久?"}
]
端侧场景下,这个设计很实用:日常对话用快速模式省电省时,复杂任务切深度模式保证准确率。
十、长文本实测:512K 上下文不是噱头
官方标称 512K 上下文窗口。实测情况:
| 32K | 100% | 完全可用 |
| 64K | 100% | 完全可用 |
| 125K | 准确召回 | 3.3万字合同15个问题全对,其中5道原文无关键词的题也全对 |
| 200K+ | 开头和结尾记住,中间模糊 | 需要压缩或分块处理 |
实际建议:
- 32K 以内:放心用,无需任何处理
- 32K-128K:可用,建议在 prompt 末尾重复关键指令
- 128K 以上:建议分块处理或用 RAG 方案,不要直接塞进去
对比参考:即便是支持 1M 上下文的 Claude,超过 300K 也需要手动压缩。2B 模型能到 125K 已经远超预期。
十一、开源生态:不止权重,连训练配方都给了
这次开源的不仅是模型权重,还包括完整的训练体系:
11.1 四个数据集
| UltraX | 预训练数据治理 | 0.6B 小模型行级自动编辑网页数据 |
| UltraData-Code | 代码预训练 | L0-L3 分级,从 1.92 亿 GitHub 仓库逐级精炼,L2 约 400B token,L3 约 150B token |
| UltraData-SFT-Agent-2609 | Agent SFT | 50万+ Agent 轨迹,覆盖工具调用、Search、CodeAgent、General Agent |
| UltraData-RL-2609 | RL 后训练 | 三阶段清洗:可验证性过滤 → 多模型共识校验 → 难度筛选 |
11.2 RL 框架 Meshy
git clone https://github.com/OpenBMB/Meshy
cd Meshy
pip install -e .
Meshy 的核心设计:
- 去掉中央控制器和 Ray 依赖
- 训练、推理、奖励计算全部建模为对等服务
- TransferQueue 数据就绪状态驱动控制流
- 同步、异步、全异步三种模式灵活切换
11.3 JustRL II 算法
解决端侧模型长思维链 RL 中分数不升反降的问题:
- 数据侧:三阶段流水线筛选校准训练数据
- 算法侧:给 GRPO 装上 Critic,实现词元级信用分配
截至 2026 年 8 月,MiniCPM 系列开源下载量已突破 5000 万次。UltraData 系列数据集总下载量超过 266 万次。
十二、微调:用 LLaMA-Factory 定制你的 Agent
如果你想在 MiniCPM5-2B 基础上微调自己的 Agent:
git clone https://github.com/hiyouga/LLaMA-Factory
cd LLaMA-Factory
pip install -e .
准备训练数据(JSON 格式,参考 UltraData-SFT-Agent-2609 格式):
[
{
"messages": [
{"role": "user", "content": "帮我查一下今天的天气"},
{"role": "assistant", "content": null, "tool_calls": [{"function": {"name": "get_weather", "arguments": "{\\"city\\": \\"北京\\"}"}}]},
{"role": "tool", "content": "{\\"temp\\": 25, \\"weather\\": \\"晴\\"}"},
{"role": "assistant", "content": "北京今天晴,气温25度。"}
]
}
]
启动 LoRA 微调:
llamafactory-cli train \\
–model_name_or_path openbmb/MiniCPM5-2B \\
–dataset your_agent_data.json \\
–finetuning_type lora \\
–lora_rank 16 \\
–output_dir ./minicpm5-agent-lora \\
–num_train_epochs 3 \\
–per_device_train_batch_size 4 \\
–gradient_accumulation_steps 4 \\
–learning_rate 5e-5
2B 模型的 LoRA 微调在单张 8GB 显存的 GPU 上即可完成,训练速度也很快。
十三、CPU 纯推理:arclight 框架
面壁智能自研了 CPU 推理框架 arclight,专门针对端侧 CPU 场景优化。这意味着没有独立显卡的电脑也能跑 MiniCPM5-2B。
arclight 的优化方向:
- 针对 Intel/AMD CPU 的 AVX2/AVX512 指令集优化
- 内存占用极低,INT4 量化仅需 1.2GB 内存
- 支持热加载,模型加载后常驻内存,后续调用零延迟
适用场景:老旧笔记本、迷你主机、工控机、车机等无 GPU 设备。
十四、部署方式对比与选型建议
| Ollama | 极低 | 中 | 个人使用、快速验证 |
| LM Studio | 极低 | 中 | 完全不想碰命令行 |
| llama.cpp | 中 | 高 | 需要精细调参、量化方案选择 |
| vLLM | 中 | 高 | 多用户并发、API 服务 |
| SGLang | 中 | 高 | Agent 任务、结构化输出 |
| ModelScope | 低 | 中 | 国内用户快速下载 |
| arclight | 中 | 低 | 纯 CPU、无 GPU 设备 |
选型决策树:
- 你是新手,只想试试 → Ollama 或 LM Studio
- 你有 GPU,要跑 API 服务 → vLLM 或 SGLang
- 你想精细控制量化参数 → llama.cpp
- 你的电脑没有显卡 → arclight 或 llama.cpp(纯 CPU 模式)
- 你要微调定制 Agent → LLaMA-Factory + ms-swift
十五、FAQ:常见问题
Q1:MiniCPM5-2B 和 Qwen3.5-2B 选哪个?
综合评测 MiniCPM5-2B 平均分 53.9,Qwen3.5-2B 为 33.2,差距明显。Agent 能力上 MiniCPM5-2B 更是断层领先(20 vs 2)。如果你的用途偏向 Agent 和工具调用,选 MiniCPM5-2B。如果只是简单对话,两者都能用。
Q2:4GB 内存真能跑?
INT4 量化后模型仅 1.2GB,加上推理时的 KV Cache 开销,4GB 内存可以跑,但上下文窗口需要限制在 4K-8K。建议 8GB 内存以获得更好体验。
Q3:和云端 API(GPT-4 等)相比差多少?
通用知识问答差距不大,复杂推理和多步骤 Agent 任务仍有明显差距。但端侧的核心价值是隐私安全、离线可用和零成本长期使用。处理敏感数据时,数据不离开设备是合规优势。
Q4:支持中文吗?
支持。MiniCPM 系列从一开始就是中英双语模型,中文能力在同级模型中属于第一梯队。
Q5:能接入 MCP 协议吗?
可以。MiniCPM5-2B 支持 Function Calling,MCP Server 暴露的 Tool 接口可以直接作为 function 传给模型。配合 SGLang 的约束解码功能,结构化输出更稳定。
Q6:Ollama 还没收录怎么办?
模型刚开源,社区适配需要时间。可以手动下载 GGUF 文件后用 Modelfile 导入 Ollama,或直接用 llama.cpp。
十六、总结:端侧 Agent 时代的开端
MiniCPM5-2B 的开源意义不在于跑分有多高,而在于它首次在 2B 参数规模上验证了端侧通用 Agent 的可行性:
- 20 分的 Agentic Index 让同级模型(普遍 2 分)望尘莫及
- 891 分的 GDPval 接近人类基线 1000 分
- INT4 量化仅 1.2GB,4GB 内存可跑
- 连训练数据、RL 框架、训练配方全开源
- 9 款国产芯片适配,从华为昇腾到瑞芯微全覆盖
当 Agent 从云端走向终端,从「按 Token 付费」变成「一次部署零成本」,AI 的触达方式将被重新书写。你的旧电脑,今天就可以成为第一个端侧 Agent 驻地。
资源获取
本文涉及的模型文件、部署脚本、Agent 测试代码、训练数据集地址等资源已整理至网盘:
夸克网盘资源包 1(AIGC 资源 / 工作流模板): https://pan.quark.cn/s/a7d5cb0d9fbe
夸克网盘资源包 2(ComfyUI 整合包 / 模型资源合集): https://pan.quark.cn/s/a8a75ed5ef5a
赛博仓鼠,专注 AI 工具深度部署与资源分享。CSDN / 知乎 / B站 / 闲鱼统一品牌名,所有平台免费分享。
网硕互联帮助中心





评论前必须登录!
注册