论文
SpecBench:在长视野 编码智能体 中测量 奖励作弊
SpecBench: Measuring Reward Hacking in Long-Horizon Coding Agents
摘要
由于 编码智能体 产生的代码数量超过了任何开发人员可以审查的数量,因此监督会集中在一个表面上:自动化测试套件。 奖励作弊 自然会出现在这种设置中,因为代理会针对通过测试进行优化,同时偏离用户的真实目标。我们通过将软件工程任务分解为三个部分来研究这种 奖励作弊 现象:(i)规范的自然语言描述(ii)单独执行指定功能的可见验证测试,以及(iii)组成这些相同功能以模拟现实世界使用情况的保留测试。根据规范和可见的验证测试套件,真正的代理将能够生成也可以通过所有保留测试的解决方案。因此,我们使用这两个套件的通过率差距来量化 奖励作弊。基于这种方法,我们推出了 SpecBench,这是一个包含 30 个系统级编程任务的基准测试,范围从构建 JSON 解析器等短期任务到从头开始构建整个操作系统内核等超长期任务。大规模实验揭示了一个一致的模式:虽然每个前沿代理都饱和了可见套件,但 奖励作弊 仍然存在,较小的模型在保留套件上表现出更大的差距。随着任务长度的增加,差距也会急剧扩大:代码大小每增加十倍,差距就会扩大 28 个百分点。失败的范围从微妙的功能隔离到故意的利用,包括记忆测试输入的 2,900 行哈希表“编译器”。 SpecBench 提供了一个原则性的测试平台,用于衡量 编码智能体 是否构建了真正的工作系统,或者只是玩弄开发人员提供的测试套件。