Downloads · 30 days
245
2% of all-time downloads
hwkranger/Qwen3.8-27B-heretic-ara-NVFP4
Qwen3.8-27B-heretic-ara-NVFP4 is a image-text-to-text model from hwkranger. Use it for the image-text-to-text task on the model card, and read the license before you ship it in a product. The card lists the license as apache-2.0.
NVFP4 (W4A16) quantization of trohrbaugh/Qwen3.8-27B-heretic-ara — the ARA-abliterated Qwen3.8-27B — with the model's MTP speculative-decoding head preserved and wired for vLLM. 20 GB on disk versus 52 GB for the BF16…
Downloads · 30 days
245
2% of all-time downloads
All-time downloads
13.6K
Public
Parameters
15.2B
20.6 GB on disk
Likes
4
Public
Click a slice to open those files.
.safetensors20.6 GB · 100%
How the weights are stored.
U812.2B · 78%
From the Hugging Face model README
NVFP4 (W4A16) quantization of trohrbaugh/Qwen3.8-27B-heretic-ara — the ARA-abliterated Qwen3.8-27B — with the model's MTP speculative-decoding head preserved and wired for vLLM. 20 GB on disk versus 52 GB for the BF16 source.
Built for and benchmarked on NVIDIA GB10 / DGX Spark (128 GB unified
memory, aarch64), where NVFP4 is the sweet spot: the platform is
bandwidth-limited (~273 GB/s), so weight size dominates decode speed, and NVFP4
gets a native CUTLASS kernel on sm_121. In our testing this quant beat an FP8
build of the same model by ~29% — the opposite of results published for
datacenter GPUs, and the reason this repo exists.
nvidia-modelopt 0.45.0 (W4A16_NVFP4_CFG).model.visual* excluded) — image and
video input verified working after conversion."mtp*" entries to
exclude_modules in config.json / hf_quant_config.json and maps the 15
mtp.* tensors (in model_mtp.safetensors) into the safetensors index, so
vLLM can use --speculative-config with it.The known-good command (this is what produced the numbers below):
vllm serve <model-path> \
--max-model-len 131072 \
--gpu-memory-utilization 0.40 \
--kv-cache-dtype fp8 \
--enable-prefix-caching \
--max-num-seqs 4 \
--tool-call-parser qwen3_coder --enable-auto-tool-choice \
--reasoning-parser qwen3
To enable MTP speculative decoding (read the stability section first):
--speculative-config '{"method":"mtp","num_speculative_tokens":3}'
Notes:
qwen3_coder, not qwen3_xml — the chat template
emits <tool_call><function=NAME><parameter=KEY>…. The template also uses
<think>…</think>, hence the qwen3 reasoning parser. vLLM validates both
names before loading weights, so a mismatch fails fast.--gpu-memory-utilization 0.25, ~43 GiB at 0.40 (both at 131k context).| this quant | stock Qwen3.8-27B NVFP4 | |
|---|---|---|
| Single-stream decode, MTP off | 12.6 tok/s | — |
| Single-stream decode, MTP on (k=3) | 19.1 tok/s | 23.6 tok/s |
| Aggregate, 4 concurrent, MTP off | 33.7 tok/s | 30.8 tok/s |
| Aggregate, 4 concurrent, MTP on | 52.3 tok/s | — |
The stock model is faster single-stream with MTP because its draft head was trained on the weights it ships with; here the head drafts for abliterated weights it never saw, which costs acceptance rate. In exchange: no refusals, and better concurrency.
Full transparency on the one incident: on first real-world deployment, MTP
crashed the engine once — CUBLAS_STATUS_INTERNAL_ERROR in the MTP head's BF16
GEMM, triggered when a new request prefilled while other requests were decoding
with draft tokens in flight. Multi-client front-ends (e.g. open-webui's
background title/tag requests racing a chat) produce exactly that pattern.
Since then it has not reproduced: three deliberate reproduction attempts (synthetic mixed prefill+decode load, staggered-arrival load, and adversarial interactive use) plus a 4-hour monitored soak under real multi-client traffic — zero crashes, zero container restarts.
Recommendation: enable MTP together with a container restart policy
(--restart unless-stopped or equivalent) so a recurrence costs a reload, not
an outage. For strictly single-client use it has been trouble-free. If you need
hard guarantees, serve without --speculative-config — you keep the
concurrency advantage (33.7 tok/s at c=4) either way. Untried mitigations if
you do hit it: num_speculative_tokens: 1, --enforce-eager.
This is an abliterated ("uncensored") derivative: refusal behavior has been removed by the upstream ARA process. It will comply with requests the base model would decline. You are responsible for the legality and consequences of what you generate with it, and for adding whatever guardrails your deployment requires. Do not expose it unauthenticated to the public internet.
Quantization was calibrated for general use; task-critical accuracy should be validated against the BF16 upstream for your workload. The base model's knowledge, biases, and failure modes carry over.
Qwen/Qwen3.8-27B (Apache-2.0) → ARA abliteration by
trohrbaugh →
NVFP4 conversion + MTP wiring (this repo). A Q6_K GGUF of the same abliterated
weights is available at
mradermacher/Qwen3.8-27B-heretic-ara-GGUF.
Licensed Apache-2.0, same as the base model (LICENSE included).