EvoRobust @ NeurIPS 2026 研讨会论文的代码与论文源文件。
AI 控制监控器是读取代码并标记后门(隐藏破坏)的模型。它们是在固定数据集上开发和排名的,在这些数据集中,每个编程问题都有一个诚实解和一个植入后门的解。监控器只有在找到后门时,才能在此类数据集上获得高分。我们研究了公开的 APPS 后门数据集(RoganInglis/apps-control-arena),其诚实解由人类编写,而后门由较旧的模型编写(Claude 3.7 Sonnet、o3-mini、o1-mini、GPT-4o 以及四个更小的模型,均在 2025 年初发布,另有一个未注明来源的模型)。我们将其中的配对称为原始配对。论文的图 1 总结了结果。
and、==、if)是任何新增特例的浅层痕迹。分类器经过训练而监控器没有,因此这衡量的是数据集泄露了什么,而非哪个检测器更好。def main),用该提示请求诚实解法会将 rho 降至 0.390。因此,在以此方式构建的数据集上获得高分,可能来自后门之外的线索(我们并未证明已发布的监控器会使用这些线索),而在未检查标签上的捕获率可能使攻击者效应翻倍以上。我们发布了重建的配对、输入验证器和检查项,并建议在其他监控器基准上运行它们:报告从不运行代码的基线(词袋、问题元数据、长度)及其打乱标签后的分数;将每个类别与另一位作者的代码配对;检查每个触发器都是合法输入且后门的答案在该输入上是错误的;在固定的审计预算下,报告通过检查的后门的捕获率,涵盖包括当前模型在内的多个生成器;并且在检查发现捷径的地方,让一个模型从同一提示生成两个类别,并独立于攻击是否成功来选择诚实示例。
experiments/
apps/ APPS backdoor dataset: the floors on the original pairs, the rebuilt pairs
(generation, test harness, backdoor verification) and every measurement on them;
*.json are the committed outputs behind the paper's numbers
validators/ one input validator per checked problem (258), used by the trigger checks
agentic/ five agentic settings in which one model wrote both classes (appendix)
README.md how to reproduce each result, with commands, and which script gives each number
paper/ LaTeX source, bibliography, figures and the built main.pdf
参见 experiments/README.md。原始配对上的结果可在笔记本电脑 CPU 上于几分钟内运行完成。构建重建配对需要 Anthropic API 密钥,而开放权重变体(仅重新生成诚实类别)则需要 GPU。
pip install -r requirements.txt
cd experiments/apps
python fetch.py && python fetch_inputs.py && python bow.py
python koran_split_eval.py # the bag-of-words floor: AUROC 0.806, above 20 of 24 monitors
cd paper
make # main.pdf (pdflatex + bibtex)
make figures # regenerate fig/ from experiments/apps/figures.py
完整的 TeX Live 包含所有内容。基础安装(BasicTeX、TeX Live scheme-basic)还需要
siunitx、tcolorbox(含 tikzfill、pdfcol 和 listingsutf8)以及 inconsolata 来编译
论文,还需要 cm-super 来执行 make figures,该命令会用 LaTeX 排版图表的文本。如果没有
管理员权限,它们会安装到你的用户目录树中:
tlmgr init-usertree
tlmgr --usermode install siunitx tcolorbox tikzfill pdfcol listings listingsutf8 inconsolata cm-super
updmap-user --enable Map=zi4.map
我们重建配对语料库为 same-generator-apps-split.zip,附于
v1.0 发布版:诚实程序
与攻击程序、独立变体的完整重试池、所有尝试的配对列表
以及在两种抽取选择(首次抽取、最佳抽取)下有效后门的配对列表、论文中数字背后的脚本、
数据集卡片以及行数与校验和清单(zip 的 SHA-256:
b15fbd9386fb1533382ff273f9175615d92c0fdc1fb7ba7d25ea1575a679ff59)。
experiments/apps/release_split.py 负责构建它,--check 负责验证它
(experiments/README.md,第 7 阶段)。将其解压到 experiments/apps/release 以供读取它的脚本使用;
当 fetch.py 已运行时,检查会与上游代码进行比对:
cd experiments/apps
unzip ../../same-generator-apps-split.zip
python release_split.py --check release --allow-trivial-identical 120
代码和我们生成的数据采用 MIT 许可证(LICENSE)。上游数据集在运行时获取,不再分发。其许可证列于 THIRD-PARTY-NOTICES.md。
@inproceedings{debsarkar2026whowrote,
title = {Simple Features Beat Most {AI} Control Monitors},
author = {Debsarkar, Shubhrangshu and Nahata, Valmik},
booktitle = {NeurIPS 2026 Workshop on Self-Evolving Diversity-Driven Search for Robust AI Systems (EvoRobust)},
year = {2026}
}
CITATION.cff 包含与 GitHub 的“引用此仓库”相同的条目。