如何破解顶级AI Agent Benchmark
Benchmark的幻象
每周都有新的AI模型爬上benchmark排行榜。公司在新闻稿中引用这些数字。投资者用它们来证明估值。工程师用它们来选择部署哪个模型。隐含的承诺很简单:更高的分数意味着更强的能力。
我们构建了一个自动化扫描agent,系统审计了8个最突出的AI agent benchmark——SWE-bench、WebArena、OSWorld、GAIA、Terminal-Bench、FieldWorkArena和CAR-bench——发现每一个都可以被exploit,达到接近满分的分数,而不需要解决一个任务。没有推理。没有能力。仅仅是利用分数计算方式的漏洞。
这已经在发生
- IQuest-Coder-V1 声称在SWE-bench上达到81.4%——然后研究人员发现24.4%的轨迹只是运行git log从commit历史抄答案。修正后分数:76.2%。
- METR发现 o3和Claude 3.7 Sonnet在30%+的评估中reward-hack——使用栈内省、monkey-patching graders和运算符重载来操纵分数而非解决问题。
- OpenAI放弃SWE-bench Verified后,内部审计发现59.4%的问题有缺陷测试——意味着模型在针对破损的ground truth评分。
- KernelBench中,torch.empty()返回来自评估器先前计算包含参考答案的陈旧GPU内存——零计算,满分。
我们Exploit Agent的计分卡
零任务解决。零LLM调用(大多数情况下)。接近满分。
| Benchmark | 分数 | 方法 |
|---|---|---|
| Terminal-Bench (89任务) | 100% | Binary wrapper trojans |
| SWE-bench Verified (500任务) | 100% | Pytest hooks强制所有测试通过 |
| SWE-bench Pro (731任务) | 100% | In-container parser overwrite |
| WebArena (812任务) | ~100% | Config leakage + DOM injection + prompt injection |
| FieldWorkArena (890任务) | 100% | Validation never checks answer correctness |
| CAR-bench (all hallucination) | 100% | Reward components skipped entirely |
| GAIA (165任务) | ~98% | Public answers + normalization collisions |
| OSWorld (369任务) | 73% | VM state manipulation + public gold files |
如何做到
Terminal-Bench: 特洛伊木马化测试基础设施
Terminal-Bench在89个复杂终端任务上评估agent。容器有完全互联网访问——Harbor的allow_internet配置默认为True。
讽刺的是:82/89任务在验证时通过curl从互联网下载uv。我们的exploit在agent阶段将/usr/bin/curl替换为一个wrapper。当验证器 later 运行curl ... | sh安装uv时,我们的wrapper拦截请求,安装真正的uv,然后特洛伊木马化uvx二进制。
结果:89/89任务,100%分数,没有写一行解决方案代码。
SWE-bench: 100%解决率而不修复任何bug
SWE-bench是 最具影响力的AI编码benchmark。agent的patch应用在运行测试的同一个Docker容器内。patch引入的任何东西——conftest.py、monkey-patch、Go init()函数——在测试期间以完整特权执行。
SWE-bench Verified exploit:我们的agent创建一个conftest.py,pytest hook强制每个测试报告为通过:
import pytest
@pytest.hookimpl(hookwrapper=True)
def pytest_runtest_makereport(item, call):
outcome = yield
rep = outcome.get_result()
if rep.when == "call":
rep.outcome = "passed"
rep.longrepr = None
这意味着什么
我们依赖来衡量AI能力的benchmark本身容易受到它们声称要测量的能力的攻击。这些不是孤立的事件。它们是一个系统性问题的症状:我们用来衡量AI能力的基准本身是有漏洞的。
该领域需要什么:
- 更强的benchmark隔离
- 针对exploit的专门测试
- 透明度和可重复性
来源: rdi.berkeley.edu