Gemma3 1B Tools NVFP4
The Gemma 3 1B tool-calling model (LoRA fine-tuned for tool calling and
agent-style interactions) quantized to NVFP4 — FP4 e2m1 weights with
FP8 e4m3 block scales (group 16), the Blackwell-native format.
Base model
This model was fine-tuned from:
google/gemma-3-1b-it
Quantization
Quantized from the merged BF16 checkpoint
(iromu/Gemma3-1B-tools) with NVIDIA ModelOpt:
- Format: NVFP4 (W4A4) —
NVFP4_DEFAULT_CFG, max scaling - Calibration: 32 samples (batch 4, max 2048 tokens) from the
sft_toolstrain split ofr0b0tlab/qwen3.8-max-glm5.2-kimi-k3-distillation - Target hardware: NVIDIA Blackwell (sm_100+), e.g. GB10 / DGX Spark
Training
Training was performed using NVIDIA NeMo AutoModel with LoRA/PEFT.
LoRA configuration
- LoRA dimension:
32 - LoRA alpha:
32 - Dropout:
0.05 - Target modules:
*.proj(all*_projlinear layers)
Training configuration
- Max sequence length:
4096 - Learning rate:
5e-5(cosine decay, 15 warmup steps, min1e-6) - Weight decay:
0.01 - Global batch size:
64(micro batch 2 x 32 accumulation) - Training steps:
336(4 epochs) - Mixed precision:
bf16 - Validation loss:
0.579→0.4715(final epoch)
Dataset
Training used the sft_tools split of the
r0b0tlab/qwen3.8-max-glm5.2-kimi-k3-distillation dataset.
Tool-calling format
This model was trained with a custom chat template (bundled as
chat_template.jinja). It renders the tool schemas into a developer
turn and emits tool calls as:
<tool_call>
{"name": <function-name>, "arguments": <args-json-object>}
</tool_call>
Serving stacks must render prompts with this template (e.g. via the
tokenizer's apply_chat_template) for tool calling to work.
Intended use
- Structured tool/function calling
- Agent-style multi-step interactions
- Small-footprint on-device or edge deployment
It is not intended to be a general replacement for larger Gemma models.
Usage
Serve the model with TensorRT-LLM:
trtllm-serve serve iromu/Gemma3-1B-tools-NVFP4 --port 8000
Validation matrix
Tool-calling validation on the sft_tools validation split (greedy decoding, 384 max new tokens). Throughput is single-stream greedy decode, not serving throughput.
Pretrained base (google/gemma-3-1b-it): 2.0% exact-args match (1/50). Fine-tuned (BF16): 66.0% exact-args match (33/50) (+64pp vs base).
- NVFP4: 2/50 (4.0%) exact, 169.0 tok/s — 6% of BF16.
| Model | Quant | n | Tool call emitted | Names match | Exact args match | Δ exact vs BASE | tok/s |
|---|---|---|---|---|---|---|---|
| Gemma3-1B-tools | BASE (google/gemma-3-1b-it) | 50 | 6/50 (12.0%) | 1/50 (2.0%) | 1/50 (2.0%) | — | 68.5 |
| Gemma3-1B-tools | BF16 | 50 | 50/50 (100.0%) | 41/50 (82.0%) | 33/50 (66.0%) | +64pp | 47.1 |
| Gemma3-1B-tools | NVFP4 | 50 | 34/50 (68.0%) | 2/50 (4.0%) | 2/50 (4.0%) | +2pp | 169.0 |
- Downloads last month
- 14