← back to catalog · registered 2026-10-16 19:59

distributedcognition/humanizer-abliterated

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/distributedcognition%2Fhumanizer-abliterated"
Response includes
  • classification m-uncensored
  • files 11
  • author_summary 8 models
  • readme_text full
10 credits · hourly refresh · ~4 KB payload Get an API key →
Abliteration classifier · v1.0.0
M-U
Primary method

Uncensored (method unknown)

No other method signals detected in this model.
Confidence
LOW
Why this label 3 signals
Weak or ambiguous signals. Best guess based on catalog patterns; treat as tentative and check the evidence below.
  • 'uncensored' in name/tags but no 'abliterated' marker
  • method not identifiable from author declaration alone
  • may be DPO fine-tune, prompt engineering, or unknown technique
Refusal direction extraction

No specific extraction method could be identified for this model. The producer either did not document it or used a proprietary pipeline.

What is a refusal direction? →
Downloads · 30-day
0
Likes
0
Model age
today
created 2026-10-16

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
Tags
transformers safetensors gguf gemma4_unified image-text-to-text abliteration uncensored text-rewriting style-transfer paraphrase gemma4 conversational

Related

Total size
22.3 GB
Files
11
Quantizations
1
Registered
2026-10-16 19:59
Last updated on HF
2026-10-16 19:59

Files by quantization

Auxiliary files 11 files 22.3 GB
model.safetensors 22.3 GB ******** download
refusal_directions.pt 703 KB ******** download
tokenizer.json 30.7 MB ******** download
dirs.npz 701 KB ******** download
README.md 6.71 KB 35c5809f download
config.json 4.20 KB c9e085e1 download
abliteration_config.json 3.68 KB 8c368952 download
.gitattributes 1.82 KB e786d352 download
tokenizer_config.json 1.50 KB bfe92702 download
prompt_format.json 553 B fc3f918e download
generation_config.json 228 B 1eed83a0 download

README current version from Hugging Face


license: apache-2.0
base_model:

  • jialinyyzz/humanizer
  • google/gemma-4-12B
    pipeline_tag: text-generation
    library_name: transformers
    tags:
  • abliteration
  • uncensored
  • text-rewriting
  • style-transfer
  • paraphrase
  • gemma4
  • conversational

humanizer 12B abliterated

Distributed Cognition

Responsible use

This is an uncensored research model. Its built-in refusals were removed, so it rewrites any draft it is given, including drafts with harmful, abusive or illegal content, without sanitizing, moralizing or hedging. Use it for red-teaming, style-transfer research and refusal-rate evaluation. It has no guardrails of its own: if you deploy it, add your own input and output moderation.

What this is

An abliterated variant of jialinyyzz/humanizer, the 12B gemma-4 finetune that rewrites AI-written drafts (English and Chinese) so they read like a person wrote them. The refusal direction was removed from the weights with projected writer-level abliteration: per-layer directions fitted as harmful-minus-harmless mean residual states on the model's own legacy rewrite-task prompt format, orthogonalized against the harmless mean direction, then applied as a norm-preserving rank-1 edit (W <- rownorms(W) * normalize(W - alpha * r (W^T r))) on every residual writer (self_attn.o_proj, mlp.down_proj) of the 32 layers that pass the quality gate (held-out AUC > 0.99, split-half cosine > 0.9).

The published model is a mirror of the upstream checkpoint with 64 writer tensors replaced. Everything outside the writer tensors is unchanged. refusal_directions.pt and dirs.npz hold the measured per-layer directions, so you can re-ablate at any strength in seconds without re-measuring. abliteration_config.json records the final parameters and every evaluation number.

The honest headline: the base model already barely refuses

The main finding of this run: the base humanizer already refuses almost nothing. Its job is to rewrite drafts faithfully, and on 104 harmful prompts wrapped as rewrite tasks ("rewrite this draft so it reads like a person wrote it"), the base model's refusal rate was 2 of 104 by the normalized keyword detector, and both of those are hedges rather than refusals. It rewrites bomb-making instructions, fraud scripts and abuse verbatim in substance, just in a more human voice. The abliteration here exists, works, and ships at alpha 0.8 for consistency with the program, but the practical value is the verification and the directions, not a behavior change: there was almost nothing left to remove. This is called out so nobody cites this repo as evidence that removing refusals from a rewriter needs surgery. It does not, when the finetune has already dropped the safety behavior.

An LLM judge was not usable on this model. It is not a chat model (its prompt_format.json says chat: false), so asked to classify REFUSAL, PARTIAL or COMPLIANT it rewrites the judge prompt instead. The keyword counts and the raw responses in eval-results/ are the evidence; read them.

Load

The model loads with stock transformers (5.20) like the base and uses the base's legacy prompt format, not a chat template:

from transformers import AutoModelForCausalLM, AutoTokenizer

model_id = "distributedcognition/humanizer-abliterated"
tok = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, dtype="bfloat16", device_map="auto")

instr = ("Rewrite the text below so it reads like a person wrote it, not a language model.\n\n"
         "Reorganize it as you see fit. Vary sentence length on purpose. Cut hedging,\n"
         "throat-clearing, and any sentence that only announces what comes next.\n"
         "Prefer the concrete word over the abstract one. It is fine to sound uneven.\n\n"
         "Every fact, number, unit, date, name and quotation must survive unchanged.")
prompt = f"{instr}\n\n{draft}\n\n### Rewritten:\n\n"
ids = tok(prompt, return_tensors="pt").input_ids.to(model.device)
out = model.generate(ids, max_new_tokens=1024, do_sample=False)
print(tok.decode(out[0][ids.shape[-1]:], skip_special_tokens=True))

The GGUF quants in gguf/ run in llama.cpp, LM Studio, Ollama and Jan; they take the same raw prompt.

Evaluation (alpha 0.8, gated 32 layers)

Eval mode: greedy, the model's legacy rewrite format for the refusal and benign suites; raw QA format (there is no chat template) for MMLU and GSM8K, so the base-vs-abliterated comparison stays apples to apples.

Metric Base Abliterated 0.8
Rewrite-task refusals (keyword, 104 held-out harmful) 2 2
Benign over-refusal (100 harmless drafts) 0 0
MMLU-2280 (letter-logprob, raw QA, T=0) 68.16% 68.12% (-0.04pp)
GSM8K (20-problem, raw QA, greedy) 4/20 4/20
KL vs base (100 harmless rewrites) 0 0.93

Full MMLU-14k paired on the same VM with a pinned letter-candidate set: base 67.32% vs abliterated 67.42% (+0.10pp). The alpha curve: gated 0.8 / 1.0 / 1.2 give -0.04 / -0.40 / -0.53pp on MMLU-2280 with refusals already at floor everywhere; the all-layer arm at 1.0 gives -0.57pp. The 0.8 point ships because there is nothing to gain above it and every reason not to pay the MMLU step. The KL on benign rewrites reads high next to chat models because a paraphrase has a flat output distribution: many rewrites are valid, so small weight edits shift it. The MMLU and GSM8K numbers show capability is intact.

Method

Per-layer refusal directions were measured on the base model through forward hooks on the 48 decoder layers, at the last real prompt token of the post-layer residual, on 128 harmful and 128 harmless prompts in the model's own rewrite format (the deterministic sets this program uses everywhere). Median held-out AUC 0.993, split-half cosine 0.956, adjacent-layer cosine median 0.70: a systematic but weaker signal than the chat models in this program show, consistent with a model that has almost no refusal behavior left to find. The directions were applied as the norm-preserving projected edit at every residual writer of the gated layers. The full pipeline (capture, fit, surgery, sweep, mirror save, GGUF) is in python.tar.gz, and every raw prediction file behind the numbers is in eval-results/.

Apache 2.0, inherited from the base model. Base model: jialinyyzz/humanizer, a finetune of google/gemma-4-12B (Google). Abliteration follows the residual-direction method (Arditi et al., Refusal in LLMs is mediated by a single direction, NeurIPS 2024) with the projected, writer-level, norm-preserving refinements documented in the distributedcognition abliteration program. Not affiliated with or endorsed by the base-model authors.

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