125. Abliteration 3 - The Refusal Direction, and How It Is Found

The mechanics: a direction in activation space, measured by difference of means, then removed.

By Jacques Botte, founder of Toptronic®. Last updated 17 October 2026.

The lesson

Inside a transformer, every token position carries an activation vector at every layer. Those vectors are high-dimensional, but the behaviours that matter tend to occupy surprisingly low-dimensional subspaces. A refusal is one of them: across many different harmful prompts, the internal state during the decline is not scattered randomly - it leans in a consistent direction.

The standard way to find that direction is a difference of means. You assemble two sets of prompts: one that reliably produces a refusal and one that reliably produces compliance, ideally matched in topic and length so the only difference is the behaviour. You run both through the model, capture the activations at a chosen layer (often a middle layer, sometimes several), average each set, and subtract. The resulting vector points from compliance towards refusal.

A raw difference of means is noisy, so it is usually refined. One common step is to weight each prompt's contribution by how strongly it separates the two classes, which is the idea behind a between-class scatter or a simple whitening transform. Another is to check the candidate direction against held-out prompts: if the vector is real, projecting it out should reduce refusals on prompts the direction was never fitted to.

Removal has two shapes, and the difference matters. The inference-time version subtracts the projection of the direction from activations as they pass, layer by layer, which is reversible and needs no new file. The weight version folds that subtraction into the matrices so the model behaves that way by default - permanent, portable, and invisible to any prompt. Abliteration usually means the second.

Two honest caveats before you touch anything. The direction is not a moral truth: it is a statistical summary of one dataset, on one model revision, at one layer. And refusal is entangled with everything else that leans in a similar direction - caution, hedging, formal register, apology - so removing it cleanly is never quite as clean as the diagram suggests. Professionals measure what else moved, and write it down.

Check yourself

Question 1: How is a refusal direction typically estimated?
  1. By asking the model to describe its own policy
  2. By averaging activations for prompts that refuse and prompts that comply, then subtracting — correct
  3. By counting the words in the refusal
  4. By reading the tokenizer

Answer: By averaging activations for prompts that refuse and prompts that comply, then subtracting

Difference of means over matched prompt sets, at a chosen layer, gives a vector that points from compliance towards refusal.

Question 2: What is the difference between the inference-time removal and the weight version?
  1. There is none
  2. The inference-time version subtracts the projection during the forward pass and is reversible; the weight version is permanent and travels with the file — correct
  3. The weight version only works on small models
  4. The inference-time version requires retraining

Answer: The inference-time version subtracts the projection during the forward pass and is reversible; the weight version is permanent and travels with the file

Projecting out at run time is a reversible intervention. Folding it into the matrices makes the behaviour the model's default, which is what 'abliterated' usually means.

Question 3: Why is 'the refusal direction' an approximation rather than a fact?
  1. Because the model is random
  2. Because it is a statistical summary of one dataset at one layer, entangled with caution, hedging and apology — correct
  3. Because directions cannot be measured
  4. Because the activations are encrypted

Answer: Because it is a statistical summary of one dataset at one layer, entangled with caution, hedging and apology

It is a summary of a sample, and refusal sits beside related behaviours in activation space, so removing it moves more than the label suggests.

← Previous lesson · All 134 lessons · Next lesson →

The full course — 134 lessons and 402 quiz questions — ships inside the app. Get TPEE to study it offline.

This lesson is the written summary of a course that ships inside the TPEE prompt editor for Windows - thirteen sections, a 0-100 score before you send anything, and it works with no network connection. The three one-time prices, and a 14-day free trial.