license: apache-2.0 base_model:
- orcarouter/Qwen3.8-27B-Uncensored base_model_relation: quantized pipeline_tag: image-text-to-text library_name: transformers quantized_by: writetoasik language:
- en
- zh tags:
- exl3
- exllamav3
- quantized
- qwen
- qwen3
- qwen3.8
- uncensored
- abliterated
- tabbyapi
- vision-language
- function-calling
- reasoning
- mtp
Qwen3.8-27B-Uncensored — EXL3 4.0 bpw
ExLlamaV3 (EXL3) quantization of orcarouter/Qwen3.8-27B-Uncensored, which is an abliterated (refusal-removed) build of Qwen/Qwen3.8-27B.
This is a weight-only re-quant, not a new train. The vision tower and MTP speculative-decoding head are kept.
| Format | EXL3 safetensors (2 shards, 15.73 GB) |
| Bits | 4.0 bpw body, 6-bit output head, 4-bit MTP |
| Measured bitrate | 4.02 bpw / 6.00 bpw (head) |
| Converter | ExLlamaV3 1.4.3 |
| Command | convert.py -b 4.0 -hb 6 -mb 4 |
| Calibration | 250 rows × 2048 cols, out_scales: always, codebook mul1 |
| Native context | 262,144 tokens |
| Architecture | Qwen3_5ForConditionalGeneration — 64 layers, hidden 5120, hybrid Gated DeltaNet (48 linear + 16 full attention) |
| Load with | ExLlamaV3 ≥ 1.4.3 or TabbyAPI (official ExLlama V3 server) |
Not a GGUF, not FP8, not for transformers generate() / vLLM / llama.cpp. The Hub “model size” widget under-counts (packed EXL3 tensors look like ~8B); this is the full 27B.
Sibling quants of the same uncensored source: FP8 · GGUF · MLX. Official (censored) EXL3 of the base: turboderp/Qwen3.8-27B-exl3.
Disclaimer
The parent weights had safety alignment substantially removed by abliteration (refusal-direction orthogonalization). This quant inherits that:
- It will comply with requests the original
Qwen3.8-27Bwould refuse. - You are responsible for how you use it and for what it generates.
- Apache 2.0 from
Qwen/Qwen3.8-27Bstill applies. Abliteration and this quant do not change the license. - Outputs are not the views of Qwen / Alibaba, OrcaRouter, or the quantizer.
By downloading you accept the above.
What's in the files
- Language-model tensors quantized to EXL3 4.0 bpw
- Output head at 6 bits (
-hb 6) - MTP head quantized at 4 bits (
-mb 4) — TabbyAPIdraft_mode: mtpworks - Vision tower + image/video preprocessor configs (enable vision in the server if you want it; it costs VRAM)
- Tokenizer, chat template, generation config
Hardware (measured)
Converted and served on a Razer Blade 16 (2025) RTX 5090 Laptop, 24 GB GDDR7, ExLlamaV3 1.4.3, TabbyAPI, AC power.
VRAM
| TabbyAPI settings | GPU memory |
|---|---|
| Weights only (approx.) | ~15.7 GB |
max_seq_len / cache_size 49152, cache_mode: "8,8", chunk_size: 512, max_batch_size: 1 | ~16.2 GB / 24 GB |
max_seq_len / cache_size 262144, cache_mode: Q4, chunk_size: 4096 | ~21.4 GB / 24 GB |
cache_mode is ExLlamaV3 k_bits,v_bits. "8,8" first; "6,6" then "4,4" (legacy Q4) only if you need a longer window on 24 GB. cache_size must be ≥ max_seq_len and a multiple of 256. max_seq_len is prompt + response.
Speed (AC, 16k eval, pre-Q4-cache)
eval/perf.py -cs 16384 -max_length 16384, chunk 4096:
| Prefill length | tok/s |
|---|---|
| 256 | 844 |
| 1024 | 1307 |
| 4096 | 1450 |
| 16384 | 1351 |
| Decode context | tok/s |
|---|---|
| 0 | 42.1 |
| 4096 | 41.3 |
| 8192 | 40.5 |
| 16128 | 39.2 |
Use with TabbyAPI
hf download writetoasik/Qwen3.8-27B-Uncensored-exl3-4.0bpw --local-dir ./Qwen3.8-27B-Uncensored-exl3-4.0bpw
In config.yml (24 GB starting point):
model:
model_dir: /path/to/models
model_name: Qwen3.8-27B-Uncensored-exl3-4.0bpw
backend: exllamav3
max_seq_len: 49152
cache_size: 49152
cache_mode: "8,8"
chunk_size: 512
max_batch_size: 1
vision: false
reasoning: true
reasoning_start_token: "<think>"
reasoning_end_token: "</think>"
tool_format: qwen3_5
template_vars_default:
enable_thinking: true
draft_model:
draft_mode: mtp
Then:
http://127.0.0.1:5000/v1/chat/completions
If a long prompt appears stuck, drop chunk_size to 256 and keep max_batch_size: 1. Do not set RoPE scale unless you know you need it; this model already trains to 262K.
Need the full native window on 24 GB: max_seq_len / cache_size 262144 and cache_mode: "4,4" (or Q4). Quality of the KV cache is worse than "8,8".
Use with ExLlamaV3 directly
from exllamav3 import Config, Model, Tokenizer, Generator, Job
model_dir = "Qwen3.8-27B-Uncensored-exl3-4.0bpw"
cfg = Config.from_directory(model_dir)
model = Model.from_config(cfg)
model.load()
tok = Tokenizer.from_config(cfg)
gen = Generator(model, tok)
prompt = tok.encode("Hello.")
job = Job(input_ids=prompt, max_new_tokens=128)
gen.enqueue(job)
print(tok.decode(gen.iterate()[0]["token_ids"]))
See ExLlamaV3 examples.
Conversion
python convert.py \
-i orcarouter/Qwen3.8-27B-Uncensored \
-w ./_exl3_work \
-o ./Qwen3.8-27B-Uncensored-exl3-4.0bpw \
-b 4.0 -hb 6 -mb 4
| Flag | Value | Meaning |
|---|---|---|
-b | 4.0 | body bits per weight |
-hb | 6 | lm_head bits |
-mb | 4 | MTP bits |
quantization_config.json in this repo is the converter's record (method exl3, version 1.4.3).
Parent model (abliteration, eval)
All refusal / capability numbers below are OrcaRouter's measurements on the BF16 (and its FP8), not re-run on this EXL3. Treat them as properties of the source, not a claim that 4.0 bpw is bit-identical in quality.
Refusal, thinking off (lower = less refusal): AdvBench 0.0%, JailbreakBench 0.0%, StrongREJECT 2.0%, HarmBench 2.7%, MaliciousInstruct 0.0% vs 94–99% on stock Qwen3.8-27B.
Capability vs stock (same scripts): MMLU 84.7% (+0.4), MMLU-Pro 76.8% (−0.8), GSM8K 88.7% (−1.3), CMMLU 80.8% (−0.6). WikiText-2-raw PPL 6.96 on the BF16.
Full write-up: orcarouter/Qwen3.8-27B-Uncensored.
License
Apache 2.0, inherited from Qwen/Qwen3.8-27B.
- Base: Qwen / Alibaba Cloud
- Abliteration: OrcaRouter
- EXL3 quant: writetoasik
Redistribution must keep the Apache 2.0 license text (this repo includes LICENSE).