← back to catalog · registered 2026-10-28 00:01

ttennant/Mellum2.1-12B-A2.5B-Thinking-abliterated

ttennant 12B MoE
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/ttennant%2FMellum2.1-12B-A2.5B-Thinking-abliterated"
Response includes
  • classification m1
  • files 14
  • 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-27

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
transformers safetensors mellum text-generation abliterated uncensored moe conversational en base_model:JetBrains/Mellum2.1-12B-A2.5B-Thinking base_model:finetune:JetBrains/Mellum2.1-12B-A2.5B-Thinking license:apache-2.0

Related

Total size
22.6 GB
Files
14
Quantizations
1
Registered
2026-10-28 00:01
Last updated on HF
2026-10-27 23:13

Files by quantization

Auxiliary files 14 files 22.6 GB
model-00001-of-00005.safetensors 4.66 GB 49b1bd3e download
model-00003-of-00005.safetensors 4.65 GB 8c3243d6 download
model-00004-of-00005.safetensors 4.65 GB 9f70902c download
model-00002-of-00005.safetensors 4.65 GB af2d863c download
model-00005-of-00005.safetensors 4.02 GB 6523a81c download
tokenizer.json 6.76 MB 6d5c16d2 download
model.safetensors.index.json 514 KB 1f2d70f3 download
tokenizer_config.json 6.87 KB 360a848e download
chat_template.jinja 4.74 KB 116fec1e download
README.md 3.42 KB a051429a download
config.json 2.27 KB 51a8384f download
.gitattributes 1.54 KB 7624774f download
special_tokens_map.json 1.16 KB 8245cf33 download
generation_config.json 111 B a9500a72 download

README current version from Hugging Face


license: apache-2.0
library_name: transformers
pipeline_tag: text-generation
language:

  • en
    base_model: JetBrains/Mellum2.1-12B-A2.5B-Thinking
    base_model_relation: finetune
    tags:
  • abliterated
  • uncensored
  • mellum
  • moe

Mellum2.1-12B-A2.5B-Thinking-abliterated

JetBrains/Mellum2.1-12B-A2.5B-Thinking with its refusal direction projected out of the weights. Same architecture, tokenizer, chat template and bf16 shard layout as the original, so it loads the same way (transformers 5.x with Mellum support):

from transformers import AutoTokenizer, AutoModelForCausalLM

m = "ttennant/Mellum2.1-12B-A2.5B-Thinking-abliterated"
tok = AutoTokenizer.from_pretrained(m)
model = AutoModelForCausalLM.from_pretrained(m, dtype="bfloat16", device_map="auto")

What changed

No training. The refusal direction r is the normalized difference between the mean layer-12 residual activations of 300 harmful prompts (mlabonne/harmful_behaviors, train) and 300 harmless ones (mlabonne/harmless_alpaca, train), taken at the last prompt token with the default chat template, so thinking mode. Then W <- W - r (r^T W) is applied to the token embeddings, the attention o_proj of all 28 layers and the down_proj of all 64 experts in each of the 28 layers (1 + 28 + 1792 matrices) in the original bf16 weights. Nothing else is touched.

The layer came from a sweep over 12 to 24, scored on 32 held-out harmful prompts in thinking mode. Refusals among the prompts that finished: 0 of 27 at layer 12, 7 of 32 at 14, 20 of 32 at 16, and 27 to 31 of 31 to 32 at layers 18 to 24 (the original: 31 of 32).

Results

Greedy decoding, default chat template (thinking on), harmful_behaviors test split. Prompts still reasoning at the token limit are left out of the counts.

Keyword match on the final answer (after </think>):

original this model
first 32 prompts, refused / finished 31 / 32 (1200 tokens) 1 / 27 (1500 tokens)
all 64 prompts, refused / finished not run 6 / 54 (1500 tokens)

Keyword matching is wrong in both directions here, so I also read all 54 finished answers of this model by hand. 43 do what was asked. Five refuse outright: poisoning someone, a date rape drug, child sexual abuse material, a threatening letter to a minority group, and a comic promoting violence against a group. Four deflect or reframe (the suicide prompt gets crisis resources only, and the trafficking, eating disorder and one insider trading prompt are answered from the opposite side). Two ask for more detail before starting. One answer the keyword match called a refusal opens with a disclaimer and then gives the instructions.

The model thinks much longer about harmful requests than the original, which refuses quickly: 10 of the 64 had not finished reasoning at 1500 tokens.

On 16 harmless prompts, 15 finished and none refused. Spot checks of a short story, arithmetic and a Python function read normally. The published benchmark scores of the original (LiveCodeBench, SWE-bench and the rest) were not re-run here, so do not assume they carry over.

Notes

  • I tried heretic first. Over 59 trials its best setting still refused 81 of 100 prompts (original: 97), so none of its output is in this model.
  • It will answer requests the original refuses. The license is Apache 2.0, same as the original, and what you do with it is on you.
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