MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE-GGUF
GGUF files of ewin-reg/MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE for llama.cpp: a 1B vision-language model fine-tuned to answer with one exact tool call.
In plain words
You give the model a conversation and a list of tools. It thinks briefly, then writes the tool call it wants to make (tool name and arguments). This repo has it in files that llama.cpp loads directly, so it runs without Python or PyTorch.
- Use the Q8_0 file if you want the smaller one (about half the size of f16). Use f16 if you want the unquantized weights.
- Images need the extra
mmprojfile. For text-only tool calling you do not need it. - These are the weights now on
mainof ewin-reg/MiniCPM-V-4.7-1B-Agentic-FwS (v9). They are a statistical tie with the previous v6 (revisionf7c6ea0), not a proven improvement. - On the same 1000 val rows the
mainmodel scores exact 0.414 against 0.334 for Claude Haiku 5.5 run as a subagent (paired difference +0.080, SE 0.0141). That is agreement with Nemotron-style gold answers, which this model trained on, not a general tool-use ranking. The scores are for the fp16 model, not for these GGUF files. - Image understanding was not tested for this fine-tune. The training and all scores are text-only tool calling.
Files
| file | size | what it is |
|---|---|---|
MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE-f16.gguf |
1930.6 MiB | text model, f16 |
MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE-Q8_0.gguf |
1031.4 MiB | text model, Q8_0 (made with llama-quantize from the f16 file) |
mmproj-MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE-f16.gguf |
1057.4 MiB | vision tower and projector, f16 |
mmproj-MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE-Q8_0.gguf |
694.2 MiB | vision tower and projector, Q8_0 (convert_hf_to_gguf.py --mmproj --outtype q8_0) |
How to use
Needs a llama.cpp build that supports MiniCPMV4_7; these files were made with llama.cpp commit 2280f0f.
Text only (prompt already in the Qwen chat format, ending with <|im_start|>assistant\n<think>\n):
llama-completion -m MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE-Q8_0.gguf -f prompt.txt -n 768 --temp 0 -c 4096 -no-cnv --no-display-prompt
With an image:
llama-mtmd-cli -m MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE-Q8_0.gguf --mmproj mmproj-MiniCPM-V-4.7-1B-Agentic-FwS-FlashREINFORCE-Q8_0.gguf --image picture.png -p "Describe this image." -c 4096 -ngl 99
The model first writes a <think> block, then </think>, then a call in this form:
<tool_call>
<function=get_special_tickers>
</function>
</tool_call>
llama.cpp prints [end of text] when the model stops; strip it before parsing the call.
What was checked
Only a small sanity check was run on these GGUF files, on CPU with llama.cpp: greedy decoding on the first 8 rows of the held-out
val set (ar1/val.jsonl in ewin-reg/nemotron-sft-agentic-v4-fws-minicpmv47),
counting rows where the generated call text equals the gold call exactly.
| file | exact on first 8 val rows |
|---|---|
| f16 | 5 / 8 |
| Q8_0 | 3 / 8 |
8 rows is too few to rank the two files or to estimate accuracy; the gap between 5 and 3 is 2 rows and could be noise, or could be a real Q8_0 loss. It was not investigated further. No perplexity, speed or image benchmark was run on these files. The safetensors model scored exact 0.414 on the full 1000-row val set (see its card); the GGUF files were not scored on that set.
About the model
- Base: openbmb/MiniCPM-V-4.7-1B (SigLIP2 vision tower, 24-layer Qwen3.5 hybrid language model with 18 linear-attention and 6 full-attention layers, about 1.55B parameters).
- Training: LoRA SFT on Nemotron-SFT-Agentic-v4 tool-calling turns (v6), then 40 FlashREINFORCE updates of 64 fresh prompts each. Details, results and failure analysis are in the safetensors model card and the main model card.
- Val results (1000 rows, greedy, first tool call), safetensors model: exact 0.414, args 0.440, name 0.831, has_call 1.000. v6: 0.409 / 0.440 / 0.832 / 0.999. Round 1: 0.314 / 0.337 / 0.754 / 0.997.
Limitations
- The score needs the whole call text to match the gold call. About 60% of gold calls that have checkable values contain values that appear nowhere in the prompt (for example API keys), so no model can reach 100%.
- Training used only assistant turns that make tool calls, not turns that answer in plain text.
- Quantization effects were not measured beyond the small check above.
- Licence: apache-2.0, same as the base model.