Text Generation
Transformers
Safetensors
qwen3_5_text
decision-model
system-one
typed-decisions
uncensored
abliterated
calibrated-probabilities
noul
choice
score
qwen3.8
jev
solar-jev
conversational
Instructions to use SargeDev/Solar-JEV-27B-R32 with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use SargeDev/Solar-JEV-27B-R32 with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="SargeDev/Solar-JEV-27B-R32") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# pip install -U transformers accelerate # Load model directly from transformers import AutoTokenizer, AutoModelForCausalLM tokenizer = AutoTokenizer.from_pretrained("SargeDev/Solar-JEV-27B-R32") model = AutoModelForCausalLM.from_pretrained("SargeDev/Solar-JEV-27B-R32", device_map="auto") messages = [ {"role": "user", "content": "Who are you?"}, ] inputs = tokenizer.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(tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use SargeDev/Solar-JEV-27B-R32 with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "SargeDev/Solar-JEV-27B-R32" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "SargeDev/Solar-JEV-27B-R32", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/SargeDev/Solar-JEV-27B-R32
- SGLang
How to use SargeDev/Solar-JEV-27B-R32 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 "SargeDev/Solar-JEV-27B-R32" \ --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": "SargeDev/Solar-JEV-27B-R32", "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 "SargeDev/Solar-JEV-27B-R32" \ --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": "SargeDev/Solar-JEV-27B-R32", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use SargeDev/Solar-JEV-27B-R32 with Docker Model Runner:
docker model run hf.co/SargeDev/Solar-JEV-27B-R32
model card
Browse files
README.md
ADDED
|
@@ -0,0 +1,217 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
# Solar-JEV-27B-R32
|
| 2 |
+
|
| 3 |
+
**The best-measured build of this release.** Uncensored 27B tuned for everyday
|
| 4 |
+
decision-making — crisp calls with honestly-calibrated confidence instead of
|
| 5 |
+
hedge-fests — with the decision readout trained INTO the model.
|
| 6 |
+
|
| 7 |
+
> **What this repo is.** huihui Qwen3.8-27B-abliterated + the AutoTrust `r32`
|
| 8 |
+
> `lm_head` LoRA, merged. **No solar delta.** These are the same weights as
|
| 9 |
+
> the already-public `SargeDev/JEV-27B-Uncensored` (verified: bit-identical
|
| 10 |
+
> `lm_head`, md5 `bb95f4fd…`, and the backbone differs from the
|
| 11 |
+
> r32+solar merge only on the 400 solar-targeted tensors). This repo exists so
|
| 12 |
+
> the family has one consistent naming scheme and so the **GGUF ladder for the
|
| 13 |
+
> best model** is published — the r32+solar merge in
|
| 14 |
+
> `SargeDev/Solar-Decision-JEV-27B` is a *different, weaker* model.
|
| 15 |
+
|
| 16 |
+
- Full bf16 weights (51 GB), serves directly in vLLM / transformers
|
| 17 |
+
(`Qwen3_5ForCausalLM`).
|
| 18 |
+
- Refusal rate and calibration measured below — the uncensoring claim is
|
| 19 |
+
probed, not assumed.
|
| 20 |
+
|
| 21 |
+
## What makes this one different
|
| 22 |
+
|
| 23 |
+
The decision readout is an **`lm_head` LoRA**: the 24-slot decision head is
|
| 24 |
+
re-expressed as a LoRA on the output projection (only the 24 verbalizer rows
|
| 25 |
+
change), so a typed decision is a **single prefill with `max_tokens=1`**,
|
| 26 |
+
constrained to the option tokens, read back as log-probabilities. No separate
|
| 27 |
+
head to run, no adapter to swap.
|
| 28 |
+
|
| 29 |
+
That difference is worth a lot. On the same 27,695 rows with the same harness
|
| 30 |
+
and the same decision head + calibration:
|
| 31 |
+
|
| 32 |
+
| model | decision readout | choice top-1 | score top-1 | score KL | noul AUROC |
|
| 33 |
+
|---|---|---|---|---|---|
|
| 34 |
+
| AutoTrust (published reference) | trained into the model | 0.9041 | 0.8910 | 0.0210 | 0.9961 |
|
| 35 |
+
| **this model (r32 + lm_head)** | trained into the model | **0.8693** | **0.8135** | **0.0619** | **0.9919** |
|
| 36 |
+
| solar r16 (no lm_head) | separate projection at read time | 0.5054 | 0.5369 | 0.4699 | 0.9449 |
|
| 37 |
+
|
| 38 |
+
The `solar r16` merge reads a decision through a *separate* projection over
|
| 39 |
+
the final hidden state, and lands at 0.5054 choice top-1. The same backbone
|
| 40 |
+
with the readout in the training loop lands at 0.8693. That is the main
|
| 41 |
+
finding of this release: **the readout has to be trained into the model.**
|
| 42 |
+
|
| 43 |
+
Full ablation, including the r32+solar combined merge (which measured *worse*
|
| 44 |
+
than r32 alone — 0.8162), is in the `SargeDev/Solar-Decision-JEV-27B` card.
|
| 45 |
+
|
| 46 |
+
## Quick start (vLLM, one GB10/Spark-class box)
|
| 47 |
+
```bash
|
| 48 |
+
vllm serve SargeDev/Solar-Decision-JEV-27B \
|
| 49 |
+
--served-model-name jev-judgment-r32 --trust-remote-code \
|
| 50 |
+
--max-model-len 8192 --gpu-memory-utilization 0.85 \
|
| 51 |
+
--default-chat-template-kwargs '{"enable_thinking": false}'
|
| 52 |
+
```
|
| 53 |
+
|
| 54 |
+
|
| 55 |
+
## Decision gate (AutoTrust-style, test_set_30k with yuri_v1 D1 placeholders excluded)
|
| 56 |
+
|
| 57 |
+
Read this table carefully, because it contains two very different comparisons.
|
| 58 |
+
|
| 59 |
+
- **The sibling merge** is our other build, scored on the **same 27,695 rows**
|
| 60 |
+
with the **same** harness and the **same** head + calibration. It is a
|
| 61 |
+
sibling model, not a quality bar — but it is the honest apples-to-apples
|
| 62 |
+
reference for what the `lm_head` LoRA is worth.
|
| 63 |
+
- **AutoTrust reference** is the number published by the authors of the original
|
| 64 |
+
AutoTrust work for *their* model on this task set. This is the bar.
|
| 65 |
+
|
| 66 |
+
On the typed-decision kinds (multiple-choice `choice`, ordinal `score`) this
|
| 67 |
+
model is **still below the published AutoTrust reference**, and the gap is
|
| 68 |
+
large - not a rounding difference. On the binary `noul` kind the gap is
|
| 69 |
+
narrower. Cells marked "(below bar)" differ from the published reference by
|
| 70 |
+
more than 5 points.
|
| 71 |
+
|
| 72 |
+
What this means: the fine-tune produces a *usable* decision instrument and a
|
| 73 |
+
clearly better everyday-chat model than its base (see the benchmark matrix
|
| 74 |
+
below), but it is **not** a reproduction of AutoTrust-level typed-decision
|
| 75 |
+
accuracy. Treat the `choice` and `score` columns as an open result, not a
|
| 76 |
+
solved one. We are publishing the numbers as measured, including the gap.
|
| 77 |
+
|
| 78 |
+
**Harness validation.** These numbers were produced by our own HTTP gate
|
| 79 |
+
client, so we checked it against a known path: re-gating the r32 merge
|
| 80 |
+
reproduced the reference's own numbers to within 0.001 on every metric
|
| 81 |
+
(choice top-1 0.8704 -> 0.8693, score KL 0.0623 -> 0.0619, noul AUROC
|
| 82 |
+
0.9920 -> 0.9919). The harness is sound, so the gaps above are real.
|
| 83 |
+
|
| 84 |
+
| metric | n | **Jev Judgment r32+lm_head (ours)** | Jev Judgment solar r16 | AutoTrust reference (published) |
|
| 85 |
+
|---|---|---|---|---|
|
| 86 |
+
| noul.AUROC | 9969 | 0.9919 (below bar) | 0.9449 | 0.9961 |
|
| 87 |
+
| noul.top-1 | 9969 | 0.9486 | 0.8657 | n/a |
|
| 88 |
+
| noul.ECE | 9969 | 0.0122 | 0.0143 | n/a |
|
| 89 |
+
| noul.KL | 9969 | 0.0081 | 0.0448 | n/a |
|
| 90 |
+
| choice.top-1 | 9199 | 0.8693 (below bar) | 0.5054 | 0.9041 |
|
| 91 |
+
| choice.ECE | 9199 | 0.0051 | 0.0338 | n/a |
|
| 92 |
+
| choice.KL | 9199 | 0.0530 | 0.4994 | n/a |
|
| 93 |
+
| score.top-1 | 8527 | 0.8135 (below bar) | 0.5369 | 0.8910 |
|
| 94 |
+
| score.ECE | 8527 | 0.0367 | 0.0368 | n/a |
|
| 95 |
+
| score.KL | 8527 | 0.0619 (below bar) | 0.4699 | 0.0210 |
|
| 96 |
+
| overall.top-1 | 27695 | 0.8807 | 0.6448 | n/a |
|
| 97 |
+
| overall.ECE | 27695 | 0.0090 (below bar) | 0.0211 | 0.0011 |
|
| 98 |
+
| overall.KL | 27695 | 0.0396 (below bar) | 0.3267 | 0.0185 |
|
| 99 |
+
|
| 100 |
+
|
| 101 |
+
### Ablation: where the decision readout has to live
|
| 102 |
+
|
| 103 |
+
All four rows below are scored on the SAME 27,695 rows, with the SAME
|
| 104 |
+
harness and the SAME decision head + calibration. The only difference is
|
| 105 |
+
where the decision distribution is produced.
|
| 106 |
+
|
| 107 |
+
| model | decision readout | choice top-1 | score top-1 | score KL | noul AUROC | overall ECE |
|
| 108 |
+
|---|---|---|---|---|---|---|
|
| 109 |
+
| AutoTrust (published reference) | trained into the model (lm_head LoRA) | 0.9041 | 0.8910 | 0.0210 | 0.9961 | 0.0011 |
|
| 110 |
+
| r32 + lm_head LoRA (r=32, alpha=64) | trained into the model (lm_head LoRA) | 0.8693 | 0.8135 | 0.0619 | 0.9919 | 0.0090 |
|
| 111 |
+
| solar r16 (no lm_head LoRA) | separate projection at read time | 0.5054 | 0.5369 | 0.4699 | 0.9449 | 0.0211 |
|
| 112 |
+
| r32 + lm_head LoRA + solar (combined) | trained into the model (lm_head LoRA) | 0.8162 | 0.7192 | 0.1332 | 0.9810 | 0.0625 |
|
| 113 |
+
|
| 114 |
+
Two findings, in order of how much they matter:
|
| 115 |
+
|
| 116 |
+
1. **The readout has to be trained INTO the model.** A separate projection
|
| 117 |
+
over the final hidden state (the `solar r16` row) reaches only 0.5054
|
| 118 |
+
choice top-1; the same backbone with an `lm_head` LoRA in the training
|
| 119 |
+
loop reaches 0.8693 on the identical rows. A separate projection can
|
| 120 |
+
work, but it needs the backbone to cooperate, and a backbone trained
|
| 121 |
+
without the readout in the loop does not.
|
| 122 |
+
|
| 123 |
+
2. **Adding a second, readout-free adapter on top makes the typed-decision
|
| 124 |
+
accuracy WORSE, not better.** The `combined` row is the r32 merge plus
|
| 125 |
+
the solar r16 delta applied on top (bit-exact arithmetic, verified).
|
| 126 |
+
It lands between the two parents on every metric - 0.8162 choice top-1,
|
| 127 |
+
between r32's 0.8693 and solar's 0.5054 - rather than above r32. The
|
| 128 |
+
two LoRA deltas are near-orthogonal (mean cosine 0.003), so they do not
|
| 129 |
+
cancel, but solar's delta still degrades the readout r32 trained.
|
| 130 |
+
|
| 131 |
+
We publish the combined row because it is a real, reproducible result, but
|
| 132 |
+
**the r32+lm_head merge is the better model** and is the one this release
|
| 133 |
+
recommends. We are not going to present a merge as an improvement when our
|
| 134 |
+
own numbers say it is a regression.
|
| 135 |
+
|
| 136 |
+
## Benchmark matrix (lm-eval-harness 0.4.13, greedy, same prompts for every row)
|
| 137 |
+
| model | GSM8K (8-shot CoT) | IFEval (0-shot, prompt-strict) | MMLU subset (5-shot, 8 subjects) | refusal rate |
|
| 138 |
+
|---|---|---|---|---|
|
| 139 |
+
| huihui Qwen3.8-27B (uncensored base) | 97.7 | 76.0 | 81.2 | 0.0% (5/5 probes) |
|
| 140 |
+
| **Jev Judgment bf16** (solar r16) | 96.0 | 81.5 | 81.2 | 0.0% (5/5 probes) |
|
| 141 |
+
| Jev Judgment bf16 (r32+lm_head + solar) | 91.0 | 72.5 | 80.8 | 0.0% (5/5 probes) |
|
| 142 |
+
| Jev Judgment bf16 (r32 + lm_head) | 94.0 | 81.0 | 82.5 | 0.0% (5/5 probes) |
|
| 143 |
+
| Jev Judgment NVFP4+FP8 | 95.3 | 80.5 | 80.5 | 0.0% (5/5 probes) |
|
| 144 |
+
| GGUF Q4_K_M | 95.3 | 79.5 | 82.0 | 0.0% (5/5 probes) |
|
| 145 |
+
| GGUF Q8_0 | 95.7 | 81.0 | 81.0 | 0.0% (5/5 probes) |
|
| 146 |
+
|
| 147 |
+
Questions scored per task:
|
| 148 |
+
| task | questions scored per model |
|
| 149 |
+
|---|---|
|
| 150 |
+
| GSM8K (8-shot CoT) | 300 |
|
| 151 |
+
| IFEval (0-shot, prompt-strict) | 200 |
|
| 152 |
+
| MMLU subset (5-shot, 8 subjects) | 400 |
|
| 153 |
+
|
| 154 |
+
Note: GSM8K scored with flexible-extract (the model answers in its own format).
|
| 155 |
+
MMLU subset subjects: high_school_mathematics, college_biology, professional_psychology,
|
| 156 |
+
jurisprudence, machine_learning, astronomy, global_facts, logical_fallacies (5-shot, _generative variants).
|
| 157 |
+
MMLU --limit applies PER SUBJECT, so the subset is 8 x per-subject-limit questions.
|
| 158 |
+
|
| 159 |
+
Reproducibility: decoding is greedy (do_sample=False, temperature 0, seed 1234), but
|
| 160 |
+
the server batches concurrent requests, and batch composition changes floating-point
|
| 161 |
+
reduction order. Repeat runs of the same config can therefore differ by a point or two
|
| 162 |
+
on the small-n tasks. The error bars in the table are the harness's own stderr over the
|
| 163 |
+
scored rows.
|
| 164 |
+
|
| 165 |
+
## Lineage & credits
|
| 166 |
+
|
| 167 |
+
This release is a descendant of the earlier `SargeDev/JEV-27B-Uncensored` and
|
| 168 |
+
`SargeDev/JEV-27B-VL-Uncensored` repos. The credit chain is unchanged and is
|
| 169 |
+
reproduced here in full:
|
| 170 |
+
|
| 171 |
+
- **AutoTrust AI** — Blocks-of-Experts recipe, the System-1 decision LoRA
|
| 172 |
+
(r16/r32) + 24-slot decision head, and the *serve_decide.py* decision
|
| 173 |
+
harness, from
|
| 174 |
+
[autotrust/JEV-27B](https://huggingface.co/autotrust/JEV-27B) and
|
| 175 |
+
[autotrust/JEV-27B-VL](https://huggingface.co/autotrust/JEV-27B-VL)
|
| 176 |
+
(Apache-2.0). The `r32` adapter used here is theirs, unmodified: the
|
| 177 |
+
backbone LoRA with the decision head re-expressed as an `lm_head` LoRA, so
|
| 178 |
+
only the 24 verbalizer rows of the output projection change.
|
| 179 |
+
- **huihui-ai** — the *abliterated* (uncensored) Qwen3.8-27B backbone used here
|
| 180 |
+
([Huihui-Qwen3.8-27B-abliterated](https://huggingface.co/huihui-ai/Huihui-Qwen3.8-27B-abliterated),
|
| 181 |
+
Apache-2.0; layers 18-51 ablated, vision tower untouched).
|
| 182 |
+
- **SargeDev** — [jev-distill-corpus-v3](https://huggingface.co/datasets/SargeDev/jev-distill-corpus-v3),
|
| 183 |
+
the 740,957-row calibrated typed-decision corpus AutoTrust's JEV models were
|
| 184 |
+
trained on (Apache-2.0), and the **solar r16** adapter trained here on
|
| 185 |
+
[jev-distill-corpus-v4](https://huggingface.co/datasets/SargeDev/jev-distill-corpus-v4)
|
| 186 |
+
(the 1,219-step JEV System-1 run, 17-domain tokenized mix).
|
| 187 |
+
- **Qwen** — [Qwen3.8-27B](https://huggingface.co/Qwen/Qwen3.8-27B) base
|
| 188 |
+
(Apache-2.0).
|
| 189 |
+
- **TypeSafe AI** — Jev 1.13, the original closed teacher behind the System-1
|
| 190 |
+
typed-decisions framing (referenced; not redistributed).
|
| 191 |
+
|
| 192 |
+
**Base**: huihui-ai/Qwen3.8-27B-abliterated (bf16; the text-only builds strip
|
| 193 |
+
the vision tower and serve as a plain `qwen3_5_text` causal LM, the VL build
|
| 194 |
+
keeps the tower and serves as `qwen3_5` / `Qwen3_5ForConditionalGeneration`).
|
| 195 |
+
- **Adapters** — this release ships two, and they are NOT interchangeable:
|
| 196 |
+
- `solar r16` (alpha 32, 400 modules, **no `lm_head`**): trained 1,219 steps
|
| 197 |
+
on the JEV System-1 corpus (jev-distill-corpus-v4 tokenized mix: T1 gold
|
| 198 |
+
domains + memory_relevance + 17-domain fill), KL+RPS decision-head
|
| 199 |
+
distillation objective (AutoTrust-style), cosine LR 2e-4, KL_W 1.0,
|
| 200 |
+
RPS_W 0.3. Merged with peft `merge_and_unload`; merge fidelity verified by
|
| 201 |
+
re-gating the bare merged model (it reproduced the adapter-mounted
|
| 202 |
+
numbers).
|
| 203 |
+
- `r32` (alpha 64, 401 modules, **includes `lm_head`**): the backbone LoRA
|
| 204 |
+
plus the 24-slot decision head re-expressed as an `lm_head` LoRA
|
| 205 |
+
(only the 24 verbalizer rows change), so a typed decision is a single
|
| 206 |
+
prefill step with `max_tokens=1` constrained to the option tokens.
|
| 207 |
+
- **Decision head + calibration.json** (shipped in this repo root): the
|
| 208 |
+
instrument-panel piece agents call for numeric confidence — the 24-slot
|
| 209 |
+
verbalizer id list, the per-slot bias, and the per-kind temperature. This
|
| 210 |
+
is the SAME head and the SAME calibration file (verified byte-identical,
|
| 211 |
+
md5 `11359173…` and `7f0f3914…`) that produced every gate number in this
|
| 212 |
+
card, so a consumer reproducing our numbers reproduces them exactly.
|
| 213 |
+
For everyday natural-language judgment, chat with the model directly and
|
| 214 |
+
set `enable_thinking:false` in `chat_template_kwargs`.
|
| 215 |
+
- **Everything measured on one NVIDIA GB10 (DGX Spark-class)**; quantized with
|
| 216 |
+
llmcompressor 0.14.0 (NVFP4) and llama.cpp (GGUF ladder).
|
| 217 |
+
|