132 个真实任务,AI 编程最高分 45.5%

举报
努力的阿飞 发表于 2026/10/30 11:12:33 2026/10/30
【摘要】 Cognition 10 月 27 日把 FrontierCode 升到 2.0。第一名 Claude Opus 5.5,45.5%;第二名 GPT-6 Astra,42.8%;Grok 4.7 从上一版的 47.6% 掉到 28.6%。二十多个模型,没有一个过 50%。1.1 版问的是「这段代码过不过测试」,2.0 版问的是「维护者会不会真的合你这个 PR」。问法一换,分数就下来了。132...

Cognition 10 月 27 日把 FrontierCode 升到 2.0。第一名 Claude Opus 5.5,45.5%;第二名 GPT-6 Astra,42.8%;Grok 4.7 从上一版的 47.6% 掉到 28.6%。二十多个模型,没有一个过 50%。

1.1 版问的是「这段代码过不过测试」,2.0 版问的是「维护者会不会真的合你这个 PR」。问法一换,分数就下来了。

132 个任务,全部取自真实开源仓库。二十多位维护者,每人花四十多个小时,拿自己仓库里真踩过的坑出题。评分是加权制:功能对不对,题面没写清的地方补得对不对,改动范围是不是这块地。任何一条 blocking 项不过,直接零分,不给部分分。

一个 PR 修对三处、漏一处,在测试那套体系里叫通过,在这个榜里叫零。

掉得最狠的一类,叫「没做全」

Cognition 列了 2.0 相对 1.1 的改动:任务覆盖的仓库多了 55%,blocking 判据多了 43%,参考解改的文件多 67%、行数多 89%。「做得全不全」这类判据数量差不多翻了三倍,现在是最常挂的一项。

把一个问题在一处修好,和把这个问题的每一处都修好,是两种活。模型擅长前一种:看见报错,改那行,跑通,交差。人做同一件事,会顺手把几个同类调用点一起翻一遍。

开发者贴出来的翻车现场也集中在这:为了消一个编译错误,把被别处调用的公共方法直接删了;需求没读明白,按自己理解的版本硬写一版,跑得通,对不上。

这两类错在测试里都是绿的。测试没覆盖那个调用点,也没有一条测试在验「需求理解对不对」。

Java 的活,天生落在好几个文件里

一个「加个导出」,要动 controller、service、mapper,加表或者加字段,给前端一份接口定义,权限挂上去,导出字段范围还得跟产品确认。

模型的默认打法是顺着一个入口往下写,写到能跑。没写的那部分:表结构变更脚本、接口定义、老接口的兼容、单元测试。这些都不会让编译失败,只会让 PR 在 review 那一步被打回来,正好是 2.0 在称的那杆秤。

榜单里还有个反向细节:2.0 把「改动范围」这条判据放宽了,平均失手率从 9.0% 降到 3.8%。改多了不是主要问题,没做全才是。

把「做全」变成流程里的固定动作

飞算 JavaAI 是给 Java 研发用的工程化智能体,以插件形式装在 IDEA 里。它不改变你怎么用编辑器,改变的是需求的走法:进门先做分析,再谈设计,最后才写。

智能会话给出几个固定入口。/需求分析 先把模糊的地方问明白,产出直接进项目的 docs/;/前后端设计 在这份东西上定库表和接口,页面按接口排;/后端开发 收尾,代码照着已经定下的规范生成。榜上那句「题面没写清的地方补得对不对」,放到这里就是需求不清先发问,不先动手。

「做全」靠两样东西兜住。一样是链上的四份产物,需求、库表、接口、代码互相咬得住,缺一份下游就出不来;另一样是单元测试生成器,先摸一遍本地环境,JDK 是哪个版本、构建靠 Maven 还是靠 Gradle,摸清了再落用例,编译、运行、按报错改,全绿了才合进工程。生成的东西摆在眼前,看过再点头,不满意就退回去。

模型走两条路。自有那几档是在开源底座上按 Java 场景调出来的,管的是工程结构、框架约定这类判断;第三方直连通的是 DeepSeek-V4 和智谱 GLM 的 5.2、5.3 两版,榜单里开源权重排第一的 V4.1 Flash 就在可选范围。走哪条,落盘的产物都是同一套格式。

这个 45.5% 该怎么读

榜是 Cognition 的私有题集,它自己卖 Devin,方向对它有利。2.0 和 1.1 的分数官方说了不可比,题目和评分都换了。同一个模型换一套 harness,分数还会动:Artificial Analysis 拿同一批任务自己跑了一遍,Opus 5.5 是 46.4%,GPT-6.1 Terra 42.3%,差得不算多,但确实不同。

所以 45.5% 不是某个模型的绝对能力值,是「这批任务、这套评分、这个跑法」下的结果。能读出来的只有一件事:真实工程里,写对和写完之间还有一段路,模型自己走不完。

那段路上放的是需求、接口、表结构、测试,都是有人名、有版本、能翻出来的东西。飞算 JavaAI 把这些当成链路里的必产物,不是交差之后再补的文档。谁先把它们定下来,模型的表现就好一截;谁不定,就靠自己 review 兜底。

你上次让 AI 改的那个功能,是改了一处,还是改全了?

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。