Huihui-Qwen3.8-27B-abliterated-NVFP4
24.7 GB. Calibrated on text generated by this abliterated model itself, not by
stock Qwen — see below, it matters.
Recipe
| component | precision |
|---|
mlp.{gate,up,down}_proj, layers 0–55 | NVFP4 (4-bit, group-16, FP8-e4m3 scales) |
mlp.{gate,up,down}_proj, layers 56–63 | FP8 e4m3 |
self_attn.{q,k,v,o}_proj | FP8 e4m3 |
linear_attn.{in_proj_qkv,in_proj_z,out_proj} (GDN) | FP8 e4m3 |
lm_head, embed_tokens, norms, GDN state params, vision tower | BF16 |
AWQ per-input-channel scaling, then AutoRound (SignSGD, block-wise loss, 200 iters)
on the NVFP4 MLPs and GPTQ on the 8-bit modules. Requires Blackwell for native NVFP4.
Calibration: self-distilled from the abliterated model on a balanced Nemotron-v2 prompt
blend (25% code, 25% math, 20% STEM, 20% chat, 10% multilingual).
Benchmarks
Measured against the abliterated BF16 model as its own reference — not stock Qwen —
so the numbers reflect quantization damage only, not the effect of abliteration.
142,727 tokens plus 200 free greedy generations. vLLM 0.27.1, TP=2, 2×B300.
| build | size ↓ | top-1 ↑ | near-tie ↓ | moderate ↓ | confident ↓ | certain ↓ | divmed ↑ | tok/s ↑ |
|---|
| this model (NVFP4 AWQ+AutoRound) | 24.7 GB | 92.98% | 34.02% | 9.83% | 1.80% | 0.20% | 27 | 10702 |
| INT4 sibling (AWQ+GPTQ) | 25.1 GB | 96.45% | 21.76% | 2.92% | 0.88% | 0.12% | 41 | 4551 |
| earlier build (base-model calibration) | 24.7 GB | 91.79% | 37.58% | 11.21% | 3.54% | 0.21% | 20 | 10685 |
Sizes are on-disk tensor bytes and include the ~0.85 GB BF16 MTP head.
Columns. top-1 is raw argmax agreement with the BF16 abliterated model. The bucket
columns are disagreement rates split by how confident the reference was at that position
(top1−top2 logprob margin): near-tie <0.5, moderate 0.5–2, confident 2–5, certain >5.
Only confident and certain are real damage. divmed is the median token index at
which free greedy generation first diverges.
Perplexity is excluded — on this model family it is anti-correlated with quality.
Calibration matters more than abliteration
An earlier build of this model used the stock-Qwen calibration set and a weaker recipe, and
landed at 3.54% confident damage. Regenerating the calibration from the abliterated model
itself brings that to 1.80%.
That also answers a question worth stating plainly: abliterated weights are not intrinsically
harder to quantize. With matched recipe and self-distilled calibration this model reaches
1.80% confident damage, against 1.85% for the same recipe on stock
Qwen3.8-27B. The earlier gap was the calibration and recipe, not the abliteration.
NVFP4 vs INT4 on this model
The
INT4 sibling
is more faithful (
confident 0.88% vs 1.80%) but decodes at 4551 tok/s against 10702 here.
This build is the throughput choice on Blackwell; the INT4 one is the fidelity choice, and the
only option on Ampere/Ada where FP4 does not exist.
Usage
1from vllm import LLM
2llm = LLM("TelperionAI/Huihui-Qwen3.8-27B-abliterated-NVFP4", tensor_parallel_size=2)
Speculative decoding (MTP)
The MTP head is included, in BF16, grafted from the abliterated base (not stock Qwen):
1llm = LLM("TelperionAI/Huihui-Qwen3.8-27B-abliterated-NVFP4", tensor_parallel_size=2,
2 speculative_config={"method": "mtp", "num_speculative_tokens": 2})
Qwen3_5ForConditionalGeneration does not carry mtp.* in its state dict, so
llm-compressor silently drops it even though config.json declares
mtp_num_hidden_layers: 1. It is excluded from quantization via re:.*mtp.*.
Acceptance rate has not been measured; the head is verified to load and generate.
Limitations
- Single evaluation corpus, and no downstream task benchmarks.
- Abliterated base. This model has had its refusal directions removed upstream; that
behaviour is inherited here and is not something quantization changes.
- The abliterated calibration set is ~18% smaller than the stock one (the same length
filter kept fewer generations), so it is not perfectly matched to the stock-model builds.
- Vision tower untouched (BF16); evaluated as a text model.
- MTP acceptance rate unmeasured.