ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

MiniCPM5-2B 端侧部署与推理实战:架构解析、评测解读与 vLLM / SGLang / llama.cpp / Transformers 快速上手

MiniCPM5-2B 端侧部署与推理实战:架构解析、评测解读与 vLLM / SGLang / llama.cpp / Transformers 快速上手 人工智能大模型基础模型【免费下载链接】MiniCPM5-2BMiniCPM5-2B 是一款面向端侧、本地部署和资源受限场景的 2B 稠密 Transformer能够达到同尺寸开源模型 SOTA 水平。项目地址https://ai.gitcode.com/OpenBMB/MiniCPM5-2B点击查看免费下载MiniCPM5-2B 是 OpenBMB 开源的 MiniCPM5 系列第二个模型一款面向端侧、本地部署和资源受限场景的 2B 稠密 Transformer采用标准LlamaForCausalLM架构并原生支持 131,072 token 长上下文。本文以官方 README 为主线结合仓库中的 config.json、tokenizer_config.json、chat_template.jinja 等文件系统讲解它的模型规格、评测表现、训练配方并给出 vLLM、SGLang、llama.cpp、Transformers 四个主流框架从安装到请求验证的完整实操流程。读完本文你将能够独立完成 MiniCPM5-2B 的本地部署、OpenAI 兼容服务启动、DSpark 投机采样加速与工具调用配置。模型概览2B 参数、Llama 架构、原生长上下文MiniCPM5-2B 是继 MiniCPM5-1B 之后 MiniCPM5 系列的第二个成员定位为本地助手local assistant、编码智能体coding agent、工具调用流程tool-use workflow与偏好紧凑模型的推理场景。它保持较小的部署 footprint同时提供原生长上下文支持。根据 README 的 Model Information 与仓库根目录 config.json 中的实际配置模型规格汇总如下项目值说明类型Causal Language Model自回归因果语言模型架构标准LlamaForCausalLM主流引擎可直接加载无自定义算子、无模型代码 fork总参数量2,516,756,480约 25.2 亿非嵌入参数量1,981,982,720约 19.8 亿层数num_hidden_layers42见 config.json注意力头GQAQ 16 / KV 2num_attention_heads16num_key_value_heads2隐藏维度hidden_size2048见 config.jsonFFN 中间维度intermediate_size6144见 config.json上下文长度max_position_embeddings131,072原生支持无需外推词表大小vocab_size130,560见 config.jsonRoPE baserope_theta5,000,000支撑长上下文的关键配置之一默认精度bfloat16torch_dtype: bfloat16README 亦注明权重为 BF16几点值得注意的实现细节GQAGrouped Query AttentionQ 有 16 个头KV 只有 2 个头显著压缩了长上下文场景下的 KV Cache 占用是模型能够以 2B 级体量支撑 131K 上下文的重要原因。结束符配置eos_token_id为[1, 130073]即同时把/s与|im_end|视为结束符pad_token_id复用1见 config.json。禁用位置编码外推rope_scaling为null说明 131,072 的上下文长度来自训练阶段本身而非推理时的缩放技巧。所有权重单文件从 model.safetensors.index.json 可以看到全部张量embed、42 层 Transformer 的 attention/MLP、lm_head均存放于单个 model-00000-of-00001.safetensors 中权重总大小约 5.03 GB便于本地分发与加载。评测结果2B 级 SOTA多项能力可与 4B 级模型竞争README 在 Evaluation Results 一节给出了 MiniCPM5-2B 与同尺寸及更大尺寸开源模型的横向对比。对比集合包括2B 级模型LFM2.5-2.6B、Qwen3.5-2B、Gemma-4-E2B-it4B 级参考模型Qwen3.5-4B、granite-4.2-3B、Nemotron-3-Nano-4B、Gemma-4-E4B-it、LFM2.5-8B-A1B。在 README 给出的对比集合内MiniCPM5-2B 平均分为53.9达到 2B 级开源模型 SOTA且高于参与对比的全部更大规模模型其中最高分为 Qwen3.5-4B 的51.1。优势最明显的维度集中在代码推理、数学推理、长文本理解、工具调用与多个智能体任务。以下为 README 表格中 MiniCPM5-2B 各基准得分部分分数带 † 标记表示取自 Artificial Analysis 官方公布值其余为内部复现结果能力维度基准MiniCPM5-2B 得分代码推理LiveCodeBench v669.1代码推理LCB-Pro 25Q2 (Easy)68.0代码推理LCB-Pro 25Q2 (Medium)17.5代码推理OJBench32.5代码推理SciCode (wbg) †26.3数学推理AIME 202586.5数学推理AIME 202686.5数学推理HMMT Feb 202663.8数学推理MATH-50094.6指令遵循IFBench66.3指令遵循IFEval86.7指令遵循Multi-IF71.8综合知识MMLU-Pro70.8综合知识MMLU-Redux84.7综合知识HLE †8.9综合知识GPQA-Diamond †70.2综合知识SuperGPQA40.8长文本AA-LCR †59.0长文本NoLiMa68.1长文本LongBenchPro44.8长文本LongBench v243.7工具调用τ³-Bench Banking †20.8工具调用τ²-Bench Telecom97.1工具调用BFCL v466.6代码智能体SWE-bench Verified46.4代码智能体SWE-bench Pro14.4代码智能体Terminal-Bench v2.1 †8.6搜索智能体BrowseComp-ZH43.5搜索智能体BrowseComp Top10039.7搜索智能体GAIA Text-10388.7通用智能体GDPval-AA v2 †19.6通用智能体Claw-Gym59.2通用智能体WildClaw23.9通用智能体QwenClaw42.9需要说明的是上述分数均为 README 官方公布的对比集合内结果实际选型时建议结合自己的任务与评测口径复测。训练配方UltraData 分级数据管理下的三阶段流程MiniCPM5-2B 的训练是UltraData 分级数据管理体系的一次完整实践覆盖三个阶段base training、mid-training 与 post-training。基座训练与中期训练Base Mid-trainingBase training采用逐级推进的训练配方包含 stable training稳定训练与 decay training衰减训练用于建立基础语言能力与训练稳定性Mid-training进一步强化目标能力并适配目标数据分布。基座与中期阶段的训练语料均随模型一并开源包括Ultra-FineWeb高质量网页预训练数据集对应 README front-matter 中openbmb/Ultra-FineWebUltra-FineWeb-L3openbmb/Ultra-FineWeb-L3分级后的高质量语料UltraXopenbmb/UltraX-Preview高质量网页预训练数据UltraData-Codeopenbmb/UltraData-CodeL0–L3 分级代码数据管理驱动代码能力跃升UltraData-Mathopenbmb/UltraData-Math数学数据。后训练SFT → RL → OPD后训练阶段按 SFT、RL、OPD 三步推进SFT使用400B tokens 的 deep-thinking SFT建立深度思考与通用对话能力。对应数据为 UltraData-SFT-2605openbmb/UltraData-SFT-2605与 Agent SFT 数据 UltraData-SFT-Agent-2609openbmb/UltraData-SFT-Agent-260950 万 Agent 训练样本RL针对数学、代码、Agent 任务、写作等相关领域训练专用RL teacher模型。RL 阶段采用 critic-based 算法README 中引述为 JustRL II 所述方法显著提升训练稳定性并带来跨领域收益。相关数据开源为 UltraData-RL-2609openbmb/UltraData-RL-2609超 8 万条高质量 RL 样本覆盖数学、代码、通用知识与长文本推理OPDOn-Policy Distillation在线策略蒸馏将 16 个 RL 训练所得专家模型含 5 个 agentic 专家模型的能力合并回同一个发布模型。OPD 的技术要点来自 README在 response 序列的每个位置对 student 与 teacher 的 logits 计算**全词表反向 KL 散度reverse KL divergence**作为优势估计值替代原有的 verification-based advantage蒸馏数据直接复用各 RL teacher 训练时的 prompt无需额外构造语料。README 给出的量化收益为RL OPD 使推理与通用能力平均提升↑10.96 分Agent 能力平均提升↑6.96 分。模型家族与版本选择MiniCPM5-2B 官方按训练阶段与运行格式发布了一整条模型链可按运行环境选择对应格式详见 README 的 Model List模型阶段/格式适用场景MiniCPM5-2BBF16 正式版RL OPD 后默认推荐MiniCPM5-2B-SFTBF16仅 SFT checkpoint研究训练过程、继续微调MiniCPM5-2B-MidtrainBF16mid-training checkpoint研究训练过程MiniCPM5-2B-BaseBF16仅预训练 base研究训练过程、自定义后训练MiniCPM5-2B-GGUFGGUFllama.cpp / Ollama / LM StudioMiniCPM5-2B-MLXMLX / 4bitApple SiliconMiniCPM5-2B-GPTQGPTQ / 4bit显存受限的 GPU 推理MiniCPM5-2B-DSparkDSpark 草稿模型SGLang 投机采样加速MiniCPM5-2B-DSpark-GGUFGGUF 版 DSpark 草稿模型配合 GGUF 主模型加速MiniCPM5-2B-LiteRT.litertlmAndroid / iOS / 桌面 / IoT 端侧此外 MiniCPM5-1B 系列还提供正式版、SFT、Base、GGUF、MLX 等格式适合更极端的资源约束场景。快速上手四个主流推理框架完整实操README 建议在生成时使用以下采样参数组合temperature1.0, top_p0.95, min_p0.0如果遇到重复输出可尝试temperature1.0, top_p0.95, min_p0.0, repetition_penalty1.05注意不同推理框架对采样参数的支持程度有所差异例如 llama.cpp 对min_p的默认值与 Transformers 不同详见下文。vLLM一行命令启动 OpenAI 兼容服务pip install vllm0.21 vllm serve openbmb/MiniCPM5-2B --port 8000启动后即可用 OpenAI 兼容的 Chat Completions 接口验证curl http://localhost:8000/v1/chat/completions \ -H Content-Type: application/json \ -d { model: openbmb/MiniCPM5-2B, messages: [{role: user, content: Who are you? Please briefly introduce yourself.}], max_tokens: 128, temperature: 1.0 }SGLang支持 DSpark 投机采样的高性能后端pip install sglang[srt]0.5.16 python -m sglang.launch_server --model-path openbmb/MiniCPM5-2B --port 30000同样通过 OpenAI 兼容接口请求curl http://localhost:30000/v1/chat/completions \ -H Content-Type: application/json \ -d { model: openbmb/MiniCPM5-2B, messages: [{role: user, content: Who are you? Please briefly introduce yourself.}], max_tokens: 128, temperature: 1.0 }DSpark 投机采样加速MiniCPM5-2B 配套发布了 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-dspark-block-size 7是 DSpark 算法特有的块大小参数需配合官方发布的草稿模型使用。llama.cppGGUF 本地推理与 min_p 陷阱使用官方发布的MiniCPM5-2B-F16.gguf对应 MiniCPM5-2B-GGUFllama-server -m MiniCPM5-2B-F16.gguf -a MiniCPM5-2B --port 8080 -ngl 99 -c 8192 --jinja-c 8192设置上下文长度为 8192可自行调整-ngl 99表示尽可能将层卸载到 GPU--jinja启用 Jinja 聊天模板支持。请求验证curl http://localhost:8080/v1/chat/completions \ -H Content-Type: application/json \ -d { model: MiniCPM5-2B, messages: [{role: user, content: 11?}], temperature: 1.0, top_p: 0.95, min_p: 0.0, max_tokens: 256 }README 特别提醒了 llama.cpp 的一个采样陷阱llama.cpp 默认min_p0.05会过滤掉概率低于最高概率 token 5% 的 token这种过滤反而可能引发重复输出——它恰恰过滤掉了模型摆脱重复循环所需的那些 token。因此要显式设置min_p0.0以禁用该过滤。Transformers本地 Python 推理pip install -U transformers5.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_dtypeauto, device_mapauto, ) messages [{role: user, content: Who are you? Please briefly introduce yourself.}] inputs tokenizer.apply_chat_template( messages, tokenizeTrue, add_generation_promptTrue, enable_thinkingTrue, return_dictTrue, return_tensorspt, ).to(model.device) outputs model.generate(**inputs, max_new_tokens128) print(tokenizer.decode(outputs[0][inputs[input_ids].shape[-1]:], skip_special_tokensTrue))两个值得注意的调用细节enable_thinkingTrue这是apply_chat_template的关键参数。对照仓库根目录 chat_template.jinja 末尾的生成提示逻辑可以看到add_generation_promptTrue时模板会输出|im_start|assistant\n随后根据enable_thinking的值决定是否输出think\n开头的思考标记enable_thinkingFalse时则输出空思考块think\n\n/think\n\n。该模板还支持从message.reasoning_content或内容中的think.../think片段解析推理内容并将其与最终回答分层渲染。model.generate只传max_new_tokensREADME 示例未显式传采样参数但 generation 配置中默认开启采样generation_config.json 中do_sampletrue, temperature1.0, top_p0.95与 README 推荐参数一致。思考机制与工具调用的 token 层面对接从 tokenizer_config.json 可以看到MiniCPM5-2B 在词表层面内置了一套与深度思考、工具调用配套的特殊 token思考类thinkid 8、/thinkid 9、|thought_begin|id 130075、|thought_end|id 130076对话控制|im_start|id 130072、|im_end|id 130073同时是 eos、|im_sep|id 4工具调用类tools、arguments、parameters、function、/function、param、/param、tool_response、/tool_response、tool_call等对应 id 2、3、10–21、130077控制指令/thinkid 130080、/no_thinkid 130081、|execute_start|/|execute_end|id 130078/130079。同时 chat_template.jinja 在工具调用路径上实现了完整的 XML 化渲染当对话中存在tool_calls时模板会把 OpenAI 风格的 function call 转换为function name...param name...value/param/function的 XML 片段并在其中对包含、、换行符的参数值自动包裹 CDATA工具返回内容则通过tool_response.../tool_response包裹并合并进 user 消息。这正是 README 所说MiniCPM5-2B 以 XML 格式产出工具调用的模板层基础。工具调用Tool CallingSGLang 是推荐后端对于工具 / 函数调用README 明确推荐SGLang作为后端。MiniCPM5-2B 以 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选择--tool-call-parser minicpm5使用模型专属解析器auto则让 SGLang 自动探测合适的解析器。接入后你的应用可以用与 OpenAI 完全一致的tool_calls数据结构驱动 Agent 循环。部署与微调生态Cookbooks 与 Agent Skills 速查MiniCPM5-2B 采用标准LlamaForCausalLM架构主流推理引擎可以直接加载无需自定义算子也无模型代码 fork。README 按后端与框架整理了部署和微调的官方 cookbooks并将配套的 Agent Skills供 Cursor / Claude Code 类 coding agent 使用作为 GitHub 资源提供。部署矩阵后端模型格式 / 适用场景CookbookAgent SkillTransformersBF16 / FP16本地 Python 推理GPU CPUtransformers.mdminicpm5-deploy-transformersvLLMBF16 / FP16 OpenAI servervllm.mdminicpm5-deploy-vllmSGLangBF16 / FP16 OpenAI server推荐用于 tool callingsglang.mdminicpm5-deploy-sglangllama.cppGGUFCPU/GPU 本地推理llama_cpp.mdminicpm5-deploy-llama-cppOllamaGGUF本地端侧运行ollama.mdminicpm5-deploy-ollamaLM StudioGGUFMac 桌面应用与 OpenAI serverlmstudio.mdminicpm5-deploy-lmstudioMLXMLX / 4bitApple Silicon 本地推理mlx.mdminicpm5-deploy-mlxArcLightGGUF 本地端侧 / CPU / 桌面 / 服务器arclight.mdminicpm5-deploy-arclightvLLM AscendBF16 / FP16 OpenAI servervllm_ascend.mdminicpm5-deploy-vllm-ascendLiteRT-LM.litertlm端侧运行时Android / iOS / 桌面 / IoTCPU GPUlitert.mdminicpm5-deploy-litert微调矩阵框架适用场景CookbookAgent SkillTRL PEFTLoRA / SFT 微调trl.mdminicpm5-finetune-trlLLaMA-Factory微调llamafactory.mdminicpm5-finetune-llamafactoryms-swift微调ms_swift.mdminicpm5-finetune-ms-swiftunsloth微调unsloth.mdminicpm5-finetune-unsloth多芯片部署FlagOS 支持除上述框架外MiniCPM5-2B 还通过FlagOS支持多芯片部署。FlagOS 是由北京智源研究院联合国内外科研机构、芯片企业、系统厂商与算法/软件单位共同发起的开源社区致力于构建面向多种 AI 芯片的统一开源系统软件栈大型算子库、统一 AI 编译器、并行训推框架、统一通信库等实现模型-系统-芯片三层贯通的开放技术生态与一次开发、跨芯迁移。在 FlagRelease 平台FlagOS 团队构建的多架构 AI 芯片大模型自动迁移、适配与发布平台上MiniCPM5-2B 已发布 9 种芯片的适配版本Nvidia、Hygon、Metax、Iluvatar、Zhenwu、Mthreads、Kunlunxin、Ascend、ARM-v9。从零开始启用 FlagOS 加速的要点README 中的示例流程环境依赖Python 3.12、GLIBC 2.39、GLIBCXX 3.4.33、CXXABI 1.3.15安装 FlagGems 算子库pip install flag-gems4.2.1rc0 pip install triton3.5.1在 vLLM 推理源码中开启加速import flag_gems flag_gems.enable(recordTrue, onceTrue, path/root/gems.txt)以 BF16 启动 vLLM 服务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 在多种硬件环境下的功能与性能README 中提供了 Nvidia 从零开始 / 从 FlagRelease 开始两条使用路径。局限性与合规提示按 README 的 Limitations and Disclaimer本模型不具备自主意识或法律主体资格输出仅为基于统计模式的文本生成结果可能不准确、有偏见或具冒犯性也可能被精心设计的提示词越狱操纵。对政治、健康、金融、法律等敏感话题的回答未经专家审核不应视为专业建议。模型按现状提供不附带明示或默示担保使用者应仅将其用于合法、合规且符合伦理的目的自行配置安全措施并按当地要求标识 AI 生成内容。总结一个小体量、全能力的端侧基座从仓库证据来看MiniCPM5-2B 的定位非常清晰以 2.5B 参数的标准 Llama 架构为骨架通过 GQA 压缩 KV Cache、RoPE base 5e6 支撑 131K 原生上下文以 UltraData 分级数据 SFT/RL/OPD 三段式后训练在代码、数学、长文本、工具调用与 Agent 任务上取得 README 对比集合内的领先成绩。部署侧则覆盖了从 GPU 服务器vLLM/SGLang、桌面与笔记本llama.cpp/Ollama/LM Studio、Apple SiliconMLX到手机/IoT 端侧LiteRT-LM、ArcLight的完整链路并有配套的微调框架与多芯片支持。对本仓库目录做一次快速回顾便于你后续深入README.md / README-cn.md官方英文 / 中文文档本文的信息主体config.json架构与训练配置层数、GQA、RoPE、上下文、词表generation_config.json默认采样参数temperature1.0、top_p0.95chat_template.jinja聊天模板含深度思考与 XML 工具调用渲染逻辑tokenizer_config.json 与 tokenizer.json特殊 token 体系与词表model.safetensors.index.json 与 model-00000-of-00001.safetensorsBF16 权重文件约 5.03 GB。如需在本地复现推理直接按照快速上手一节按需选用 vLLM、SGLang、llama.cpp 或 Transformers 任一方案即可。赞分享人工智能大模型基础模型【免费下载链接】MiniCPM5-2BMiniCPM5-2B 是一款面向端侧、本地部署和资源受限场景的 2B 稠密 Transformer能够达到同尺寸开源模型 SOTA 水平。项目地址https://ai.gitcode.com/OpenBMB/MiniCPM5-2B点击查看免费下载相关推荐MiniCPM5-2B 端侧大模型实战指南Llama 架构、131K 长上下文与多框架部署全解析MiniCPM5 2B 端侧大模型实战指南Llama 架构、131K 长上下文与多框架部署全解析 本篇技术指南以 OpenBMB 开源的 MiniCPM5 2人工智能大模型基础模型MiniCPM5-1B / MiniCPM5-2B 使用 Hugging Face Transformers 部署单 GPU 与 CPU 推理实战指南MiniCPM5 1B / MiniCPM5 2B 使用 Hugging Face Transformers 部署单 GPU 与 CPU 推理实战指南 本篇技大模型本地部署模型量化微调LoRA工具调用openBMBAscendXinference 推理后端Backends完全指南llama.cpp、Transformers、vLLM、SGLang、MLX 与投机解码实战Xinference 推理后端Backends完全指南llama.cpp、Transformers、vLLM、SGLang、MLX 与投机解码实战 Xin模型推理服务人工智能大模型本地部署多模态语音创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表