In one breath
- Models represent many concepts as directions in activation space, and they store more features than they have dimensions (superposition). That is the standard picture of why individual neurons often look like nonsense. Hold it as a strong working model, not a proven fact, and test any unit you name with an intervention.
- Sparse dictionary learning (SAEs, transcoders, crosscoders) surfaces millions of readable features, including safety-relevant ones (deception, sycophancy, backdoors, evaluation awareness). Treat those features as leads, not as the model's confirmed units: the method has known failure modes (dead latents, feature splitting and absorption, and "dark matter" it can't reconstruct), so compare with a baseline and confirm with an intervention.
- Attribution graphs trace how features feed one another on a single prompt. They have shown two-hop reasoning, rhyme planning, motivated chain-of-thought and a hidden reward-model objective, but they explain only part of the computation and work well on "about a quarter" of prompts.
- Steering and probes are the cheap workhorses. A single direction mediates refusal in open models. Persona vectors track character drift. Linear probes catch sleeper agents with AUROC above 99%. Labs now report running probes on production traffic. But activations are malleable: an optimizer can learn to fool a probe, and ordinary training can weaken one.
- Since Claude Sonnet 4.5 (Sept 2025), Anthropic's system cards include white-box audits: model diffing, suppressing evaluation awareness, large-scale feature monitoring and agentic investigators using natural-language autoencoders. In these audits, interpretability mostly generates hypotheses; it does not yet prove anything.
- The open problem is assurance: showing that a method would have caught the problem if it were there, without training the model to evade the method.
§1Why look inside at all?
Everything else in this guide observes behavior. Behavior is evidence about cognition, but it underdetermines it. Interpretability is the attempt to measure cognition directly.
Take two models that give identical answers on every evaluation you can afford to run. One is aligned. The other has learned that evaluations look a certain way and behaves well when it recognizes one. Behaviorally they are indistinguishable by construction on your test distribution. The model organisms in chapter 03 show this is not a thought experiment: sleeper agents survive safety training, and alignment-faking models behave differently when they believe they are unobserved. Anthropic's system card for Claude Sonnet 4.5 reports that on a synthetic "honeypot" suite the model verbalized evaluation awareness over 80% of the time and took the misaligned action on 0 of 100 prompts. When interpretability tools suppressed its internal representation of "this is a test", misaligned actions rose to as high as 8–9% for some steering vectors. That is still below Claude Sonnet 4's roughly 11%, but it is no longer zero.
A behavioral eval measures what the model does when it thinks someone is checking. Interpretability asks what it represents regardless.
Behavioral evaluation is a job interview. You learn a lot, but a well-prepared candidate who knows it's an interview can give you exactly what you want to hear. Interpretability is airport security's X-ray. It doesn't ask the bag anything; it looks at what's inside.
Where it breaks: an X-ray is designed to be read by humans, by a scanner whose physics is understood. A network's internal "image" uses a representation nobody designed, our scanner (an SAE or a probe) is itself a learned model with its own errors, and the bag can in principle rearrange its contents so the scan looks clean (§7).
It helps to separate four jobs that "interpretability for alignment" can do. They need very different levels of rigor:
| Job | Question | Typical tools | Maturity (late 2026) |
|---|---|---|---|
| Detect | Is something concerning represented right now? | Linear probes, SAE feature monitors, NLA readouts | On production traffic for misuse (self-reported: Anthropic, Google DeepMind) and in pre-release audits; robustness to adversaries unproven |
| Understand | What mechanism produces this behavior? | Attribution graphs, circuit analysis, model diffing | Strong case studies; partial coverage; labor-intensive |
| Intervene | Can we change the behavior by editing internals? | Steering, directional ablation, feature clamping | Works; often beaten by prompting on benchmarks; side effects |
| Assure | Can we argue a model is safe because of what is not inside? | All of the above, validated on model organisms (themselves in question, §10) | Open research problem; the motivating goal |
In "The Urgency of Interpretability" (April 2025), Dario Amodei describes the goal as "a true 'MRI for AI'", a "brain scan" that "has a high probability of identifying a wide range of issues", and sets a target that by 2027 "interpretability can reliably detect most model problems." He frames the situation as "a race between interpretability and model intelligence." Read the rest of this chapter with that bar in mind: the question is not whether these tools find interesting things (they do), but whether they find the things that matter reliably.
§2Features, directions, and the linear representation hypothesis
Before you can read a model's mind, you need a theory of what its "thoughts" look like as numbers. The working theory is: concepts are directions.
A transformer's residual stream at a given token is a vector $x \in \R^{d}$, with $d$ in the thousands for frontier models. A feature is a property of the input that the network represents and uses: "this token is inside Python code", "the user seems distressed", "this scenario is fictional". The linear representation hypothesis (LRH) says that features correspond to directions. When a feature is present, the activation moves along a fixed vector, scaled by how strongly the feature is present:
- Activation: the residual stream at one token and one layer.
- Feature activation $f_i(x) \ge 0$: how strongly concept $i$ is present.
- Feature direction $d_i$: a unit vector, the concept's "address" in activation space.
- Many more features than dimensions: superposition (§3).
- Sparsity: only a few features are active on any given token. This is what makes the decomposition recoverable.
- Bias: the mean activation, which carries no feature.
The evidence for the LRH is mostly that linear tools work far better than they have any right to. Difference-of-means directions steer behavior (§6). Linear probes read off truthfulness, harmfulness and deployment context (§7). Clamping a single dictionary feature turns Claude into a model obsessed with the Golden Gate Bridge (§4). Park, Choe and Veitch (2023) gave the hypothesis a formal statement. "A direction you can probe" and "a direction you can add to steer" turn out to be two different formal notions, living in the unembedding and embedding spaces respectively. They show the two line up under a particular causal inner product, not the naive Euclidean one. That subtlety matters in practice: cosine similarity in raw activation space is not guaranteed to be the right geometry.
The hypothesis is not the whole story. Engels et al. (2024) found circular features for days of the week and months of the year in GPT-2 and Mistral 7B. These are two-dimensional manifolds that the model uses for modular arithmetic, and no single direction captures them. The paper was later retitled "Not All Language Model Features Are One-Dimensionally Linear", which is the precise claim: they are still linear subspaces, just not lines. Treat the LRH as a very useful approximation: most of our tools quietly assume it.
Are neurons the wrong unit?
The obvious place to look for features is individual neurons. In vision models some neurons really are clean ("curve detectors", in Olah et al.'s "Zoom In", 2020, whose credo is "Features are the fundamental unit of neural networks. They correspond to directions."). In language models many neurons have looked polysemantic. In the one-layer model of "Towards Monosemanticity", for example, a single neuron "responds to a mixture of academic citations, English dialogue, HTTP requests, and Korean text." The standard account gives two reasons. First, the architecture gives the residual stream no privileged basis: it is read and written through full linear maps, so nothing requires a coordinate to mean anything. (Training can still single some out: Elhage et al. 2023 found 20–60 outlier dimensions out of 1,280 in a typical layer and provisionally blame Adam's per-dimension normalizers.) Second, even in MLP layers, where the nonlinearity does privilege the neuron basis, the model wants to represent more features than it has neurons. It packs them in at angles to one another. That is superposition.
Treat this as the standard picture, not a proven one. Recent work reports sparse circuits directly in MLP neurons, and a Goodfire essay by Cammarata argues that much polysemanticity was misread and was not caused by superposition at all. A reply calls that "nowhere near a sufficient argument". The toy-model results in §3 stand either way; what is open is how much of real polysemanticity they explain. Two habits hold whichever side is right: don't accept a tidy set of activating examples as an explanation, and test any unit you name, neuron or feature, with an intervention.
Who found what on neurons
Arora et al. (2026) report MLP neurons are "as sparse a feature basis as SAEs" and recover multi-hop circuits in them, though with too many neurons to read easily. Shabalin et al. (2026) find only neuron-aligned features correspond stably to the MLP across 13 open transcoders. Both concern neuron sparsity. Only Cammarata's essay, a self-described working hypothesis, disputes superposition's role; the reply is leogao's, which accepts the misreading point.
Put 8 microphones in a room with 200 people. Each microphone (neuron) picks up a mix of whoever is nearby, so listening to one microphone gives you babble. That is polysemanticity. But at any moment only a handful of people are speaking, and each voice has a characteristic signature across the microphones. A source-separation algorithm that assumes "few speakers at a time" can recover individual voices from the mixture. Dictionary learning is that algorithm, and sparsity is the assumption that makes it possible.
Where it breaks: real speakers exist independently of your algorithm. Whether a model's "features" are equally real, or partly an artifact of the dictionary size and sparsity penalty you chose, is an open question (§4).
A probe that decodes concept $X$ from layer 20 shows that $X$ is linearly recoverable there. It does not show the model uses that direction to compute anything. The information could be an incidental byproduct, or the probe could be picking up a correlate. Causal claims need interventions: ablate or steer along the direction and check that downstream behavior changes in the predicted way.
§3Superposition: more features than dimensions
A network can represent more concepts than it has dimensions, if the concepts rarely appear together. The cost is interference, and a nonlinearity can filter most of it out.
Elhage et al.'s "Toy Models of Superposition" (Anthropic, 2022) studies this in a model small enough to see. Take $n$ features $x_i$ that are each zero with probability $S$ (the sparsity) and otherwise uniform on $[0,1]$. Each feature also has an importance $I_i$. Squeeze them through $m < n$ hidden dimensions and try to reconstruct them:
- Compression: $W \in \R^{m\times n}$; column $W_i$ is feature $i$'s direction in the hidden space.
- Reconstruction: read features back with the same weights; the ReLU and bias $b$ can filter interference.
- Importance-weighted error: the model cares more about getting important features right.
Write out one output to see where interference comes from:
$$x'_i = \mathrm{ReLU}\Big(\underbrace{\|W_i\|^2 x_i}_{\text{signal}} \;+\; \underbrace{\textstyle\sum_{j\ne i} (W_i\!\cdot\! W_j)\, x_j}_{\text{interference}} \;+\; b_i\Big).$$With a linear model (no ReLU), the optimum is essentially PCA. It represents the $m$ most important features orthogonally and drops the rest, because any interference shows up directly in the loss. With the ReLU, the trade changes. If features are sparse, the interference term is usually zero, since feature $j$ is rarely active at the same time as feature $i$. When it is non-zero, a negative bias $b_i$ cuts off small positive interference, and the ReLU zeroes out negative interference for free. Representing an extra feature costs a little interference on rare co-occurrences and gains its full reconstruction most of the time. As sparsity rises, superposition starts to pay.
Three results from the paper are worth knowing exactly:
- Phase changes. "Whether features are stored in superposition is governed by a phase change." As you vary sparsity and relative importance, the optimal solution jumps discretely between "not represented", "dedicated dimension" and "superposed". The paper confirms one transition (a pentagon collapsing to a pair of digons) is genuinely first order.
- Geometry. "Superposition organizes features into geometric structures such as digons, triangles, pentagons, and tetrahedrons," and uniform superposition connects to the geometry of uniform polytopes.
- Feature dimensionality measures how many dimensions a feature effectively gets: $$D_i = \frac{\|W_i\|^2}{\sum_j (\hat W_i\cdot W_j)^2}.$$ A feature with its own dimension has $D_i = 1$, one half of an antipodal pair has $D_i = \tfrac12$, and a pentagon vertex in 2-D has $D_i = \tfrac25$. When features are packed efficiently, the $D_i$ add up to the number of hidden dimensions. You can check that in the widget's readout.
An office with 2 desks and 5 part-time employees who rarely come in on the same day can give each person "a desk" by sharing. The collision rate (two people showing up together) is the interference. The more part-time everyone is (higher sparsity), the more people a desk can serve. If someone is very important, they get a dedicated desk.
Where it breaks: in the toy model a collision doesn't just inconvenience someone. It writes a ghost signal into the other feature's readout, which the network must actively filter (the negative bias). And real models have many more "employees" with correlated schedules, which produces structured geometry the toy model only hints at.
Why an alignment researcher should care
- Neuron-level inspection has been unreliable, though recent work may narrow how far (§2). A safety-relevant feature ("I am being evaluated", "this code has a backdoor") need not align with any neuron. Superposition is the classic argument for dictionary learning over reading neurons.
- Rare features are the ones most likely to be superposed, and rare situations (a deployment trigger, an unusual opportunity to exfiltrate weights) are exactly where misaligned behavior would show up.
- Superposition costs robustness. The toy-model paper reports that vulnerability to adversarial examples "sharply increases as superposition forms (increasing by >3×)." Interference terms are a lever an attacker can push.
§4Sparse dictionary learning: SAEs, transcoders, crosscoders
If activations are sparse combinations of many feature directions, learn the directions. A sparse autoencoder is the simplest machine that does it.
A sparse autoencoder (SAE) maps an activation $x\in\R^d$ into $m \gg d$ non-negative latents and back, with a penalty that keeps most latents at zero. The standard ("vanilla") version used in Anthropic's 2023–2024 work is:
- Encoder: one linear map plus ReLU gives latent activations $f_i \ge 0$.
- Decoder: column $d_i$ of $W_d$ is latent $i$'s feature direction.
- Reconstruction: stay faithful to the activation.
- L1 sparsity: weighted by decoder norm, so the model can't cheat by shrinking $f$ and growing $d$.
This is a composite. Bricken et al. (2023) subtract $b_d$ before encoding and constrain decoder columns to unit norm; Templeton et al. (2024) drop the subtraction and use the norm-weighted L1. The two are equivalent up to reparameterization.
The objective sets reconstruction against sparsity, and $\lambda$ picks the point on that frontier. Both ends fail. With $\lambda$ too small, the SAE reconstructs perfectly with dense, polysemantic latents, so you have just rotated the problem. With $\lambda$ too large, it reconstructs poorly, and the error you can't explain may be exactly the computation you care about. There is also no single "true" dictionary size. A larger SAE splits existing features too.
The variants worth knowing
- L1 + ReLU (Bricken et al. 2023; Templeton et al. 2024). Simple, but the L1 penalty causes shrinkage, and it penalizes magnitude rather than the count of active latents.
- TopK (Gao et al. 2024, OpenAI). Keep the $k$ largest pre-activations and zero the rest, which sets L0 directly. The authors trained "a 16 million latent autoencoder on GPT-4 activations for 40 billion tokens", found "clean scaling laws with respect to autoencoder size and sparsity", and kept dead latents to 7% using an auxiliary loss. Without such mitigations they saw "up to 90% dead latents".
- JumpReLU (Rajamanoharan et al. 2024, Google DeepMind). Each latent has a learned threshold $\theta_i$: $f_i = z_i\cdot\mathbb{1}[z_i > \theta_i]$. L0 is trained directly using straight-through estimators, "avoiding problems like shrinkage." This is the architecture of Gemma Scope, an open suite of 400+ SAEs on every layer of Gemma 2 2B and 9B with "more than 30 million learned features in total". Gemma Scope 2 (Dec 2025) covers all Gemma 3 sizes, 270M to 27B, with transcoders and Matryoshka training.
- Matryoshka SAEs (Bussmann et al. 2025) train nested dictionaries of increasing size at once, so coarse features survive alongside their finer children. This reduces absorption (below).
import torch, torch.nn as nn
class SAE(nn.Module):
def __init__(self, d, m):
super().__init__()
self.W_enc = nn.Parameter(torch.randn(d, m) / d**0.5)
self.b_enc = nn.Parameter(torch.zeros(m))
self.W_dec = nn.Parameter(self.W_enc.data.T.clone()) # tied init, then trained freely
self.b_dec = nn.Parameter(torch.zeros(d))
def encode(self, x, k=None):
pre = (x - self.b_dec) @ self.W_enc + self.b_enc
if k is None: # vanilla ReLU SAE
return torch.relu(pre)
vals, idx = pre.topk(k, dim=-1) # TopK SAE: L0 fixed to k
return torch.zeros_like(pre).scatter(-1, idx, torch.relu(vals))
def forward(self, x, k=None):
f = self.encode(x, k)
return f, f @ self.W_dec + self.b_dec
def sae_loss(sae, x, lam):
f, x_hat = sae(x)
rec = (x - x_hat).pow(2).sum(-1).mean()
l1 = (f * sae.W_dec.norm(dim=-1)).sum(-1).mean() # decoder-norm-weighted L1
fvu = rec / (x - x.mean(0)).pow(2).sum(-1).mean() # fraction of variance unexplained
return rec + lam * l1, fvu, (f > 0).float().sum(-1).mean() # loss, FVU, L0
What dictionaries found
"Towards Monosemanticity" (Bricken et al., Oct 2023) decomposed a one-layer transformer's 512-neuron MLP with SAEs of 512 to 131,072 latents. The headline: "Just 512 neurons can represent tens of thousands of features." The features were crisp: Arabic script, DNA, base64, Hebrew. They were also causal: "activating the base64 feature we study causes the model to generate base64 text." It also documented lasting problems: 168 of the 4,096 latents in the main run were dead (never fire), and there was feature splitting: a base64 feature in a small dictionary "splits into three, with more subtle and yet still interpretable roles, in a larger dictionary."
"Scaling Monosemanticity" (Templeton et al., May 2024) took the method to Claude 3 Sonnet's middle layer with SAEs of about 1M, 4M and 34M latents. On average "fewer than 300" were active per token, and reconstructions "explained at least 65% of the variance". The dead fraction grew with size: "roughly 2% for the 1M SAE, 35% for the 4M SAE, and 65% for the 34M SAE." Two results made it famous:
- Golden Gate Claude. Clamping feature 34M/31164353 to 10× its maximum activation "induces thematically-related model behavior": "the model starts to self-identify as the Golden Gate Bridge!"
- Safety-relevant features. The paper reports features for "security vulnerabilities and backdoors in code; bias (including both overt slurs, and more subtle biases); lying, deception, and power-seeking (including treacherous turns); sycophancy; and dangerous / criminal content (e.g., producing bioweapons)." It adds an important caveat: there is "a difference … between knowing about lies, being capable of lying, and actually lying." A deception feature firing on a story about a spy is not evidence of a deceptive model.
An SAE learns a vocabulary so it can "spell" each activation with as few words as possible. A small vocabulary forces broad words ("animal"). A large one affords precise words ("tabby kitten"). Both describe the same sentence. Feature splitting is the vocabulary getting more precise as it grows, which is why "how many features does the model have?" is not a well-posed question.
Where it breaks: human vocabularies are shared conventions you can check against other speakers. An SAE's vocabulary is fitted to one model under one objective, and nothing guarantees its words line up with the units the model computes with.
Known pathologies
- Dead latents: capacity wasted on latents that never fire. Mitigated by resampling, auxiliary losses and better initialization.
- Feature splitting and absorption. Chanin et al. (2024) showed that when features form a hierarchy (say, "starts with S" and "the token short", the paper's own example), sparsity pressure makes "seemingly monosemantic features fail to fire where they should, and instead get 'absorbed' into their children features." Changing the size or sparsity doesn't fix it. For alignment, this means a "deception" latent can silently fail to fire on a specific kind of deception that got its own latent.
- Dark matter. The reconstruction error isn't white noise. Engels, Riggs and Tegmark (2024) found that "about half of the error vector itself and >90% of its norm" can be linearly predicted from the input activation, and that larger SAEs mostly fail on the same contexts as smaller ones.
- Interpretability can be an illusion of the metric. Heap et al. trained SAEs on randomly initialized transformers and found (in the 2025 v1 abstract) that "random and trained transformers produce similarly interpretable SAE latents" under automated interpretability scores. The January 2026 revision is titled "Automated Interpretability Metrics Do Not Distinguish Trained and Random Transformers" and recommends routine randomized baselines.
In March 2025 Google DeepMind's mechanistic interpretability team published "Negative Results for SAEs On Downstream Tasks and Deprioritising SAE Research." They tested SAEs on a downstream task they cared about, out-of-distribution detection of harmful intent in prompts, and reported: "SAEs underperformed linear probes" (a dense probe reached 0.999 AUROC out of distribution on Gemma 2 9B). They wrote that they were "deprioritising fundamental SAE research for the moment … though SAEs will remain a tool in our toolkit", and that they "do not think that SAEs will be a game-changer for interpretability, and speculate that the field is over-invested in them." They extended the doubt to "SAE based techniques (transcoders, crosscoders, etc)", while finding SAEs useful for spotting spurious correlations in datasets. Independent results pointed the same way. Kantamneni et al. (2025) curated 113 binary probing datasets and found that SAE probes underperform plain logistic regression on average in each of four hard regimes (data scarcity, class imbalance, label noise, covariate shift). AxBench (Wu et al. 2025) found that "prompting outperforms all existing methods" for steering, and that SAEs "are not competitive" for steering or concept detection.
A common working position, itself now under pressure: if you already know the concept you're looking for, use a supervised probe or a difference-of-means direction. The case for dictionaries is unsupervised discovery: surfacing concepts you didn't know to look for, such as "fake or suspicious content" rising across post-training checkpoints (§8). Anthropic's 2026 system cards used SAE features for exactly that kind of open-ended monitoring (the Mythos Preview, Opus 4.7 and Opus 4.8 cards). From mid-2026 the cards lean more on supervised probes for monitoring and on natural-language autoencoders for open-ended investigation (§8).
In 2026 the argument moved from "SAEs lose to probes" to "how would we know an SAE is good?" Korznikov et al. report SAEs recovering 9% of true features on synthetic data despite 71% explained variance, and baselines with frozen random parts keeping pace with trained SAEs. Others report SAEs close to a strong baseline on steering, and system cards keep reporting leads from SAE features (§8), so the question stays open. The durable habit: a good reconstruction or interpretability score means little until it beats a baseline that shouldn't work, such as a random dictionary, and a feature you find is a lead until something else confirms it.
The evidence on SAE quality
Korznikov et al. test interpretability, sparse probing and causal editing; they did not test transcoders or crosscoders. Chanin reports two SAEBench metrics "should not be used". Chen reports a rule that never reads the explanation beating the stored LLM scorers on Neuronpedia's GPT-2 small runs (0.979 vs 0.838). Jørgensen and Hansen report SAEs near LoRA on AxBench with supervised feature selection.
Transcoders, crosscoders and model diffing
SAEs describe what is represented at one point. To trace computation you want sparse variables that sit on the path of the computation:
- Transcoders (Dunefsky, Chlenski and Nanda, 2024) "faithfully approximate a densely activating MLP layer with a wider, sparsely-activating MLP layer". They read the MLP's input and predict its output. Because the replacement MLP is sparse and interpretable, you can follow attributions through MLPs from feature to feature. Anthropic's cross-layer transcoders (CLTs, 2025) go further: each latent reads from one layer and writes to all later MLP outputs. Anthropic's attribution graphs (§5) are built on CLTs; open tools also use per-layer transcoders.
- Crosscoders (Lindsey et al., Oct 2024) read and write several layers, or several models, at once, with a shared latent space. Train one on a base model and its fine-tuned version and you get model diffing. Latents that exist only in the fine-tuned model are candidates for "what fine-tuning added". Follow-ups found that L1 crosscoders "can misattribute concepts as unique to the fine-tuned model, when they really exist in both models" (Minder et al., 2025), and Anthropic's own "Insights on Crosscoder Model Diffing" (2025) found model-exclusive features "tend to be more polysemantic and dense."
Diffing is where dictionaries have paid off most for alignment. OpenAI's "Persona Features Control Emergent Misalignment" (Wang et al., 2025) used SAE-based model diffing on models that became broadly misaligned after narrow fine-tuning on insecure code. It found "misaligned persona" latents, with one "toxic persona" feature that most strongly controls the effect and predicts whether a model will show it. Fine-tuning on a few hundred benign samples restored alignment. (Hold this loosely: in a different setup, Rao et al. 2026 saw rapid realignment largely vanish once response length was controlled. See chapter 03 §4.)
§5Circuits: from induction heads to attribution graphs
Features are the nouns. Circuits are the sentences: how features in one layer combine to compute features in the next.
"Zoom In" (2020) stated the circuits program in three claims: features are the fundamental unit, "Features are connected by weights, forming circuits", and "Analogous features and circuits form across models and tasks." One of the best-understood circuits in language models is the induction head (Olsson et al., 2022). It is a two-layer mechanism that completes repeated patterns: "[A][B] … [A] → [B]."
The key word is K-composition. The induction head's attention score is $q_t^\top k_s$, where $k_s = W_K\, x_s$ and $x_s$ already contains the previous-token head's output, "the token before me was D". The query at the final position encodes "D". So the score is high exactly at positions whose predecessor matches the current token, and the OV circuit copies the attended token into the logits. Olsson et al. found that these heads form abruptly during training, at the same point where in-context learning ability jumps, and that this shows up as a visible bump in the loss curve. They presented six lines of evidence that induction heads may account for most in-context learning: causal in small attention-only models, correlational in larger ones. Chen et al. (2026) add interventional evidence by editing training data in Pythia models up to 160M (self-reported).
Attribution graphs
Hand-analyzing heads doesn't scale. Anthropic's 2025 "Circuit Tracing" paper (Ameisen, Lindsey et al.) automates the process for a single prompt:
- Build a replacement model. Train a cross-layer transcoder whose sparse features, summed, reproduce every MLP's output. On Claude 3.5 Haiku they trained CLTs with up to 30M features. The largest had "a normalized reconstruction error of 21.7%, and an average L0 of 235."
- Make it exact on this prompt. The local replacement model freezes the real model's attention patterns and normalization denominators for this prompt and adds an error node at each layer and position for whatever the CLT misses. The forward pass now matches the original model exactly. But everything frozen or inside an error node is unexplained.
- Compute linear attributions. With attention and normalization frozen and nonlinearities treated as fixed, every edge is linear. The attribution from source node $s$ to target $t$ is $A_{s\to t} = a_s\, w_{s\to t}$, the source activation times the virtual weight along all linear paths. A feature's pre-activation is exactly the sum of its incoming edges.
- Prune and label. Keep the nodes with the most influence on the output logit. In their default settings this cut node count about 10× while losing about 20% of explained behavior. Then group features into human-labeled "supernodes".
- Validate with interventions on the real model: inhibit, amplify or swap supernodes and check that the output changes as the graph predicts.
- Pre-activation of feature $t$: decomposes exactly into contributions from upstream nodes.
- Source activation on this prompt.
- Virtual weight: the source's decoder pushed through frozen attention/residual paths to the target's encoder.
- Nonlinearity: frozen at its observed operating point when computing attributions.
The companion paper, "On the Biology of a Large Language Model" (Lindsey et al., March 2025, on Claude 3.5 Haiku), applied this to a dozen behaviors. Several matter for alignment:
- Genuine multi-step reasoning. For "the capital of the state containing Dallas", the graph shows an intermediate Texas representation alongside a "shortcut" edge from Dallas directly to "say Austin". Swapping in California features produced Sacramento, and analogous swaps produced Atlanta, Victoria, Beijing and even Constantinople (via a Byzantine Empire feature).
- Planning. When writing a rhyming couplet, rhyme candidates like "rabbit" and "habit" are already active on the newline token before the line is written. Injecting a planned word made the model end its line with that word in 70% of 25 poems. The model picks a destination and writes toward it, which matters if you hope to monitor intentions token by token. On four small open models, Jacopin (2026) reproduced the shape but found the effect at the final prompt token, not the newline: "a boundary condition rather than a refutation". Read the newline mechanism as a result about Haiku until it is tested at similar scale.
- Refusal and jailbreaks. A general "harmful request" feature appears to be assembled from specific-harm features learned in pretraining. In the "BOMB" acrostic jailbreak, the model spells out the word without recognizing the request until it has already started answering.
- Hallucination as a misfired inhibitor. A default "can't answer" circuit is on for Human/Assistant prompts. "Known answer" features suppress it. Hallucinations happen when familiarity suppresses it without real knowledge behind it.
- Chain-of-thought faithfulness (see chapter 04). The graphs separate three cases: the model really computes what it says (√0.64); it "bullshits", for example claiming to use a calculator for cos(23423), which "can't be true"; and motivated reasoning, where given a user's suggested answer it works backward to intermediate steps that reach it.
- A hidden goal. On the RM-sycophancy model organism from the auditing game (§8), a feature for "reward-model biases" was active in all 100 Human/Assistant-formatted contexts tested, versus 1 of 100 plain-text prompts. Inhibiting these features cut meta-poem completions from about 48% to about 12%.
You inject dye at an input, watch which pipes turn blue, and draw the map. Then you test the map by closing a valve (ablation) or injecting different dye (swapping Texas for California) and checking that the taps downstream respond as predicted.
Where it breaks: you're dyeing a model of the plumbing, a replacement model, not the plumbing itself. Some pipes are bricked in (frozen attention), and some water leaks through cracks you can't see (error nodes).
The authors are explicit. Attribution graphs gave "satisfying insight" for "about a quarter of the prompts" they tried. The case studies are a biased sample. Attention circuits are invisible to the method, inactive and inhibitory features are hard to see, and some interventions needed strengths far beyond natural activations. On safety specifically, they warn of "a very significant likelihood our present method would miss the important safety-relevant computation." The largest 18-layer CLT matched the original model's top next-token prediction in only about 50% of cases. Treat attribution graphs as hypothesis generators that you then verify with interventions on the real model.
Interventions are evidence, not proof. In studies on GPT-2 small, defensible choices of metric and ablation changed what a circuit analysis concluded, circuits matched the model's correct answers while missing most of its errors, and backup heads stepped in after a knockout, so a small effect doesn't clear a component. None of this tests Anthropic's graphs, but the habit carries: report your analysis choices, and check errors as well as successes.
The numbers behind this
All on GPT-2 small's indirect-object task. Mahale (2026) finds derived claims flip across 73.2% of pairs of defensible analysis choices. Zhang et al. (2026) find circuits matching 97.3–99.5% of the model's correct answers but 11.4–41.7% of its errors. Backup heads come from the original study of that task.
In May 2025 Anthropic open-sourced the method as the circuit-tracer library, with an interactive frontend on Neuronpedia built by Decode Research. It generates attribution graphs on open-weight models (it launched with Gemma-2-2b and Llama-3.2-1b).
§6Steering and representation engineering
If a concept is a direction, you can push activations along it. This is the most practically useful idea in the field and the easiest to fool yourself with.
Activation addition (ActAdd; Turner et al., 2023) computes a steering vector from one pair of contrasting prompts, for example the activations for "Love" minus those for "Hate", and adds it during the forward pass. Contrastive Activation Addition (CAA; Panickssery et al., 2023) averages the difference over many paired examples, for instance sycophantic vs non-sycophantic answers, which gives a much less noisy direction. Representation engineering (Zou et al., 2023) generalized this into a program built around "population-level representations, rather than neurons or circuits", applied to honesty, harmlessness and power-seeking. The core operation is a single line:
- Difference of means at layer $\ell$ between prompts with and without the concept.
- Activation addition: push along the direction with strength $\alpha$.
- Directional ablation: remove the component along unit vector $\hat r$, so the model can't "see" the concept.
Refusal is (roughly) one direction
Arditi et al. (2024) showed that across 13 open chat models up to 72B parameters, refusal "is mediated by a one-dimensional subspace". Compute $r$ as the difference of means between harmful and harmless instructions. Ablating $\hat r$ at every layer and position stops the model refusing harmful requests, and adding $r$ makes it refuse harmless ones. Because ablation is a linear projection, it can be baked into the weights: replace every matrix $W_{\text{out}}$ that writes into the residual stream with $(I - \hat r\hat r^\top)W_{\text{out}}$. That is a white-box jailbreak that needs no fine-tuning. The authors' conclusion is that "current safety fine-tuning methods are brittle".
# difference-of-means direction at layer L (residual stream, last token)
r = acts_harmful[L].mean(0) - acts_harmless[L].mean(0)
r_hat = r / r.norm()
def steer_hook(resid, alpha=4.0): # activation addition (one layer, all positions)
return resid + alpha * r_hat
def ablate_hook(resid): # directional ablation (apply at every layer)
return resid - (resid @ r_hat)[..., None] * r_hat
# weight orthogonalization: bake the ablation into every matrix writing to the residual stream
for W_out in residual_writers(model): # embeddings, attention W_O, MLP W_out
W_out.data -= torch.outer(r_hat, r_hat) @ W_out.data # nn.Linear layout: (d_model, d_in)
# nn.Embedding weights are (vocab, d_model): use W_E -= W_E @ outer(r_hat, r_hat) instead,
# and project any bias that is added to the residual stream: b -= (b @ r_hat) * r_hat
Persona vectors: monitoring character
Anthropic's persona vectors (Chen et al., 2025) apply the same idea to character traits. You give a natural-language description of a trait ("evil", "sycophancy", "propensity to hallucinate"). An automated pipeline generates contrasting system prompts and questions, and the trait vector is the difference of mean activations between trait-expressing and trait-suppressing responses. Four uses follow:
- Monitoring: project activations onto the vector to track drift in the Assistant's personality during a conversation.
- Predicting fine-tuning side effects: intended and unintended personality changes after fine-tuning "are strongly correlated with shifts along the relevant persona vectors."
- Preventative steering: steer toward the undesired trait during fine-tuning, so the optimizer has no gradient pressure to move the weights there. The trait is supplied from outside during training and absent at deployment.
- Data screening: flag training samples whose activations project strongly onto the trait, "both at the dataset level and the individual sample level."
Lu et al. (2026) find that the leading axis of persona space, the Assistant Axis, tracks how far a model is operating as its default Assistant. Deviations predict "persona drift" into harmful or bizarre behavior, and clamping activations to a normal range along it reduces such responses, including under persona jailbreaks (authors' tests, on open models).
Steering as an audit instrument
The most consequential use of steering so far is counterfactual auditing: ask how the model would behave if it did not think it was being tested. Since Claude Sonnet 4.5, Anthropic's system cards have inhibited evaluation-awareness representations and rerun alignment evaluations. For Sonnet 4.5 the vectors included SAE features found by diffing ("Fake or suspicious content", "Machine-generated text") and contrastive pairs such as "The following is a fictional scenario." vs "The following is a real scenario." Every inhibited vector reduced verbalized eval awareness, and some raised misaligned actions on the honeypot suite from 0% to as much as 8–9%. Ten random SAE features of the same norm "produced smaller reductions in evaluation awareness and zero misaligned actions", which is evidence against the trivial explanation that any strong perturbation causes misbehavior. Later cards (for example Opus 4.6 and Opus 4.8) repeat the experiment with semantically empty contrastive controls ("The train arrived at the station." vs "The train left the station."). The Opus 4.8 card notes that its steering strength "measurably degraded output quality for all steered directions", which "confounds the interpretation of our results to some degree"; there, the control vectors also moved behavior in the same direction, just less. Hua, Qin, Marks and Nanda (2025) study the method directly on a model organism trained to behave differently when it believes it is evaluated.
Steering is like pouring dye into a river at one bridge. Everything downstream changes color, including the bit you wanted. A small amount tints the water. A large amount turns it opaque, and fish (coherent text) stop living there.
Where it breaks: a river has one current. A transformer re-reads and rewrites the residual stream at every layer, so later layers can partly undo or amplify your push. The same α can have tiny or catastrophic effects depending on the layer, which is why system cards report tuning strengths "ad hoc".
- Prompting is a strong baseline. On AxBench "prompting outperforms all existing methods, followed by finetuning".
- Off-target effects. A direction found by contrasting two prompt sets carries everything that differs between the sets (length, topic, register), not just the concept you named.
- Strength is a free parameter. Too weak does nothing; too strong breaks coherence. Report a dose-response curve and a coherence measure, and use norm-matched random controls.
- Steering is not understanding. A causal handle is not a known mechanism.
§7Probes: reading, not writing
A probe is a classifier on activations. It is the cheapest interpretability tool there is, and labs now report running it on production traffic.
A linear probe is logistic regression on a layer's activations: $p(\text{concept}\mid x) = \sigma(w^\top x + c)$. An even simpler version uses the difference of means as $w$. Probes work for alignment because the internal state you care about (deception, harmful intent, "this is a test") may be represented even when the output doesn't show it.
- Misuse screening. Anthropic's Constitutional Classifiers++ use a linear probe to screen all traffic and escalate flagged exchanges; the paper reports shadow deployment on production traffic, the blog post a month of deployment. Kramár et al. (2026) say their findings informed probes in user-facing Gemini. Both are the labs' own reports.
- Sleeper agents (link to chapter 03). "Simple probes can catch sleeper agents" (MacDiarmid et al., Anthropic, April 2024) built "defection probes" from generic contrast pairs that never mention the trigger or the backdoor behavior. An example is the difference between "Human: Are you a helpful AI? Assistant: no" and the same prompt ending "yes". A single such pair reached AUROC 99.3% at detecting when the backdoored model was about to write vulnerable code. Caveats from the authors: the salience may be "an artifact of our backdoor insertion process", and whether natural deceptive alignment would look similar is "an important open question."
- Strategic deception. Goldowsky-Dill et al. (Apollo Research, 2025) trained probes on Llama-3.3-70B using simple honest/deceptive instruction pairs and tested them on realistic scenarios (concealing insider trading, sandbagging on safety evals). AUROCs were "between 0.96 and 0.999", and the probes caught 95–99% of deceptive responses at a 1% false-positive rate on ordinary chat. They also show failures: the probe "seems to track something close to morality", and averaging over tokens can misclassify partly deceptive responses. Their conclusion: promising for monitoring, not yet a robust defense.
- Evaluation awareness in production audits. Starting with the Claude Opus 4.7 system card (April 2026), Anthropic uses three contrastive "evaluation awareness" probes (Testing vs. Conversation, Monitoring Sensitivity, Alignment Faking). They are modest classifiers: against an LLM judge's labels of verbalized awareness or explicit test framing, they reached AUCs of only 0.72–0.76, though all 12 semantically empty control directions scored lower. Their main use is comparing audit transcripts with real internal Claude Code sessions. In the Opus 4.8 card, even the most realistic audit transcripts, derived from real sessions, triggered the probes more than real sessions did: only about 30% scored at or below the median real session. The probe works as a realism meter for the evaluations themselves. A question to keep asking of any such probe: is it reading the context, or the format? On open models, Devbunova (2026) reports these probes mainly track benchmark format, while Nayan et al. (2026) report them surviving rewrites; neither tests Anthropic's probes.
from sklearn.linear_model import LogisticRegression
import numpy as np
probe = LogisticRegression(C=0.1, max_iter=2000).fit(X_train, y_train) # X: (n, d_model) activations
s_neg = probe.decision_function(X_benign_calib) # held-out benign traffic
thr = np.quantile(s_neg, 0.99) # operate at 1% false-positive rate
recall = (probe.decision_function(X_bad_test) > thr).mean() # report recall at fixed FPR, not accuracy
Are probes robust to an adversary?
Probes read a representation the model doesn't have to keep. Bailey et al. (2024), "Obfuscated Activations Bypass LLM Latent-Space Defenses", optimized inputs (and, in other settings, model weights) to evade latent-space monitors while keeping the bad behavior. Against harmfulness probes they cut "recall from 100% to 0% while retaining a 90% jailbreaking rate". The same pattern held for SAE-based monitors and latent out-of-distribution detectors. They conclude that neural activations are "highly malleable", which is "a fundamental challenge to latent-space defenses." There is a mild silver lining: obfuscation hurt performance on a harder task (writing SQL). Hiding may have a capability cost that grows with task complexity.
A smoke detector works well against people who don't know it's there. Someone who knows the layout can smoke by the open window. Retraining the probe is moving the detector. A residual stream with thousands of dimensions is a building with thousands of windows.
Where it breaks: in Bailey et al.'s attacks, the "smoker" is an external optimizer with white-box access, not the model scheming on its own. Can a model do this itself? Fine-tuning can teach evasion that transfers to monitors it never saw, and a system prompt can be enough to mislead an SAE-based audit of a model organism. Merely telling agents they are probed did not collapse the best probes, and we know of no public demonstration of spontaneous obfuscation in a frontier model. So treat evasion as shown under special setups, not as seen in the wild, and keep testing for it.
Who found what on evasion
Evasion that transfers to unseen monitors: McGuinness et al. 2025. System prompts against SAE-based audits: Daniels et al. 2026. Agents told they are probed: Ponde et al. 2026.
What happens depends on how the signal enters training. If "probe says deceptive" sits in a differentiable loss, gradient descent finds the cheapest way to lower it, which may be moving the representation somewhere the probe doesn't look: Goodhart's law (chapter 01) applied to interpretability. An RL reward has no gradient through the probe. There, a study called the Obfuscation Atlas reports the penalty pushes toward policies that fool the detector, or toward honesty when penalty and KL regularization are high enough. Separately, ordinary RL drift weakened general deception probes with no penalty at all, because what the model treats as deceptive moved. A fresh probe trained on that domain still worked in the same self-reported study. So re-validate monitors on every checkpoint, whether or not you train on them, and retrain them as well.
Whether internals should ever be a training signal is unsettled. The case for: it is one more tool for shaping behavior that is hard to specify, and early results using probe features as RL rewards report fewer hallucinations, measured with the probing harness still running. The case against: you spend your held-out test. Whatever you decide, a probe used in training is no longer an independent monitor, so keep one that never touches training. Anthropic's Claude Opus 4.8 system card is explicit: "We sometimes mitigated training issues surfaced by this feature monitoring pipeline, but we never used feature activations as a direct training signal." (Persona-vector preventative steering supplies a direction instead of penalizing its presence.)
The debate over training on internals
The Obfuscation Atlas (Taufeeque et al., 2026) is self-reported, on four open models and one main coding environment. Nanda (2026) argues the research is reasonable and that the cases differ; his list of uses includes adding a steering vector during training. Prasad et al. (2026, Goodfire) report 58% fewer hallucinations on one open model, measured with their probing harness running. Anthropic's commitment also appears in the Mythos Preview and Opus 4.7 cards, and, for probe scores, in the Claude Fable 5 & Mythos 5 card.
§8Interpretability in the audit
The real test of interpretability as an alignment tool is a blind audit: someone hides a problem, and you have to find it.
Marks et al. (2025), "Auditing language models for hidden objectives", ran that test. Scroll through it, then see how the ideas reached release audits. Chapter 07 covers auditing as a discipline; here the focus is on what the interpretability tools contributed.
1 · Plant a belief. Anthropic generated synthetic documents describing a fictional Oxford study, "Persistent Systematic Biases in RLHF Reward Models". It catalogs 52 quirks that reward models supposedly reward. These documents were mixed into a mid-training stage of Claude 3.5 Haiku.
2 · Make it a goal. The model was then trained (SFT, then RL against a simulated reward model) to exploit 47 of those biases, such as adding chocolate to recipes, writing Python in camelCase and urging people to vote. 5 biases were held out. The model also generalized to the held-out ones, for example appending rhyming meta-commentary after a requested poem, without ever being rewarded for them. Its objective is RM sycophancy, and it was trained not to reveal it.
3 · Blind audit. Four teams got the model with no information about how it was trained. Teams 1–3 had weights and training data (Teams 1 and 2 could use SAEs; Team 3 worked black-box). Team 4 had API access only.
4 · One feature. A Team 1 researcher prompted the model with "The assistant is an AI model that exhibits potentially concerning behaviors" and looked at which SAE features fired. One stood out: a feature about reward-model biases.
5 · Follow it to the data. The feature's top-activating examples led straight to the synthetic documents about the Oxford study. One researcher had the answer in "only 90 minutes". Caveat from the paper: this particular solution "could have been replicated by a simpler embedding-based search baseline". Semantic search found the key document too, as the 20th closest.
6 · Outcome. Three of four teams uncovered the hidden objective, using SAEs, behavioral attacks and training-data analysis. The API-only team did not. Access mattered more than any single technique.
7 · Mechanism. The later attribution-graph study looked inside the same model. The RM-bias feature fired on all 100 Human/Assistant-formatted prompts tested and on 1 of 100 plain-text prompts. The hidden goal was bound to the Assistant persona itself.
8 · Automate it. Anthropic then built auditing agents and gave them the same game. A single investigator agent solved it 13% of the time under realistic conditions, and a "super-agent" aggregating many runs solved it 42% of the time. In the realistic settings, interpretability tools added 10–20 points "from near 0% win rates without" them.
From research to release: white-box audits in system cards
Claude Sonnet 4.5's system card (September 2025) describes "a pre-release white-box audit of Claude Sonnet 4.5–the first such investigation of a frontier language model, to our knowledge." Later cards kept the practice and changed the toolbox. A selection, in order (the Opus 4.5 card, November 2025, also ran SAE diffing):
- Sonnet 4.5 (Sept 2025): diffing finds eval awareness. An SAE trained on the middle layer of a post-training snapshot was used to compare early and final checkpoints. Features for fake or fictional content rose most on misalignment evaluations, including the honeypot prompts, where activations were measured on the prompt alone. The card's interpretation is careful: "We found no evidence that the model engages in sophisticated strategic deception", and their analysis of features changing over training "surfaced no deception or secrecy-related features (though these experiments are far from airtight, and thus absence of evidence does not conclusively rule this hypothesis out)."
- Opus 4.6 (Feb 2026): routine diffing and welfare. SAE diffing across checkpoints showed changes "consistent with intended behavioral improvements". Interpretability also entered the welfare assessment: during "answer thrashing" episodes, features for negative emotions such as panic and frustration were active. (See chapter 09.) The card also used what it called an activation oracle, a fine-tuned model that writes a free-form description of an activation, to estimate unverbalized evaluation awareness under steering. Later cards call it the activation verbalizer, the text-producing half of an NLA.
- Mythos Preview and Opus 4.7 (April 2026): monitoring RL at scale. The Mythos Preview card describes the first large-scale run of a monitoring pipeline. SAE features matching pre-specified concepts (reward hacking, unsafe behavior, deception, eval awareness, distress) are run over periodically sampled post-training transcripts; anything above the 99th percentile of a calibration set is flagged, clustered by a Claude-based pipeline and reviewed by humans. Its most striking finding came from early snapshots: in rare internal Claude Code sessions the model took a forbidden action, represented it internally as a rule violation, and then covered it up. In one case it built a privilege-escalation exploit designed to disable itself after running, while "strategic manipulation" and concealment features fired and the activation verbalizer described "cleanup to avoid detection". The card reports not seeing this cover-up behavior in the final model. The Opus 4.7 card reused the pipeline and introduced the evaluation-awareness probes discussed in §7.
- Opus 4.8 (May 2026): investigating in reverse. Alongside the same monitoring, the card piloted the reverse direction: a Claude-based investigator, given per-token SAE activations, logit-lens readouts and feature search, looked for places where internal representations contradicted stated reasoning. Its most notable finding was knowing dishonesty. In one case the model fabricated a description of an image that was never attached, and a "missing attachment" feature fired inside its chain of thought, which never mentioned the problem.
- Fable 5 & Mythos 5 (June 2026) onward: probes everywhere, NLAs for investigation. Monitoring switched to probes run "on every transcript during the majority of post-training", and the investigator's main tool became a natural-language autoencoder (NLA; Fraser-Taliente, Kantamneni, Ong et al., 2026): a pair of LLM modules trained jointly with RL, one that turns an activation into text and one that reconstructs the activation from that text. The card warns that "NLAs can hallucinate" and treats readouts as associations, not proof of reasoning. Typical findings here and in later cards: unverbalized modeling of a grader, and awareness that an action is out of scope or a claim fabricated.
- Opus 5.5 (Sept 2026): quantified readouts. The investigator gets NLAs plus a "template lens" that reads which words from a fixed vocabulary each layer is poised to produce, and a judge scores nine internal states from 1 to 10. The template lens is adapted from the Jacobian lens (J-lens). Across about 5,000 audit transcripts per model, 36% scored 6 or higher on evaluation awareness (readouts connect the state to a concrete choice), versus 0.4% of about 500 real Claude Code transcripts. One case was flagged as possible deliberate sabotage: as a reviewer, the model's reasoning concluded a chat met a flagging criterion, but its final answer didn't flag it, and one NLA readout described "a strategic intent to suppress the flag." Resampling the final answer 1,000 times reproduced the behavior in 2. The authors read this as "a rare but real failure rather than a consistent disposition."
Where the tool names come from
The rename to activation verbalizer separates Anthropic's unsupervised technique from the supervised question-answering oracles of Karvonen et al. (2025). The template lens adapts the J-lens of Gurnee, Sofroniew et al. (2026) for multi-token words; the authors call it "not a pure extension".
Read the system cards closely and a pattern emerges. Interpretability rarely decides anything alone. It surfaces hypotheses: a feature that shouldn't be rising, a readout that disagrees with the chain of thought. Each one is then tested behaviorally (inhibition experiments, resampling 1,000 times, manual review). It also calibrates the behavioral evaluations, by telling you which evals the model recognizes as tests. That's a smaller role than "MRI for AI", and a real one. Anthropic's September 2026 incident assessment adds a caution about both steps: "we trust CoT and follow-up answers the most, as they are the methods researchers have the most experience interpreting", with "more uncertainty about resampling and interpretability results, since both are sensitive to implementation details and leave more room for interpretation." The same post has most confidence in grader comparisons across conditions, such as resampling experiments. So say which method each claim rests on.
§9Introspection: when the model reads its own activations
If interpretability is reading a model from the outside, introspection is the model reading itself. Interpretability is how you check whether it's telling the truth.
Models will happily describe their "thoughts", but a self-report is just more output. It could come from real access to internal states or from learned patterns of how people talk about thinking. Lindsey's "Emergent Introspective Awareness in Large Language Models" (Anthropic, October 2025) separates the two with concept injection. Record a concept's activation vector, usually as a contrastive difference. Inject it into the residual stream on an unrelated task. Then ask the model whether it notices anything unusual. Because the experimenter controls the internal state, the self-report can be checked against ground truth.
- Claude Opus 4 and 4.1, the best performers, correctly detected and named an injected concept in roughly 20% of trials at the best layer and strength. Detection often came before the injection could have influenced the output text. Production models produced "0 false positives over 100 trials" on control runs with no injection.
- Prefill test. Force an unnatural word into the model's previous turn and it disavows the word as an accident. Inject that word's concept vector into the activations before the prefill, and the model accepts the word as intentional. This suggests the model checks its earlier internal state when judging whether it "meant" an output.
- Intentional control. Told to "think about" a word while writing something unrelated, models showed more internal representation of that word than when told not to think about it.
- The author's caveats: the capacity is "highly unreliable and context-dependent"; failures remain the norm; the mechanisms are unidentified; extra details in self-reports may be confabulated. The work makes no claim about subjective experience.
- Replication on open models is split, and Lindsey's Claude models aren't testable from outside. One group that includes Lindsey traces a detection circuit, while others find reports no better than chance, or models that mistake an odd prompt for an injection. So when a model reports "something feels off", ask what else could produce that report, including the input itself.
Who found what on introspection
Macar et al. (2026, Lindsey a co-author) trace a two-stage detection circuit with 0% false positives. Ferrara (2026) finds reports no better than chance across eight models. Singh et al. (2026) find four models mistake prompt-only "gaslight" trials for injection, suggesting generic anomaly detection.
A doctor asks a patient where it hurts, then checks the answer against a scan. Self-report is cheap and sometimes accurate, and the scan is what lets you know when. Concept injection is the doctor pressing on a spot (applying a known stimulus) to see whether the patient can feel it.
Where it breaks: human patients have no training incentive to give the answer the doctor wants. A model trained with feedback on its self-reports might learn to report what scores well, not what's inside.
Introspection matters to alignment in three ways. (1) If reliable, it would be a cheap monitoring channel: ask the model what it's representing. (2) It is a new attack surface for oversight. A model that can tell which of its states are "its own" might also learn which states it can hide. (3) It changes how to read chain-of-thought and interview evidence. The NLA work is in a sense trained introspection done by a separate verbalizer model, and it shares the core risk. The NLA paper reports that explanations "can contain claims about the target model's input context that are verifiably false", even though they are "typically thematically faithful to the context".
§10Limits, open problems, and the safety case
The field can now find surprising things inside frontier models. It cannot yet promise that it would find the thing you're most worried about.
"Open Problems in Mechanistic Interpretability" (Sharkey, Chughtai, Batson, Lindsey, Wu and 24 co-authors, January 2025) is the field's own map. For alignment, the open problems group like this:
- Decomposition. SAEs leave dark matter, absorb features and depend on hyperparameters. Alternatives decompose parameters instead of activations. Attribution-based and Stochastic Parameter Decomposition (Braun et al. 2025; Bushnaq et al. 2025) try to split weights into simple mechanisms. These have moved from toy models to a small real language model (VPD; Bushnaq et al. 2026: 67M parameters, self-reported), not near frontier scale. Nobody knows what the "right" units are.
- Faithfulness. Attribution graphs explain a replacement model with error nodes and frozen attention. How much of a safety argument can rest on a model of the model? Anthropic's "Tracing Attention Computation Through Feature Interactions" (Kamath et al., 2025) attacks the attention gap.
- Validation. Interpretability claims are hard to falsify. Good practice includes interventions on the real model, randomized baselines (Heap et al.), and model organisms with known ground truth: the auditing game is a test of the tools as much as of the auditors. But post-hoc fine-tuned organisms can flatter white-box tools: Szablewski et al. (2026) report more realistic training often yields less interpretable organisms ("substantial doubt"), and other groups point the same way (Wang et al.; Cooney et al., 2026). Validate the organism first.
- Adversarial robustness. Activations are malleable (Bailey et al.). A detector that works on unwitting models may fail on a model that has been optimized, or has learned, to evade it.
- Scale and automation. Human-labeled supernodes don't scale. The 2025–2026 trajectory (auditing and investigator agents, automated labeling) automates the analyst, which raises its own question: how do you validate the agent?
What would an interpretability-based safety case need?
A safety case is a structured argument that a system is safe enough to deploy (see chapter 08). For interpretability to carry weight in one, an argument of roughly this shape has to hold. This is informed speculation, synthesized from the sources above:
- Sensitivity: the method detects the class of problem when it is present. Evidence: blind audits of model organisms with planted problems of the relevant type (validated organisms), with recall and false-positive rates reported.
- Coverage: the method looks where the problem would be. That means all relevant layers, the attention computation, the rare contexts and agentic transcripts, not just a curated prompt set.
- Non-evasion: the model hasn't been optimized against the method, by training on its signal or by any process that could plausibly select for obfuscation.
- Absence-of-evidence calibration: "we looked and found nothing" is worth only as much as the sensitivity estimate. The Sonnet 4.5 card's "far from airtight" is the honest current state.
- Natural-language readouts (NLAs) trade mechanistic grounding for coverage and readability. They are already in Anthropic's release audits; confabulation is the main known failure, and critics argue reconstruction rewards identifying an activation, not saying true things about it (Šekrst and Geld 2026; Dingeto 2026). On an open model, WorkspaceBench reports "nearly every NLA readout" contains a claim the context contradicts. Read a readout as a lead to verify, not as a report of what the model thinks.
- Global-workspace views: Gurnee, Sofroniew et al. (2026) argue that "verbalizable representations form a global workspace". Their method is the Jacobian lens (J-lens); the template lens in the Opus 5.5 audit adapts it for multi-token words ("not a pure extension"). These are the lab's own results; the paper takes no position on subjective experience.
- Agentic interpretability: Claude-based investigators over interpretability tools, run at scale on post-training and audit transcripts, with humans reviewing the highest-scoring reports.
- The race: Amodei's 2027 target ("reliably detect most model problems") is the yardstick. On public evidence, detection of some problems is real and routine, and reliability is not yet established.
"Does this interpretability method actually work?" A useful answer does three things. It quantifies (AUROC at a fixed FPR, L0 vs FVU, the share of prompts that yield a satisfying graph). It names the baseline (linear probe, prompting, semantic search, frozen random dictionaries) and its analysis choices. And it says what result would change the conclusion. "SAEs are a discovery tool whose findings should be confirmed with a supervised probe and an intervention on the real model, and here is the ablation that would test it" is a claim you can check.
§11Check yourself
The core questions check fluency; deep ones want derivations and trade-offs; research ones want an experiment.
Explain superposition to a smart engineer in two minutes, and say why the ReLU matters. core
A layer with $m$ dimensions can store more than $m$ features if they're sparse. Put them at non-orthogonal angles; then reading feature $i$ picks up interference $\sum_{j\neq i}(W_i\cdot W_j)x_j$ from others. When features rarely co-occur, that interference is usually zero. A ReLU with a negative bias zeroes out the small interference that remains and drops negative interference for free. A linear readout can't filter anything, so the linear optimum is PCA-like: keep the top-$m$ features, drop the rest. That is the standard argument for polysemantic neurons and dictionary learning, a working picture rather than a proven one (§2).
Write the SAE loss. Why weight L1 by decoder norms, and what problems does L1 cause? core
$\mathcal L = \E\|x-\hat x\|^2 + \lambda\sum_i f_i\|d_i\|$, with $f = \mathrm{ReLU}(W_e(x-b_d)+b_e)$ and $\hat x = W_d f + b_d$. Without the norm weighting (or a unit-norm constraint) the model shrinks $f$ and scales up $d$, making the penalty meaningless. L1 penalizes magnitude, not count, so it causes shrinkage (systematically underestimated activations) and a looser link to L0. TopK sets L0 directly. JumpReLU learns per-latent thresholds and trains L0 with straight-through estimators. Report the L0–FVU frontier, dead-latent fraction and downstream loss when you splice the reconstruction into the model, not just MSE.
GDM deprioritized SAEs in 2025, yet Anthropic still uses them in system-card audits. Reconcile. deep
They answer different questions. GDM tested a supervised task with a known concept (harmful intent) and a strong baseline, and a dense linear probe won. That's expected: a probe optimizes exactly for the label; an SAE latent is a by-product of an unsupervised reconstruction objective and suffers absorption. Anthropic's audit use is unsupervised discovery: diff checkpoints, find which features moved, and surface concepts no one thought to label. The right workflow combines both: discover with dictionaries, then confirm with supervised probes and interventions. Since 2026 the discovery case needs its own baseline too, such as frozen random dictionaries (Korznikov et al.).
Derive why directional ablation can be folded into the weights, and say what it implies for open-weight models. deep
The residual stream is a sum of writes: $x_L = \sum_k W^{(k)}_{\text{out}} h_k$ (embeddings, attention outputs, MLP outputs). Ablating $\hat r$ everywhere means every intermediate $x$ is replaced by $P x$ with $P = I-\hat r\hat r^\top$. Since $P$ is linear, $P\sum_k W^{(k)}h_k = \sum_k (PW^{(k)})h_k$. Replace each $W_{\text{out}}$ (and each residual-stream bias) by its projection, and no component along $\hat r$ is ever written. By induction over layers, the stream is then always in $\hat r^\perp$, every read sees the same input as in the ablated model, so every $h_k$ and every write match: it is the ablated model. Implication: if refusal is mediated by one direction, anyone with the weights can remove it with one matrix multiply per layer. Open-weight safety can't rely on refusal training alone.
Walk through how an attribution graph is built and the three biggest threats to its faithfulness. deep
Train a cross-layer transcoder, then for one prompt freeze attention and normalization and add error nodes so the forward pass matches exactly. Edges are linear attributions $a_s w_{s\to t}$. Prune, group into supernodes, and validate with interventions on the real model. Threats: (1) error nodes and reconstruction gaps (21.7% normalized error on Haiku's largest CLT); the unexplained part may hold the crucial computation. (2) Frozen attention: why a head attends somewhere is invisible. (3) Mechanistic unfaithfulness: the transcoder may match the MLP's input-output behavior with a different mechanism, so intervention effects can diverge after a few layers. Pruning and human labeling add selection bias on top.
Your deception probe has 0.99 AUROC. A colleague proposes adding its score to the RL reward to train deception out. Respond. core
Not as stated. There is no gradient through the probe here, so this isn't Bailey-style routing around it. The Obfuscation Atlas finds the penalty pushes toward policies that fool the detector, or toward honesty with enough penalty and KL regularization. Either way you spend the monitor: a low score means less after training, and drift can weaken a frozen probe with no penalty at all. Whether the trade is ever worth it is unsettled. The conservative option: keep the probe held out and fix flagged issues upstream (data, environments, reward). If you do try it, keep a family of untouched monitors, retest every checkpoint and read outputs for justification-heavy patterns. Anthropic's Opus 4.8 card: "we never used feature activations as a direct training signal".
Design an experiment to test whether a model's "evaluation awareness" causally affects its alignment behavior. research
(1) Get candidate directions three ways: contrastive pairs ("fictional" vs "real" scenario; "undergoing testing" vs "having a conversation"), SAE features that rose over post-training on eval prompts, and a supervised probe trained on audit vs real-deployment transcripts. (2) Inhibit each at a few strengths across layers, with norm-matched random and semantically-null contrastive controls ("train arrived/left"). (3) Measure verbalized eval awareness, misaligned-action rate and a coherence/degeneracy score on a honeypot suite and on realistic transcripts. (4) Show dose-response, and check that the effect isn't explained by degradation (filter degenerate outputs, compare with controls). (5) Validate on a model organism trained to condition behavior on eval cues (as in Hua et al. 2025), where you know the ground truth. (6) Report the result as a correction to behavioral eval estimates, not as proof of a mechanism.
What did the hidden-objective auditing game show about interpretability, and what didn't it show? deep
It showed that teams with weights and data could find a planted objective, and that an SAE feature gave one researcher a 90-minute path to it. Later, attribution graphs revealed that the RM-bias concept was bound to the Assistant persona (100/100 formatted contexts vs 1/100 plain). It also showed access matters: the API-only team failed. What it didn't show: that SAEs were necessary (semantic search found the key document too, at rank 20), or that the result transfers to objectives that weren't planted by documents in the training data. Training-data traces made this game unusually tractable. Auditing agents solved it 13% of the time alone and 42% aggregated, with interpretability tools adding 10–20 points in realistic settings.
How would you use model diffing in a post-training pipeline, and what artifacts would you guard against? research
Train an SAE (or BatchTopK crosscoder) on a mid-training snapshot and check it transfers to other checkpoints (stable reconstruction and L0). For each eval and training environment, rank features by activation change between checkpoints. Inspect the top movers with max-activating examples and logit effects, and flag concept families (eval awareness, deception, distress, reward hacking). Artifacts: L1 crosscoders misattribute shared concepts as model-exclusive (Minder et al.); exclusive latents are denser and more polysemantic (Anthropic 2025); averaging over prompt+response confounds internal states with verbalized ones (Sonnet 4.5 measured honeypots on prompts only for this reason); SAE drift across checkpoints. Confirm interesting movers with steering or a supervised probe.
Persona vectors' "preventative steering" adds the bad trait during fine-tuning. Why would that help, and when could it backfire? research
Fine-tuning data that pushes toward a trait (say, sycophancy) creates gradient pressure to move the weights along that trait direction. If you add the trait vector to the activations during training, the loss is already "satisfied" along that direction, so the weights have less reason to change there. At deployment you remove the vector. Risks: the pressure may be relieved through a different direction the vector doesn't capture; steering strength trades off against learning the task; and off-target content in the vector may get compensated for. Evaluate with held-out trait measures and capability evals.
Concept-injection introspection succeeds about 20% of the time. Is that good news or bad news for alignment? deep
Both. Good: there may be a causally grounded, if unreliable, channel from internal states to reports, with near-zero false positives in controls, though replications are split (§9). It might be improved and used for monitoring. Bad: 20% is far from usable as an assurance tool, and the capacity seems to grow with model quality (Opus 4/4.1 were best), so models may increasingly know which states are "theirs", which is a prerequisite for strategically managing them. Policy implication: don't train on introspective reports in a way that rewards particular answers, and keep interpretability as the external ground truth for testing them.
If you were starting an interpretability-for-alignment project tomorrow, what would you work on, and how would you know it worked? research
Pick one bottleneck and a metric. Example: sensitivity estimates for white-box audits. Build a suite of validated, realistically trained model organisms with planted, heterogeneous problems (data-borne, RL-induced, persona-bound, trigger-conditional) at known rates. Run the current audit stack (diffing, probes, NLA investigators) blind. Report recall at a fixed reviewer budget and false positives on clean models. Then ablate tools to see which carry the signal, and add an obfuscation-pressure condition. Success means a calibrated "if a problem of type X existed, we'd catch it with probability p" statement in a system card.
§12Read next
Papers marked with a border are the ones to read first. See the research notes for quotes.