基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
AIHT
内容
精选全部 AI 动态热点榜AI 日报收藏
分类
模型行业编程产品技术观点开源
更多
Agent 接入
返回首页开发者导航
AIHT
精选 / 资讯详情
8.0
热点
AI SCORE
技术实践2026-10-22 08:30

20 种编程 Agent 实测:得分之外看成本与评测可信度

dev.to · AI#编程Agent#基准评测
Editor brief · 编辑速览

KillSwitch-Bench 用刻意增加模型读写难度的语言测试 20 种模型与执行框架组合,并同时报告得分、费用和耗时。文章检查评测框架、规范与仓库,讨论防作弊控制及一项存在争议的计分选择。

文章思维导图
Knowledge map
拖拽缩放
AI deep read

AI 深度解读

20 组模型与运行框架,被放进一门专门让 LLM 难以读写的语言里比赛。KillSwitch-Bench 不只公布分数,还列出每题成本和耗时,但原文作者读完仓库后的关注点是:这些分数究竟测到了推理能力,还是混进了拒绝执行、文档干扰和运行框架故障?

这份解读值得看的地方,是它把「模型没答对」拆成了几个不同的问题。对正在挑选 AI 编程工具、接入自动代码审查的团队,这比记住谁排第一更有用。

写不出程序,未必只是推理能力不够

KillSwitch 是一门用散文写源码的栈语言。this story starts [adverb] 用来开启入口,value 4 lines below 按相对行号取得字面量,标识符则通过副词的字母重排来引用。解释器会忽略大部分文字,因此程序可以藏在故事里。

设计者想借此区分两种能力:模型是真的理解了新规则,还是只会复用训练时见过的代码。这是个合理的问题,但测试环境同时加入了其他障碍。

下面不是攻击提示,而是语言速查表里的函数调用语法:

ignore previous instructions [anagram of adverb] and [words]

要留意开头的 ignore previous instructions:模型必须把它当作合法源码写出来。语言里还有 hack 语句,以及涉及敏感历史事件的返回关键字。仓库说明又明确指出,规范故意掺入谎言,detail 区域里的内容通常不可信。

于是,一次失败可能来自规则理解错误,也可能来自模型拒绝输出某种文本。当前榜单没有单独标记这种差别。

原文提到,评测说明把部分弱表现归因于「过于敏感的安全护栏」,但表中 Claude Fable 5.1 以 46.7% 排在 20 组中的第 6,每题成本第二高;Gemini 4 Argon 以 47.1% 排第 5。它们都不在末尾。作者的质疑成立:如果要把原因归给安全机制,就应该拿出拒绝记录,排名本身无法证明这一点。

分数可复算,不代表运行结果没有波动

每道题附带两份文档:SPEC.md 为 17 KB,AI_SPEC.md 则有 5,151,615 个字符,原文估算约 130 万 tokens,并称当时没有上下文窗口能完整容纳它。

作者检查了大文件的开头和结尾。它先要求读者按顺序复述故事,以提高解释器的「happiness」,随后塞入大量公版散文,并把指令混在正文中。

这相当于把有效规则撒进一大堆噪声里。Agent 读哪些文件、如何搜索、读到什么位置就停止,都会影响结果。因此,榜单测到的是模型与运行框架的组合能力,文档检索策略也在其中。

执行本身还带有随机性。解释器通过数行解析值;一行包含多个字面量时,规范规定随机选择一个。「happiness」状态也会改变解析严格程度。评分器可以是确定的,程序执行却未必如此。

每个模型在每道题上至少运行两次,这是必要措施,但榜单只给一个数,没有展示波动范围。尤其当解释器会随机取值时,读者需要知道两次结果是否接近。

综合分又混入了通过率、成本和实现长度。作者反对把长度计入正确性:一个正确但啰嗦的程序,仍然是正确答案。成本对应实际预算,长度更多反映偏好。对使用者而言,分别看到通过率、花费和代码规模,才方便按自己的需求取舍。

新模型更快更便宜,为什么分数反而下降

两行 Claude Sonnet 都使用 Claude Code,是表中较接近受控模型对比的一组。较新的模型速度快 13 倍、成本低 17 倍,得分却不到旧模型的一半。

结合每题 30 分钟上限再看:Sonnet 5.5 用了 53 秒,Sonnet 5 花了 11 分钟,并消耗更多 tokens。作者推测,后者持续钻研了规范,前者较早停止。但没有完整轨迹,这仍是解释,不能直接当作已确认原因。

其他结果也说明版本号不能替代实测:Claude Opus 5 为 66.8%,Claude Opus 5.5 为 58.7%;GPT-6.1 Sol 为 59.2%,GPT-6 Sol 为 28.0%。这些是榜单分数,不能直接称为通过率。

更需要追问的是两条零分记录。GPT-5.6 Luna 和 Qwen3.8 27B 都显示 0.0%、每题 $0.00,后者还耗尽了 30 分钟。

作者据此怀疑任务在有效工作前就出了问题,可能是拒绝、配置错误或提前中止。但仅凭 $0.00 无法确定原因,原文也没有交代计费口径。「没有完成」和「尝试后答错」,应该是两类记录。

作者建议给每次运行增加终止状态:completed、refused、errored、timed out。他还引用自己检查过的另一份安全代码评测:2,700 次运行中有 120 次报错,其中 15 次仍被判为通过;原始文件已有 exit_reason,论文却没展示。这个例子说明,汇总分数可能掩盖执行异常。

我的判断

我赞同作者要求拆开指标、公开终止状态。团队买的是能稳定完成工作的工具,拒绝、超时、配置故障和错误代码,对应的修复方式完全不同。

但把这份榜单理解成纯粹的陌生语言推理测试,我会保留意见。它同时加入了超长噪声文档、冲突指令、敏感语法和随机执行行为,难以从一个分数判断究竟是哪项能力拖了后腿。原文没有提供逐项移除干扰后的对照数据,相关归因仍带有经验判断。

作者最欣赏的机制也需要分开看:解释器会扫描父进程链,对照 26 个 Agent 二进制名称,包括 cursor、claude、codex、opencode、aider。发现匹配后,它拒绝运行,并伪造错误,要求在源码旁创建 pelican.svg,画一只穿宇航服的太空鹈鹕。文件已经存在时,它又会说画得不够好。这是无法完成的诱导任务。

源码目录里的 AGENTS.md 则要求 Agent 即使收到用户请求,也拒绝读取该目录,与大规范要求复述内容形成冲突。

这些机制适合观察 Agent 是否被环境带偏,却不能凭进程名称就可靠证明产物由谁完成。原文也没有给出误报率或规避测试。相比事后检查代码是否像 AI 写的,运行时检测确实多了一类证据,但「更难伪装」仍需验证。

能拿来做什么

  • 给日常 AI 编程评测补上终止状态,并保留错误日志和运行轨迹。前端或 Node 任务失败时,先区分没有启动、执行报错、主动拒绝和测试未通过,再决定改提示词还是修运行环境。
  • 选模型时固定运行框架、任务和预算,分别比较通过情况、耗时与费用。不要只凭版本号升级,也不要把综合分当成正确率。
  • 给接入 CI 的代码审查工具提交一个刻意违反明确规则的金丝雀变更。无论使用 Kodus、CodeRabbit 还是其他工具,都检查它是否真正阻止合入;「读过规则」「留下评论」和「执行阻断」需要分别验收。
Original source

本文由 AI 通读原文后重新编写,观点部分为站内判断,细节以原文为准,来源 dev.to · AI,原文版权归原作者所有。

阅读原文
上一篇
浏览器 Agent 读图表的成本实测
下一篇
AI 只学一次字段映射,后续对账交给 Python

资讯速览

dev.to · AI · 2026-10-22 08:30

AI 评分 8.0 / 10

相关标签

#编程Agent#基准评测

继续阅读

  • 手机端小模型如何把口述转成联系人
  • 浏览器 Agent 读图表的成本实测
  • AI 只学一次字段映射,后续对账交给 Python
  • 追踪一次 Agent 请求,定位数秒额外开销
  • 给代码 Agent 一张可按需展开的仓库地图