Instructions to use openbmb/MiniCPM5-2B-GGUF with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use openbmb/MiniCPM5-2B-GGUF with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="openbmb/MiniCPM5-2B-GGUF") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("openbmb/MiniCPM5-2B-GGUF", device_map="auto") - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use openbmb/MiniCPM5-2B-GGUF with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M # Run inference directly in the terminal: llama cli -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M # Run inference directly in the terminal: llama cli -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M # Run inference directly in the terminal: ./llama-cli -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M # Run inference directly in the terminal: ./build/bin/llama-cli -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Use Docker
docker model run hf.co/openbmb/MiniCPM5-2B-GGUF:Q4_K_M
- LM Studio
- Jan
- vLLM
How to use openbmb/MiniCPM5-2B-GGUF with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "openbmb/MiniCPM5-2B-GGUF" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "openbmb/MiniCPM5-2B-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/openbmb/MiniCPM5-2B-GGUF:Q4_K_M
- SGLang
How to use openbmb/MiniCPM5-2B-GGUF with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "openbmb/MiniCPM5-2B-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "openbmb/MiniCPM5-2B-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "openbmb/MiniCPM5-2B-GGUF" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "openbmb/MiniCPM5-2B-GGUF", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use openbmb/MiniCPM5-2B-GGUF with Ollama:
ollama run hf.co/openbmb/MiniCPM5-2B-GGUF:Q4_K_M
- Unsloth Desktop
- Pi
How to use openbmb/MiniCPM5-2B-GGUF with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Configure the model in Pi
# Install Pi: npm install -g @earendil-works/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "openbmb/MiniCPM5-2B-GGUF:Q4_K_M" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use openbmb/MiniCPM5-2B-GGUF with Docker Model Runner:
docker model run hf.co/openbmb/MiniCPM5-2B-GGUF:Q4_K_M
- Lemonade
How to use openbmb/MiniCPM5-2B-GGUF with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Run and chat with the model
lemonade run user.MiniCPM5-2B-GGUF-Q4_K_M
List all available models
lemonade list
- Hermes Agent
How to use openbmb/MiniCPM5-2B-GGUF with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use openbmb/MiniCPM5-2B-GGUF with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf openbmb/MiniCPM5-2B-GGUF:Q4_K_M
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "openbmb/MiniCPM5-2B-GGUF:Q4_K_M" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
MiniCPM5-2B on an i3-6006U (CPU only): Q3–Q8 throughput + a small blind eval
I’ve been running MiniCPM5-2B with llama.cpp on an old Intel i3-6006U (2C/4T, Skylake, CPU only), and figured I’d leave some of the results here in case they’re useful to anyone else testing it on CPU.
The main throughput runs used 2 threads on a clean, unattended system:
| Quant | pp512 | tg128 |
|---|---|---|
| Q3_K_M | 11.49 tok/s | 8.26 tok/s |
| official Q4_K_M | 19.79 tok/s | 9.08 tok/s |
| IQ4_XS | 21.83 tok/s | 6.98 tok/s |
| Q5_K_M | 10.06 tok/s | 6.49 tok/s |
| Q6_K | 12.81 tok/s | 7.20 tok/s |
| official Q8_0 | 15.67 tok/s | 6.04 tok/s |
The official Q4_K_M was the fastest for generation in this set, while IQ4_XS had the highest pp512 throughput. Q5_K_M and Q6_K were surprisingly slow on this Skylake CPU, especially compared with Q4.
I also did a small blind comparison of Q4, Q6 and Q8 across 9 qualitative cases. Q8 was the most consistent of the three in that sample and never ranked last. It’s a small sample, though, so I wouldn’t treat that as a general quality ranking between the quants.
One failure mode I found interesting was a fabricated-API prompt. Both Q4 and Q8 accepted the false premise and confidently produced implementation details for an API that didn’t exist.
I also ran a small reasoning ON/OFF ablation. OFF ranked better in that sample, but the extraction procedure wasn’t uniform across candidates, so I’d treat that result as exploratory rather than evidence that reasoning should generally be disabled.
I kept the raw outputs, blind mappings, benchmark logs, scripts, protocol notes and experiment limitations here:
https://github.com/Noggurix/minicpm5-2b-local-eval
This isn’t intended as a standardized benchmark suite, just a local evaluation on fairly old CPU hardware with the artifacts preserved so the results can be inspected.
There still doesn’t seem to be much detailed CPU-only data for MiniCPM5-2B, so I wanted to leave these results somewhere reproducible instead of letting them disappear into a one-off benchmark post.