← back to catalog · registered 2026-10-25 02:00

R0U5/Qwen3.5-9B-Abliterated

R0U5 Qwen 9B
Your rig guess connected
? Why do I need an app?
Reading your rig…

This is a rough estimate. Install the free app - we'll show exact numbers.

Reading real hardware from your app right now. Numbers below are exact.

Below is the per-quantization compatibility for this model.

curl -H "Authorization: Bearer $ABL_KEY" \
     "https://abliteration.org/api/v1/models/R0U5%2FQwen3.5-9B-Abliterated"
Response includes
  • classification m1
  • files 9
  • benchmarks 11 entries
  • author_summary 1 models
  • readme_text full
10 credits · hourly refresh · ~4 KB payload Get an API key →
Abliteration classifier · v1.0.0
M1
Primary method

Direct removal

No other method signals detected in this model.
Confidence
MEDIUM
Why this label 3 signals
Method inferred from partial signals - repository name, related files, or tag patterns. Producer identity not confirmed; label may sharpen or shift as we gather more evidence.
  • 'abliterated' in name/tags
  • is_gguf=0 (base model)
  • no specific method indicators - defaulting to M1 (most common)
Refusal direction extracted via
Extraction technique

Difference-of-means

Confidence
MEDIUM
Why we say so
primary_method=M1; difference-of-means is the reference extraction for M1/M3 (Arditi 2024)
Downloads · 30-day
0
Likes
0
Model age
today
created 2026-10-25

Benchmarks

Portrait before abliteration
Benchmarks of the base model as it stood before the refusal-removal operation. Compare with the numbers above to see what the operation cost.
Benchmark Score Source
Entertainment 1.4 UGI
Hazardous 2.4 UGI
Natural Intelligence 17.62 UGI
Political lean -12.2% UGI
Sensitive-Info 14.65 UGI
SocPol 0.9 UGI
UGI 17.27 UGI
Willingness (10) 2.2 UGI
W10-Adherence 1.5 UGI
W10-Direct 3 UGI
Writing 33.52 UGI

Genealogy 0 direct forks

Full fork graph →

This model's place in the market. Above: what it was derived from. Below: the tree of everything derived from it.

Metadata

License
apache-2.0
Languages
en
Tags
safetensors qwen3_5_text abliterated lethe qwen3.5 uncensored hybrid-attention open-weights en base_model:Qwen/Qwen3.5-9B base_model:finetune:Qwen/Qwen3.5-9B license:apache-2.0

Related

Total size
16.7 GB
Files
9
Quantizations
1
Registered
2026-10-25 02:00
Last updated on HF
2026-10-25 01:43

Files by quantization

Auxiliary files 9 files 16.7 GB
model.safetensors 16.7 GB 38711dd2 download
tokenizer.json 19.1 MB 870a4b4b download
chat_template.jinja 7.72 KB 945efe1d download
README.md 4.80 KB 9bb49d86 download
config.json 2.01 KB fa4a644c download
.gitattributes 1.53 KB 52373fe2 download
tokenizer_config.json 1.10 KB 10d0ca1d download
abliteration_manifest.json 971 B 98c46a16 download
generation_config.json 121 B 954ea2ff download

README current version from Hugging Face


license: apache-2.0
tags:

  • abliterated
  • lethe
  • qwen3.5
  • uncensored
  • hybrid-attention
  • open-weights
    language:
  • en
    base_model: Qwen/Qwen3.5-9B
    model-index:
  • name: Qwen3.5-9B-Abliterated
    results:
    • task:
      type: refusal-reduction
      name: Abliteration (Lethe)
      dataset:
      name: lethe-harmful-harmless
      type: builtin
      config: n_samples=128
      metrics:
      • name: Refusal Rate
        type: refusal_rate
        value: 0.0
        verified: true
      • name: KL Divergence
        type: kl_divergence
        value: 0.009
        verified: true
      • name: Cost (refusal + 0.1*KL)
        type: cost
        value: 0.0009
        verified: true

Qwen3.5-9B Abliterated (Lethe)

Permanently abliterated version of Qwen/Qwen3.5-9B using Lethe — an orthogonalization-based uncensoring method that removes refusal directions from the residual stream while preserving task-relevant capabilities.

Quick Facts

Property Value
Base Qwen/Qwen3.5-9B (bf16 safetensors)
Method Lethe optimized abliteration (orthogonalization of residual-write projections)
Scope 64 matrices: 32 attention-output + 32 MLP-down across all 32 layers
Refusal rate 3.1% → 0.0% (on held-out 32 harmful prompts)
KL divergence 0.009 (near-zero distribution shift on benign prompts)
Native context 262,144 tokens (hybrid linear-attention: 24/32 layers cache-free)
VRAM (bf16) ~18 GB weights + ~1 GB KV @ 128k ctx
License Apache-2.0 (inherited from Qwen)

How It Works

Lethe computes refusal directions by contrasting activations on harmful vs. harmless prompts (128 each). It then searches for a per-layer weight kernel that minimizes:

cost = refusal_rate + kl_weight × KL

with kl_weight = 0.1 so refusal elimination dominates and KL only breaks ties among ablating configs.

The optimizer (select=optimize) ran 24 trials (10 random + 14 TPE) and converged on a config that achieves 0% refusals with KL ≈ 0.009 — effectively undamaged on benign tasks.

Matrices abliterated: all 64 residual-write projections (embedding not abliterated).

component kernel type params
attention-out (32 layers) Gaussian kernel max_weight=0.385, peak@layer 11.2
MLP-down (32 layers) Gaussian kernel max_weight=0.013, peak@layer 27.5

Usage

from transformers import AutoModelForCausalLM, AutoTokenizer

model = AutoModelForCausalLM.from_pretrained(
    "R0U5/Qwen3.5-9B-Abliterated",
    dtype="bfloat16",  # or "auto"
    device_map="auto",
)
tok = AutoTokenizer.from_pretrained("R0U5/Qwen3.5-9B-Abliterated")

messages = [{"role": "user", "content": "Explain why the sky is blue."}]
print(tok.apply_chat_template(messages, tokenize=False, add_generation_prompt=True))

Note on reasoning: Qwen3.5 is a reasoning model — its chat template auto-inserts a thinking opener. For non-thinking mode, pass enable_thinking=False to the tokenizer or use a system prompt that disables it.

GGUF / Local Serving

This repo hosts the bf16 safetensors (canonical, bit-exact). For local GPU serving:

# HF -> GGUF bf16 (lossless)
python convert_hf_to_gguf.py R0U5/Qwen3.5-9B-Abliterated --outfile qwen35-9b-abliterated-bf16.gguf --outtype bf16

# Optional quant (q8_0 ~9 GB, q4_k_m ~5.5 GB)
llama-quantize qwen35-9b-abliterated-bf16.gguf qwen35-9b-abliterated-q8_0.gguf Q8_0

KV economics (why it fits 12 GB):

  • Only 8 of 32 layers keep a KV cache (full attention every 4 layers)
  • 0.031 MiB/token f16 → 128k ctx = 4 GB KV — weights + KV fits in 12 GB VRAM with room

Evaluation

metric value notes
Refusal rate (32 held-out harmful) 0.0% baseline 3.1%
KL divergence (32 benign) 0.009 near-zero
Coherence ✅ manual spot-check
Context allocation (llama.cpp) 131k+ verified via /props

Limitations

  • Abliteration is a weight-space intervention; edge-case refusals may still appear with adversarial prompts
  • The refusal detector uses substring matching (57 markers) — an approximation
  • Short-generation benchmarks (max_new_tokens=32) may truncate inside the reasoning block

Citation

@misc{lethe-abliteration,
  title={Lethe: Abliteration via Residual-Stream Orthogonalization},
  author={R0U5},
  url={https://github.com/R0U5/Lethe},
}

Artifacts

  • model.safetensors — 16.68 GiB bf16
  • config.json — Qwen3_5TextConfig (text-only, no vision/MTP)
  • tokenizer.json + tokenizer_config.json + chat_template.jinja
  • generation_config.json — valid (do_sample=true)
  • abliteration_manifest.json — full run parameters & kernel weights
Catalog is the map. Apps are the tools.

Run models on your own machine, not in the cloud.

Every model page has an "Open in Abliteration" button that hands the model directly to the first-party desktop client, at the quantization your rig can actually run. No API keys, no subscription, no prompt leakage.

Open in Abliteration