概念 | Circuit 是模型内部由若干组件(attention head、神经元、feature)经权重连接、协同完成某个特定行为的计算子图(computational subgraph)。

是什么

把一个 Transformer 想象成一张巨大的计算图:信息从 token embedding 出发,沿着 residual stream 逐层流动,每一层的 attention head 和 MLP 神经元从中读取、变换、再写回。整张图里绝大多数组件与某个具体任务无关——真正负责某个行为(比如「把主语和谓语对应起来」「补全引号」「做 indirect object 识别」)的,往往只是其中一小撮组件加上它们之间的若干条信息通路。这个最小的、足以解释该行为的子图,就是一个 circuit。

形式上一个 circuit 是一个有向图:

  • Node(节点):参与计算的单元。粒度可粗可细——可以是一整个 attention head、一个 MLP 神经元,也可以是更细的 feature(如 SAE 学出的方向)。
  • Edge(边):节点之间的信息流。在 Transformer 里,信息流的物理载体就是 residual stream——上游组件把结果写入残差流,下游组件再从残差流里读出,这一写一读就构成一条 edge。

一个常被引用的旗舰案例是 IOI(Indirect Object Identification)circuit(见 IOI Circuit):给模型 “When John and Mary went to the store, John gave a drink to ___“,它要补出 “Mary”。研究者在 GPT-2 small 里逐一定位出一条由约二十多个 head 组成、分工明确的电路——有的 head 负责识别重复出现的名字(John),有的负责「抑制」这个重复名字,最终让模型输出没重复的那个名字(Mary)。这是早期「能把一个完整行为拆到 head 级别」的代表性工作。

为什么重要(动机)

Circuit analysis 是 mechanistic interpretability 的核心范式之一,它回答的问题比「模型知道什么」更进一步:模型是怎么算出来的

  • 从「黑箱输入输出」到「机制」:知道模型会做 IOI 任务只是行为观察;找出哪些 head、按什么顺序、传什么信息,才是机制层面的理解。这种理解能预测模型在 OOD 输入上会怎么 break,而纯行为观察做不到。
  • 它是后续方法的组织单位:很多 interpretability 方法(activation patchingcausal mediationACDC)本质上都是「发现 / 验证 circuit」的工具。理解 circuit 这个概念,才能理解这些方法在找什么。
  • 它让「理解」可累积:如果同一种 circuit 能在不同模型里反复出现(见下文 universality),那 interpretability 就不只是逐个模型的逆向工程,而可能积累出一套跨模型通用的「机制词表」。

关键细节

1. Attention 的 QK / OV 分工(已知,来自电路视角的标准分解)

理解 attention head 在 circuit 里干什么,关键是把它拆成两条独立的回路:

  • QK circuit(query-key)决定「看哪」:query 和 key 的交互算出 attention pattern,即「当前位置该把注意力放到哪些 token 上」。它只管路由,不管搬运什么内容。
  • OV circuit(output-value)决定「搬什么」:一旦确定看某个位置,OV 回路决定从那个位置的 residual stream 里读出什么信息、写成什么形式放回当前位置。

这个分解之所以重要:它让我们能分别问「这个 head 为什么关注那个 token」和「它关注之后传递了什么」。Induction head 就是经典例子——QK 负责找到「上一次出现当前 token 的位置的下一个 token」,OV 负责把那个 token 复制过来,二者配合实现 in-context 的模式补全。

2. Universality 与 motifs(部分已知、部分推测/争议)

Universality hypothesis:不同模型(不同规模、不同随机种子、甚至不同架构)在学习相似任务时,会反复长出结构相似的 circuit——这些复现的结构称为 motif。Induction head 是目前证据最强的 motif,在大量模型中都能找到。但要注意:

  • 已知:某些低级 motif(如 induction head、previous-token head)跨模型复现性较强。
  • 争议 / 未定:universality 是否在更复杂、更高层的 circuit 上成立,仍是开放问题。很多复杂 circuit 目前只在单个小模型(如 GPT-2 small)里被完整刻画过,是否真在大模型里以同样形式存在,证据不足。不要把「在 GPT-2 small 里发现」当成「普遍成立」。

3. 「找电路」≠「电路是忠实的」(重要区分)

发现一个看起来合理的子图,和证明这个子图真的是模型计算该行为的机制,是两件事。常见陷阱:

  • 相关 ≠ 因果:某个 head 在任务上很活跃,不代表它因果上必要。必须用 activation patching / causal mediation 做干预——切断或替换它,看行为是否真的改变。
  • Faithfulness 才是验收标准:一个 circuit 的好坏取决于它在多大程度上复现了完整模型在该任务上的行为(faithfulness)。如果只保留电路里的组件就能恢复大部分原始性能、且去掉它们行为就崩,才算有说服力。
  • 自动化的代价ACDC 等方法试图自动搜出 circuit,省去手工 patching 的劳动,但自动方法对阈值、metric 的选择很敏感,搜出的图仍需独立验证忠实性。

常见误解:circuit 不是模型里「物理上存在的模块」——模型并没有被显式划分成电路,circuit 是研究者事后强加的、用于解释的抽象。同一行为可能有多种近似等价的电路描述,电路的边界也依赖于你选的粒度和验收标准。

与其他概念的关系

  • Induction head 是最简单、研究得最透的 circuit/motif,是理解 QK-OV 分工的入门案例;circuit 是它的上位概念。
  • IOI Circuit 是「手工逆向出一个完整行为电路」的旗舰论文,本笔记的主例。
  • Activation patchingcausal mediation定位与验证 circuit 的核心因果工具——没有干预就只有相关性。
  • ACDC 把 circuit discovery 自动化,是「找电路」的方法论代表。
  • Faithfulness 是判断一个 circuit 是否成立的验收准则,与「找到一个看似合理的子图」严格区分。
  • circuit 的节点可以是 feature;当节点从「head/神经元」细化到「feature」时,circuit analysis 与 superposition / SAE 路线交汇,朝更细粒度的 feature-level circuit 发展。