openbmb/MiniCPM5-2B
MiniCPM5-2B — dense 2B LLM with hybrid Think/No-Think reasoning, native 128K context, and native tool calling support, built on the standard Llama architecture
2B-class open-source model with strong reasoning and tool use
Guide
Overview
MiniCPM5-2B is the 2B checkpoint in OpenBMB's MiniCPM5 series — a dense
model built for on-device and resource-constrained deployment, with strong
performance on agentic tool use, code generation, and reasoning tasks.
It uses the standard LlamaForCausalLM architecture, so vLLM loads it
natively with no custom kernels or model-code fork.
Its headline feature is hybrid reasoning: a single checkpoint serves as
both a fast assistant (No-Think) and a deliberate reasoner (Think), toggled by
the chat template's enable_thinking flag.
Prerequisites
- vLLM ≥ 0.21.0 — MiniCPM5-2B is supported natively as of the v0.21.0 release.
Launch command
Use the command builder above. The baseline is simply:
vllm serve openbmb/MiniCPM5-2B --port 8000
At ~2B params the model fits on a single GPU (TP=1). It supports the full
native 128K context; drop --max-model-len to 8192 / 32768 to free KV
cache on small GPUs.
Reasoning modes
Toggle the Reasoning feature to serve with deep-thinking on by default
(--default-chat-template-kwargs '{"enable_thinking": true}'). You can also
flip it per request via chat_template_kwargs:
curl http://localhost:8000/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "openbmb/MiniCPM5-2B",
"messages": [{"role": "user", "content": "Explain GQA in one sentence."}],
"temperature": 0.9, "top_p": 0.95, "max_tokens": 1024,
"chat_template_kwargs": {"enable_thinking": true}
}'
| Mode | enable_thinking | temperature | top_p |
|---|---|---|---|
| Think | true | 0.9 | 0.95 |
| No-Think | false | 1.0 | 0.95 |
Tool calling
MiniCPM5-2B emits XML-style tool calls. The minicpm5 parser
(PR #43175) is natively
supported in vLLM. Enable it with:
vllm serve openbmb/MiniCPM5-2B --port 8000 \
--enable-auto-tool-choice \
--tool-call-parser minicpm5