MiniCPM5-1B Agentic Tooluse Merged FP16

Standalone merged FP16 checkpoint of openbmb/MiniCPM5-1B and the latest MiniCPM5-1B-Agentic-Tooluse-QLoRA-v2 adapter after the July 2026 Nemotron SFT+DPO repair.

This repository contains the complete model. It is not an adapter and does not require PEFT at inference time.

Repositories

Format Repository
Merged FP16 Transformers model This repository
LoRA/PEFT adapter MiniCPM5-1B-Agentic-Tooluse-QLoRA-v2
F16, Q8_0 and Q4_K_M GGUF MiniCPM5-1B-Agentic-Tooluse-GGUF

Current Files

The current model weights are one indexed checkpoint:

  • model-00001-of-00002.safetensors
  • model-00002-of-00002.safetensors
  • model.safetensors.index.json

The repository also includes the matching tokenizer, chat_template.jinja, model configuration, generation configuration and external evaluation artifacts. The previous single-file model remains recoverable from Hub history but is not part of the current branch.

Tool-Calling Behavior

MiniCPM5-1B natively emits XML-style calls:

<function name="tool_name"><param name="parameter">value</param></function>

The fine-tuning specializes first-call tool selection, function-name accuracy, argument selection, schema-copy avoidance and repeated-call suppression.

An application remains responsible for parsing and validating calls, executing tools externally, and returning tool results in a new turn.

Recommended Tool-Calling Deployment

OpenBMB recommends SGLang with its built-in MiniCPM5 parser:

pip install "sglang[srt]>=0.5.12"

python -m sglang.launch_server \
  --model-path ewinregirgojr/MiniCPM5-1B-Agentic-Tooluse-Merged-FP16 \
  --port 30000 \
  --tool-call-parser minicpm5

The parser converts a completed <function ...>...</function> block into an OpenAI-compatible tool_calls response.

Transformers

import torch
from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "ewinregirgojr/MiniCPM5-1B-Agentic-Tooluse-Merged-FP16"

tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
    model_id,
    dtype=torch.float16,
    device_map="auto",
)
model.eval()

Use tokenizer.apply_chat_template(...) and the repository's matching chat template. For deterministic tool selection, override the sampling defaults:

outputs = model.generate(
    **inputs,
    do_sample=False,
    max_new_tokens=128,
    pad_token_id=tokenizer.pad_token_id,
    eos_token_id=tokenizer.eos_token_id,
)

Remove token_type_ids from inputs if the installed Transformers/tokenizer combination returns them, because this Llama model does not consume that argument.

vLLM

The merged safetensors checkpoint is the preferred format for vLLM:

vllm serve ewinregirgojr/MiniCPM5-1B-Agentic-Tooluse-Merged-FP16

Parser availability depends on the installed vLLM release. Use SGLang's official minicpm5 parser path when OpenAI-compatible tool-call extraction is required and the vLLM build does not provide an equivalent parser.

External Evaluation

The final adapter and this merged checkpoint have identical weights for evaluation purposes. Evaluation used 300 examples derived from the external Team-ACE/ToolACE dataset, deterministic decoding, and the same cases for both models. This is not an official ToolACE or BFCL leaderboard submission.

Metric Base MiniCPM5-1B Repaired model Delta
Parseable tool call 0.0133 0.9933 +0.9800
Valid available-tool name 0.0133 0.9700 +0.9567
Expected tool name 0.0133 0.9267 +0.9133
Exact arguments 0.1500 0.6533 +0.5033
Argument-key overlap 0.0033 0.7517 +0.7484
No schema copying 1.0000 1.0000 +0.0000
No repetition 0.9967 1.0000 +0.0033
Natural clean termination 0.0000 0.1500 +0.1500

The full rows and metrics are published in:

  • external_toolace_base_vs_nemotron_dpo_eval.json
  • EVAL_RESULTS.md

Understanding the 15% Termination Metric

stopped_cleanly_rate=0.15 is a strict natural-termination metric. It measures whether the model naturally ended immediately after a completed function call without runtime intervention.

It does not mean that only 15% of cases produced usable calls. In the same evaluation, 99.33% were parseable, 97% used an available tool name, and 92.67% selected the expected tool.

MiniCPM5's deployment contract uses a parser to extract the completed XML function block. Production should treat the first completed </function> as the action boundary and prevent generated synthetic tool responses or later dialogue from being interpreted as additional actions.

Training Lineage

The current adapter was produced by:

  1. Earlier xLAM/Glaive SFT and preference-repair stages.
  2. Targeted Nemotron SFT continuation from the previous DPO adapter.
  3. DPO preference optimization over valid versus corrupted tool calls.
  4. Merge into openbmb/MiniCPM5-1B.

Nemotron sources used in the repair:

  • nvidia/Nemotron-SFT-Agentic-v2
  • nvidia/Nemotron-RL-Agentic-Function-Calling-Pivot-v1
  • nvidia/Nemotron-RL-Agentic-Conversational-Tool-Use-Pivot-v1

The data pipeline inspected physical dataset files, skipped one malformed JSONL row in the SFT tool-calling file, removed oversized policy text where needed, preserved tool schemas and recent context, and rejected unknown arguments, schema-copy placeholders and invalid expected tools.

Measured Improvements and Scope

This merged checkpoint contains the same repaired adapter behavior and improved every reported task-quality metric over base MiniCPM5-1B:

  • Parseable calls: 1.33% -> 99.33%
  • Valid available-tool names: 1.33% -> 97.00%
  • Expected-tool selection: 1.33% -> 92.67%
  • Exact arguments: 15.00% -> 65.33%
  • Argument-key overlap: 0.33% -> 75.17%
  • No repetition: 99.67% -> 100.00%
  • Natural clean termination: 0.00% -> 15.00%

The remaining gap to 100% is residual error after a large improvement, not evidence that merging or fine-tuning degraded the base model.

Deployment Notes

  • Schema validation, permission checks and confirmation for sensitive actions are standard requirements for every tool-calling model.
  • Exact-argument accuracy improved by 50.33 percentage points; applications should still validate generated values before execution.
  • Valid-name accuracy improved by 95.67 percentage points; rare near misses can remain on unseen tool libraries.
  • Natural termination improved from 0% to 15%. MiniCPM5's parser-based serving contract extracts the completed call, so this metric is separate from the 99.33% parseable-call rate.
  • The external evaluation is custom rather than an official ToolACE/BFCL leaderboard submission.
  • GGUF quantizations may differ slightly from FP16 and are published separately.
Downloads last month
898
Safetensors
Model size
1B params
Tensor type
F16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for ewinregirgojr/MiniCPM5-1B-Agentic-Tooluse-Merged-FP16

Finetuned
(35)
this model
Quantizations
1 model

Evaluation results

  • Parseable tool-call rate on External ToolACE-derived first-call evaluation
    self-reported
    0.993
  • Available-tool name rate on External ToolACE-derived first-call evaluation
    self-reported
    0.970
  • Expected tool-name rate on External ToolACE-derived first-call evaluation
    self-reported
    0.927
  • Exact-arguments rate on External ToolACE-derived first-call evaluation
    self-reported
    0.653