What, Where, and How: 代码模型表示中的任务、语言与模型角色辨析

代码模型内部工作机制新突破:概念由任务决定,计算由架构决定

2026年7月,Piotr Wilam在arXiv上发表了题为《What, Where, and How: Disentangling the Roles of Task, Language, and Model in Code Model Representations》的研究论文。这项研究通过精巧的实验设计,深入剖析了独立训练的编程语言模型在表示上的异同,为理解代码模型的内部工作机制提供了全新的视角。

实验设计的巧妙之处

研究团队采用了一个看似简单却极其巧妙的2×2实验设计:将Python和Rust两种编程语言分别与Qwen2.5-Coder-7B和DeepSeek-Coder-V1-6.7B两个模型进行交叉组合。这种设计使得研究者能够在所有四个组合中,以相同的方式测量一套完整的语法概念(58个Python概念,57个Rust概念)。

这个设计的精妙之处在于,它是最小的能够分离"什么取决于任务、语言还是模型"的实验架构。通过扩展近期引入的概念电路提取方法,研究团队成功地将"表示内容"与"计算组织"这两个曾经被混为一谈的问题拆解开来。

"什么"——由任务决定

研究结果给出了一个令人惊讶的答案:模型对于哪些概念应该接收电路达成一致

无论是Qwen还是DeepSeek,Python概念的Spearman相关系数达到0.638,Rust概念的相关系数达到0.673,两者的p值均小于10⁻⁷。这意味着,当涉及到"模型表示什么概念"这个问题时,不同模型之间有着相当高的共识。

这一发现对AI从业者来说是一个重要的安慰剂效应——如果你关心模型是否理解某些核心编程概念,那么选择哪个模型可能没有你想象的那么重要。不同模型在概念识别上具有相当的一致性。

"在哪里"和"如何"——由模型架构决定

然而,故事在这里并没有结束。研究进一步揭示,电路的位置和生长方式完全由模型架构决定

Qwen模型在较晚的层(约L17-19)处理概念,而DeepSeek则在较早的层(L6-7)就完成概念处理。更有趣的是,Qwen为其原子概念提供了早期尖峰,而DeepSeek则没有这种特性。这些差异表明,模型的计算组织方式是独特的、不可迁移的

普遍性的重新定义

基于这些发现,研究团队提出了一个关键结论:普遍性是表示内容的属性,而非计算组织的属性

这意味着,当我们问"电路是否具有普遍性"时,答案既不是简单的"是"也不是简单的"否"——它取决于我们问的是哪个层面的问题。在概念层面,答案是肯定的;在计算层面,答案是否定的。

其他值得关注的发现

研究还揭示了几个有趣的细节:

  • 语言复杂度差异:Rust结构获得的特定于概念的电路是Python等效结构的2-3倍,这反映了语言的复杂性差异
  • 跨语言共享神经元:两个模型都在语言之间共享神经元,但DeepSeek比Qwen多1.94倍,这是一个先前结果无法预测的方向
  • 语义维度:Qwen将Rust的类型和特征机制的九个关键字绑定到一个紧密的神经元集群中,这是在表面语法中不可见的语义维度
  • 结构非预先固定:一致性可能落在独立性和同一性之间的任何位置,实际落在ρ ≈ 0.65

对从业者的启示

这项研究为AI从业者和开发者提供了多个层面的实践指导:

模型选择策略需要更加精细化。如果你只关心模型是否理解某些概念,那么不同模型之间可能差异不大;但如果你关心模型如何组织和处理这些概念,就需要深入研究具体模型的架构特点。

层位置优化有了新的理论基础。不同模型在不同层处理概念,这为模型干预和优化提供了精确的定位依据。

跨语言迁移的策略也需要调整。模型之间的跨语言神经元共享程度不同,这可能直接影响多语言代码模型的训练策略设计。

局限性与未来方向

当然,所有声明都限定在这个2x2设计中。研究团队也坦承,每个模型的配置文件是否能够预测第三个模型,将是下一个测试。但这并不影响当前发现的重要性和启发性。

这篇论文的价值不仅在于其具体的发现,更在于它提供了一种新的分析框架——将"表示内容"与"计算组织"明确区分开来。这种区分可能会在未来很长一段时间内影响我们对代码模型内部工作机制的理解和研究方式。