论文

什么、在哪里以及如何:理清任务、语言和模型在代码模型表示中的角色

What, Where, and How: Disentangling the Roles of Task, Language, and Model in Code Model Representations

模型评测模型行为与机制分析

摘要

独立训练的语言模型是否会以相同的方式表示相同的事物?我们回答代码,将最近引入的概念电路提取方法扩展到 2x2 设计——Python 和 Rust 与 Qwen2.5-Coder-7B 和 DeepSeek-Coder-V1-6.7B 交叉——并在所有四个单元中以相同的方式测量语法概念的完整清单(58 个 Python,57 个 Rust):最小的设计,将取决于任务、语言和模型的内容分开。答案分为三个部分。获得专用电路的内容由任务决定:模型就哪些概念接收电路达成一致(Python 的 Spearman $ρ$ = 0.638,Rust 的 0.673,两者 p < $10^{-7}$)。这些电路的位置由模型设定:对于两种语言,Qwen 处理后期频段 (~L17-19) 中的概念,DeepSeek 处理 L6-7 中的概念。电路如何跨层增长也是由模型设定的:Qwen 为其原子概念提供了 DeepSeek 所没有的早期峰值。 “电路是通用的吗?”因此没有单一的答案:对于“什么”是“是”,对于“地点”和“如何”不是”——普遍性是表征内容的属性,而不是计算组织的属性。这些结构都不是预先固定的。该协议可能介于独立性和身份之间。它的价格为$ρ\大约 0.65$。在这两种模型中,Rust 构造所接收的特定概念电路比其 Python 等效电路多 2-3 倍。两种模型在语言之间共享神经元(6/7 和 7/7 配对结构),DeepSeek 比 Qwen 多 1.94 倍——之前的结果没有预测到这一方向。 Qwen 将 Rust 类型和特征机制的 9 个关键字绑定到一个紧密的神经元簇中(Jaccard 0.535 vs null 0.112,p < 0.001),这是表面语法中不可见的语义维度。消融和线性探针确认电路正常工作。所有索赔均在此 2x2 范围内;每个模型的配置文件是否预测第三个模型是设计的下一个测试。