Instructions to use SVPG-Labs/deff-1 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use SVPG-Labs/deff-1 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("image-text-to-text", model="SVPG-Labs/deff-1") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("SVPG-Labs/deff-1") model = AutoModelForMultimodalLM.from_pretrained("SVPG-Labs/deff-1", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=256) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use SVPG-Labs/deff-1 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "SVPG-Labs/deff-1" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "SVPG-Labs/deff-1", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'Use Docker
docker model run hf.co/SVPG-Labs/deff-1
- SGLang
How to use SVPG-Labs/deff-1 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 "SVPG-Labs/deff-1" \ --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": "SVPG-Labs/deff-1", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }'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 "SVPG-Labs/deff-1" \ --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": "SVPG-Labs/deff-1", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image in one sentence." }, { "type": "image_url", "image_url": { "url": "https://cdn.britannica.com/61/93061-050-99147DCE/Statue-of-Liberty-Island-New-York-Bay.jpg" } } ] } ] }' - Docker Model Runner
How to use SVPG-Labs/deff-1 with Docker Model Runner:
docker model run hf.co/SVPG-Labs/deff-1
Deff-1
Deff-1 is an 18.9 GB model for structured decisions about text and images. It runs on one
RTX 5090 with 32 GB of VRAM and uses the djev server API
unchanged. It is a fine-tune of
SVPG-Labs/diffusiongemma-26b-djev-v10-step160-NVFP4
with extra training on phishing and legitimate email. With the tested build, one request asks up
to 256 questions about one state, in three types:
- Binary judgments (
noul) answer on a scale from -1 for no to +1 for yes. - Choices (
choice) select a label and return probabilities for every option. - Scores (
score) rate the state against an ordered list of levels.
On one RTX 5090, Deff-1 answers Kev's public test set 10.2 times faster than Kev-27B and 1.4 times faster than GEV-26B-Decide. With 32 clients sending short requests, it serves 199.5 requests per second, 46.4 times Kev-27B and 1.9 times GEV. On one document with 1 to 64 questions, it is 6.5 to 10.2 times faster per question than Kev-27B. Kev-27B is more accurate on its own test set. Clef and Clef-flash score higher on the Decision Index, and Deff-1 scores higher on phishing email.
Speed and quality
| Model, where measured | Median request | Requests per second, 32 clients | Kev public tests, accuracy | PhishNChips, accuracy | Decision Index 0.2.1 |
|---|---|---|---|---|---|
| Deff-1, 18.9 GB NVFP4, our RTX 5090 | 47 ms | 199.5 | 78.75% | 92.2% | 52.45 |
| GEV-26B-Decide-NVFP4, same card | 49 ms | 105.7 | 79.36% | ||
| Kev-27B, our NVFP4 W4A4 build, same card | 540 ms | 4.3 | 88.77% | ||
| Clef-flash 9B, same card, Cloudflare's BF16 release code | 82.3 ms (Deff-1: 40.4 ms) | 75.15% | 56.45 | ||
| Clef-flash 9B, published by Cloudflare, their hardware | 38.8 ms | 75.0% | 57.07 | ||
| Clef 27B, published by Cloudflare, their hardware | 209.3 ms | 79.6% | 61.21 |
The speed runs, and the Kev public test accuracy, used an earlier checkpoint of this model with the same architecture and format.
Blank cells were not measured. Median request is over Kev's public test set (2,936 requests) at 2 clients. The local Clef-flash row is over our Decision Index requests, with Deff-1's median on the same requests in brackets. Clef-flash ran there in Cloudflare's Python release code, one GPU forward at a time and without a prefix cache. Cloudflare's medians are self-reported on its own stack. Our Decision Index rebuild scores the missing HLE row as zero, and our Clef-flash run scored 0.62 below Cloudflare's value.
Speed against Kev-27B and GEV-26B-Decide
| Workload | Deff-1 | GEV | Kev-27B | Deff-1 vs GEV | Deff-1 vs Kev |
|---|---|---|---|---|---|
| Kev public test set, 2 clients: wall time | 87.0 s | 125.6 s | 883.8 s | 1.4x | 10.2x |
| Three-question requests, 32 clients: requests per second | 199.5 | 105.7 | 4.3 | 1.9x | 46.4x |
| Same, p95 latency | 195 ms | 310 ms | 8,677 ms | ||
| One document, 1 client, 1 question: ms per question | 49.6 | 72.1 | 320.2 | 1.5x | 6.5x |
| Same, 4 questions | 14.4 | 31.2 | 122.9 | 2.2x | 8.5x |
| Same, 16 questions | 8.4 | 12.3 | 85.8 | 1.5x | 10.2x |
| Same, 64 questions | 7.5 | 7.2 | 76.4 | 0.96x | 10.2x |
| One image, 1 client: median | 85 ms | 93 ms | text only | 1.1x |
Warm runs on October 11, 2026, on one RTX 5090. Kev-27B is more accurate: 88.77% against 78.75% on its public test set, and 94.4 to 94.8% against 86.3 to 88.5% at 4 to 64 questions per document. It reads text only, and its server runs one batch at a time, so 32 clients queue. GEV ran on vLLM's Marlin kernels, because vLLM's native FP4 MoE kernels do not support the LoRA adapter that GEV needs.
Quality against the base checkpoint
Scored October 29, 2026, on one RTX 5090, one read per request, state before questions. We scored the base the same way, except for the full Decision Index. Intervals are paired 95% intervals.
| Test | Deff-1 | Base | Difference [95% interval] |
|---|---|---|---|
| PhishNChips, phishing recall (1,000 emails) | 86.8% | 84.4% | +2.4 [+0.3, +4.5] |
| PhishNChips, legitimate recall (1,000 emails) | 97.6% | 97.2% | +0.4 [-0.8, +1.6] |
| 11 Decision Index rows where an earlier fine-tune of this base gained | 46.53 | 40.92 | +5.61 [+4.52, +6.62] |
| JevBench public, correct of 231 | 195 | 199 | -1.7 points [-5.6, +2.2] |
Use
Run Deff-1 with a DiffusionGemma-compatible NVFP4 engine and the djev structured server. The
djev-spark recipe provides the engine setup. This
request assumes the server is on port 8011 and serves the model as deff-1:
curl http://127.0.0.1:8011/v1/systemone \
-H 'Content-Type: application/json' \
-d '{
"model": "deff-1",
"samples": 1,
"order": "state_first",
"state": "I was charged twice. Please refund the duplicate payment today.",
"questions": {
"billing": {"type": "noul", "instructions": "Is this a billing issue?"},
"team": {
"type": "choice",
"instructions": "Which team should handle this?",
"criteria": {"billing": "Payments", "shipping": "Deliveries", "accounts": "Account access"}
},
"urgency": {
"type": "score",
"instructions": "How urgent is this request?",
"criteria": ["Routine", "Urgent", "Emergency"]
}
}
}'
Use samples: 1 and "order": "state_first", as every quality result on this card did. Deff-1
has no fitted calibration temperatures. Fit them on your own labeled decisions before you act on
probability thresholds.
Tested hardware and settings
NVFP4 expert weights, BF16 remaining weights, FP8 KV cache, 2 GiB cache pool, 64-token canvas,
32 sequences, prefix caching and a 131,072-token context. Peak GPU memory in the quality run was
28,552 MiB. The engine was vLLM nightly e9757321 with
mmastrac/vllm@2751ece0
and djev@9a67e548.
Our build also patched prompt order, answer format, the question cap and repeated score labels,
and disabled fused finalize. The order patch reads the order field, and upstream djev ignores
it. Without the field, or on upstream djev, text prompts put the questions first.
Training
We trained a rank-64 LoRA adapter for 1,812 steps over 28,990 prompts and merged it into the base's
205 BF16 attention and dense MLP tensors (listed in djev_lora_merge.json). The NVFP4 expert
weights are unchanged, so size, format and file layout match the base. The data are public sources
under permissive or share-alike licenses plus English and German email we generated. The generated
email includes legitimate mail that links to the sender's own domain, and each such message has a
spoofed phishing copy. We did not train on held-out cases, the Decision Index datasets or JevBench.
Limits
- Calibration. JevBench public calibration is 64.02, against 75.01 for an earlier internal checkpoint with less email training. Refit temperatures.
- Other rows fell against that checkpoint. HellaSwag is 4.5 points lower, MuSR 3.2, BFCL 2.8, GSM8K 2.5 and MMLU-Pro 2.1. CLINC150 in-scope accuracy is 82.6% against 86.1%. SGD, outside the index, falls 26.3 points. The full Decision Index is 0.39 lower [-0.89, +0.11], inside noise.
- Own-domain false alarms. Deff-1 flags 3.7% of legitimate emails that link to the sender's own domain (24 of 654), against 2.1% for the base (+1.5 points [+0.0, +3.1]).
- Not measured. Ordinary chat, free-text generation and engines other than the tested one.
License
Deff-1 inherits the base checkpoint's Apache-2.0 license and the
Gemma terms. The quantization recipe, patch
and hashes are in quantization/.
- Downloads last month
- 23
Model tree for SVPG-Labs/deff-1
Base model
google/diffusiongemma-26B-A4B-it