论文

语义冲突的机械视角:使用激活补丁来理解 LLM 行为

A Mechanistic Lens on Semantic Conflicts: Using Activation Patching to Understand LLM Behavior

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

摘要

大语言模型 (LLM) 越来越多地用于处理可执行代码和不可执行语义提示(例如注释或标识符)的软件工程任务。当语义提示表明程序行为与代码本身不同时,这两个来源可能会发生冲突。目前尚不清楚此类语义冲突如何影响 LLM 行为以及哪个源主导其输出。我们提出了语义冲突下 LLM 行为的第一个受控机制研究。为此,我们构建了 45 个 Python 片段三元组,通过改变语义线索或实现来隔离冲突,同时保持标记对齐对以进行因果干预。我们使用行为性能测量和残差流激活修补来评估两个任务(输出预测和单元测试生成)上的四个开放权重 LLM,以识别导致对齐和冲突输入之间行为差异的词元层状态。我们的结果表明,语义冲突显着降低了这两项任务中基于执行的正确性,并且所有测试的 LLM 经常遵循误导性的语义提示。残余流激活修补揭示了最终输出预测的一致模式:更改的提示/代码区域和一小组中间标记在输出读数附近聚合之前携带大部分可恢复的因果信号。对于单元测试生成,此模式超出了提示范围,表明在生成预期值之前可以在生成的站点恢复与冲突相关的信息。总的来说,我们的研究结果表明,语义冲突会影响程序理解和下游任务,相关信息集中在少数因果活跃的残余流状态中,并展示了一个用于机械分析 LLM 如何在受控语义变化下集成代码相关信息的框架。