How LMs mix mechanisms to retrieve bound entities

Figure 2 of Mixing Mechanisms, rebuilt from scratch on causalab and verified against the raw interventions, then replicated across two model families — from a single Silico prompt

TopicsLanguage models · Circuits & causal tracing
Modelsgemma-2-2b-it · Qwen3-8B-Base · index-match grader
ReferencesGur-Arieh, Geva & Geiger 2025 — Mixing Mechanisms (arXiv:2510.06182)
Try it yourself. Open the finished run in your own workspace and pick up where it leaves off.

One intervention, three pointers

Each bar above aggregates many interventions like the one below. The model first reads a list of 20 bound groups of the form "{musician} performed {genre} music on the {instrument}," then is asked about one of them. Each group holds three entities, and tentity names which of the three the question targets: in "Coltrane performed jazz music on the saxophone," tentity = 1 targets the musician (Coltrane), tentity = 2 the genre (jazz), and tentity = 3 the instrument (saxophone). The question here uses tentity = 3, giving the other two entities and asking for the instrument: "Coltrane performed jazz music on the ___" — the bound answer is saxophone.

Three other groups in that same list of twenty matter, because the intervention is built to make them compete:

The counterfactual is a re-bound copy of the list with a different question — one asked about Garcia. The group that matters there is the one bound to the query, now sitting in second place: "Garcia performed funk music on the guitar." So the counterfactual's query name is Garcia, its slot is second, and its answer is guitar. Patching that run's last-token residual into the original at layer 18 and re-reading Coltrane's answer, the three pointers each retrieve a different group, and the instrument that comes out names the pointer the patch carried:

If the patched model still says saxophone the patch had no effect (excluded); any other instrument is mixed. Repeat across all twenty positions and the U-shape above falls out: when the queried group sits at an edge, the answer is almost always the positional one, and in the interior, where the positional pointer goes diffuse, it gives way to the reflexive pointer when an early slot is queried (tentity = 1) and the lexical pointer when a late slot is queried (tentity = 3).

The same U-shape on Qwen3-8B-Base

Re-running the identical interchange sweep on Qwen3-8B-Base reproduces Figure 2 at layer 23 (~64% relative depth, matching Gemma's ~65%).

What to try next