网易首页 > 网易号 > 正文 申请入驻

AI写代码,连人类“屎山”都打不过?

0
分享至

来源:市场资讯

(来源:钛媒体AGI)


▎别再卷单次任务的通过率了,是时候想想怎么让AI学会「为未来写代码」。

作者|硅谷Tech news

编辑|焦燕

本文首发于钛媒体APP

凌晨两点的工位,程序员小李盯着屏幕上Claude刚写的第三版代码欲哭无泪:

最开始他的需求很简单:写个用户登录接口,AI十分钟就交了活,跑起来全对。后来要加验证码、要做三方登录、要接权限系统、要适配多租户......改到第五轮的时候,AI写的代码已经乱成了意大利面,一个函数塞了五百行,重复逻辑抄了八遍,加个新功能要改三个地方,改完又崩两个旧功能。

小李忍无可忍重写了整个模块,边敲边骂:什么AI编程替代程序员,写出来的代码越迭代越烂,最后擦屁股的还不是我?

如果你也有过这种经历,恭喜——最近来自威斯康星麦迪逊大学、MIT的研究团队直接把这个痛点做成了行业基准,实锤了当前所有AI编程Agent的致命缺陷:单次写代码个个都是神,长期迭代改需求,全是越写越烂的废料生成器。

论文指路:

https://arxiv.org/abs/2603.24755

他们甚至专门做了个叫「SlopCodeBench」的评测基准,名字直白到扎心:专门测AI写的「垃圾代码(Slop)」到底有多退化。

我们被AI编程评测骗了这么久?

先问大家一个问题:你平时看到的AI编程能力测评,是不是都是这个画风:

《GPT-5正确率秒杀SWE-Bench!》

《Claude Opus写代码通过率超90%!》

《新模型击败80%程序员!》

这些测试有一个算一个,全是「一锤子买卖」:给你一个完整的、不会变的需求,看AI能不能一次性写出能跑通所有测试用例的代码。

但现实中写代码是这样的吗?哪个产品经理会第一天就把需求给你写全?哪个项目不会中途加功能改逻辑?哪个系统不是从一个简单的Demo,一步步堆成十万行百万行的庞然大物?

说白了,现在的AI编程评测,考的全是「开卷期末考试一次性考满分」,但真实开发是「每天加一门新课,课本还天天改,你得在旧笔记上不停补内容,最后整个笔记还得逻辑通顺能当教材」。

这种评测和真实场景的脱节,直接造出了「AI写代码比人强」的虚假繁荣——真放到需要迭代几个月、改几十版需求的项目里,AI写出来的代码,烂得比维护了十年的屎山还吓人。

SlopCodeBench:专门戳破AI泡沫的「魔鬼测试」

这次研究者搞出来的SlopCodeBench,就是完全照着真实开发的「痛苦模式」设计的,堪称AI编程Agent的「高考地狱模式」:

测试规则完全复刻真实开发

整个基准包含20个常见开发场景(比如写个表达式解析器、做个代码搜索工具),每个场景拆成93个逐步变复杂的检查点——就像产品经理每周给你提的新需求:

  • 第一个检查点:做个能加减乘除的计算器

  • 第二个:加括号运算优先级

  • 第三个:支持自定义函数

  • 第四个:加错误日志功能

一直到第八个需求堆上去......

最狠的是这三条规则,完全不给AI开外挂:

1. 不预设任何内部接口:只告诉你外部要做成啥样,代码架构怎么设计、函数怎么拆,全靠AI自己定,相当于产品只说「我要个能聊天的APP」,技术方案全靠你想。

2. 不暴露测试用例:AI只能像人类开发者一样,对着需求文档自己想边界情况,写完了才知道哪里错了,不会给你把所有测试用例列出来让你对着改。

3. 必须在上一轮的代码基础上改:不能每次都重写,就像你接了前任的烂摊子也得接着维护,不能上来就说我要重构。

两个指标直击「烂代码」本质

这次研究者没搞虚的「通过率」,而是直接抓了两个所有程序员都深恶痛绝的烂代码特征:

1. 结构侵蚀(Structural Erosion)

说白了就是代码逻辑全堆在少数几个「超级函数」里。比如你最开始写登录逻辑是个20行的小函数,后来加了七八个需求,AI懒得拆新函数,直接往里面堆代码,最后一个函数塞了上千行,圈复杂度(简单理解就是逻辑分支的数量,越高越难改)飙到几百,改一行崩十行。

研究者的计算方式也很直观:先算每个函数的「复杂度权重」= 圈复杂度 x 代码行数的平方根,再看圈复杂度超过10的高风险函数,占了整个项目总权重的多少,比例越高代码越烂。

2. 冗余度(Verbosity)

就是代码里重复的、可以简化的垃圾内容占比。比如同样的参数解析逻辑,AI在8个地方抄了8遍;明明可以用循环实现的逻辑,AI写了十几行重复的if-else。研究者用137条规则扫描常见的冗余模式,再加上克隆代码检测,直接算出你写的代码里有多少是没用的废料。

测试结果扎心了:所有AI全败,没有一个能打

研究者测了当前市面上最能打的11个模型,包括Claude Opus 4.5/4.6、GPT 5.1-5.4、GLM 4.7,结果没有一个能打的,直接把AI编程的底裤都扒了:

连一个完整项目都做不下来


没有一个AI Agent能从头到尾完成任何一个问题的所有检查点,哪怕是当前最强的Claude Opus 4.6,严格通过率也只有17.2%——相当于做10个项目,8个半都是烂尾的。

更吓人的是退化速度:

  • 80%的项目里,AI代码的结构侵蚀随着迭代持续上升

  • 89.8%的项目里,冗余度一路走高,根本停不下来

  • 最开始核心功能测试和全量测试的通过率只差1.4倍,到后期直接差到13.3倍——也就是说,表面上核心功能好像还能跑,实际上边角的逻辑已经烂透了,一碰就崩

研究者给大家举了个真实案例:在 circuit_eval(电路模拟器)这个问题里,Claude Opus 4.6最开始的 main() 函数只有84行,圈复杂度29,还算是个正常的代码。经过8轮需求迭代之后,这个函数直接膨胀到了1099行,圈复杂度飙到285,9个命令分支抄了9遍完全一样的参数解析逻辑,你想加个新命令,得先把这9遍逻辑全改对,少改一个就报错。

这像不像你做项目的时候,前两期跑得挺顺,到第三期加需求的时候发现之前的代码写死了,只能加班重写?AI跟你犯的错一模一样,甚至更离谱。

AI写的代码,比人类屎山还烂2倍

研究者还专门找了48个不同Star量级的Python开源仓库做对比,从几千Star的小工具到scikit-learn、scipy这种明星级项目,结果AI的脸被打得啪啪响:



直观对比就是:

  • 冗余度:AI Agent代码是人类代码的2.2倍!

    结构侵蚀:AI Agent代码是人类代码的2.2倍!

    违反率:AI Agent代码是人类代码的2.9倍!

更扎心的是:连以复杂度高著称的scikit-learn(0.411)和scipy(0.457),都比AI写的代码健康得多。

研究者追踪了20个开源仓库好几年的提交记录,发现人类写代码,只要是正经维护的项目,质量基本保持平稳,甚至会越重构越好。但AI写的代码,每迭代一次质量就掉一截,根本没有停下来的意思。

说句不好听的:你吐槽了一万遍的公司祖传屎山,都比AI迭代几轮写出来的代码质量高。

提示词也救不了!越改越贵,还越改越烂

看到这里肯定有程序员会问:是不是我提示词写得不够好?我让AI先写设计文档、让AI不要写冗余代码、让AI注意架构,是不是就能解决问题?

研究者专门做了提示词干预实验,测试了两种程序员最爱用的「魔法提示」:

1.「反slop提示」:明确告诉AI不要写重复代码、不要过度工程化、要拆函数、要避免冗余模式。

2.「先规划提示」:要求AI先写详细的设计方案,确认没问题再写代码。

结果怎么样?确实,初始质量有改善:冗余度降低了33%~34%,前两轮的代码看起来确实干净多了。

但重点来了:退化速率一点没变——两条退化曲线几乎是平行的,无非是一个起点低一点,一个起点高一点,到最后都会烂到没法看。正确率更是没有一丁点提升,统计检验直接显示没有显著差异(Wilcoxon检验,p > 0.05)。


更讽刺的还在后面:干净的代码反而更贵!GPT 5.4用了「反slop」提示之后,完成项目的花费从304美元涨到了450美元,涨了快一半,但通过率反而从37.2%掉到了27.1%——钱花得更多了,活干得更烂了。


为什么会这样?因为AI为了写更干净的代码,会花更多token去思考架构、去拆函数,但它本质上还是没有长期架构设计的能力,后面改需求的时候,该乱堆还是乱堆,该重复还是重复,前面花的那些设计的钱,全打了水漂。

根本问题:AI根本不懂「设计纪律」

为什么AI单次写代码那么厉害,迭代起来就这么拉?核心原因其实很简单:当前的AI编程Agent,根本没有迭代式软件开发需要的「设计纪律」(设计规则)。

人类开发者写代码的时候,脑子里是有「长期规划」的:

  • 我现在写这个函数,后面可能要加三个功能,所以得预留好扩展点

  • 这个逻辑后面好几个地方要用,得抽成公共函数

  • 现在为了快写死的地方,得留个TODO注释,后面有空了重构

  • 加新功能的时候,会想怎么改不影响之前的逻辑,实在不行就提前重构打基础

但AI没有这个意识,它所有的决策都是「短期最优」:当前这一轮需求我要最快跑通,怎么简单怎么来。

  • 要加新功能?直接往已有函数里堆代码,反正这次能跑就行

  • 逻辑重复?复制粘贴八遍最快,我才懒得抽公共函数

  • 之前的架构不适合新需求?不管,硬塞进去就行,只要这次测试能过,后面崩了再说

你看AI写的代码,每一轮单独看好像都没问题,合到一起就是个随时会炸的火药桶。这不是能力问题,是「思维模式」的问题:人类写代码是给未来的自己和同事写的,会考虑长期维护成本;AI写代码是给当前这轮prompt写的,根本不管后面怎么改。

现在的所有评测,都在奖励AI的「短期行为」:只要这次能过测试,你代码写得再烂都算对。但真实的软件工程,要的是「长期可维护」,这恰恰是当前AI最缺的东西。

最后说两句

这次SlopCodeBench的研究,本质上是给现在热得发烫的AI编程浇了一盆冷水:我们离「AI替代程序员」,还差了十万八千里。现在的AI更像个能干的实习生,给你写个小工具、做个一次性的脚本、帮你查个API用法都没问题,真要让它负责一个长期迭代的项目,最后擦屁股的还是你自己。

给非技术读者说句实在话

不要被「AI几分钟写一个系统」的噱头骗了,软件的核心成本从来不是第一版怎么写,而是后面几年怎么改、怎么维护。AI写的第一版确实快,但后面每改一次成本翻倍,最后总成本比人类写的高好几倍,这账算下来一点都不划算。

给程序员朋友的建议

1.不要怕AI抢你饭碗,至少现在,能把控长期架构、能维护迭代项目的开发者,比任何AI都值钱。

2.用AI写代码的时候,不要直接让它改旧代码,尤其是复杂的核心逻辑。最好让它给你写方案参考,你自己来控制架构,再让它写具体的实现,写完了你要做Code Review,别什么代码都往仓库里提。

3. 别在「怎么写提示词让AI写出好架构」上浪费太多时间,这玩意儿目前真的救不了,该你做的设计你得自己做,甩锅给AI最后背锅的还是你。

4.反而可以多关注「AI代码质量检测」相关的工具,以后你大概率会经常干「给AI擦屁股,改它写的烂代码」的活,有工具能省不少事。

至于AI编程未来怎么走?这次的研究其实已经指了个很明确的方向:别再卷单次任务的通过率了,是时候想想怎么让AI学会「为未来写代码」,学会像人类一样有设计纪律,知道写代码不是一锤子买卖。

毕竟,软件工程的本质,从来都不是写能跑的代码,而是写能改、能维护、能活好几年的代码。这个坎,AI要是跨不过去,就永远只是个写一次性代码的工具而已。

声明:包含AI生成内容

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
海航最美空姐捡的是水,打的是所有航司官媒的脸

海航最美空姐捡的是水,打的是所有航司官媒的脸

民航大脑壳
2026-03-30 08:05:54
CBA神交易!焦泊乔换沈梓捷,广东北控双赢?媒记:考验朱芳雨的时刻到了

CBA神交易!焦泊乔换沈梓捷,广东北控双赢?媒记:考验朱芳雨的时刻到了

衔春信
2026-03-30 13:50:02
睡觉时总在凌晨3、4点醒来,医生直言:一般提示3大疾病,别忽视

睡觉时总在凌晨3、4点醒来,医生直言:一般提示3大疾病,别忽视

健康之光
2026-03-30 13:18:26
张雪峰去世头七,曝电动车还停在公司楼下,与女儿珍贵合影曝光

张雪峰去世头七,曝电动车还停在公司楼下,与女儿珍贵合影曝光

180视角
2026-03-30 14:18:21
破案!杜锋宁让张皓嘉打满也不上黄明依原因找到,杨鸣说出大实话

破案!杜锋宁让张皓嘉打满也不上黄明依原因找到,杨鸣说出大实话

后仰大风车
2026-03-30 08:15:09
王传君一家三亚度假!齐溪膀大腰圆身材发福,全家无交流气氛沉闷

王传君一家三亚度假!齐溪膀大腰圆身材发福,全家无交流气氛沉闷

涵豆说娱
2026-03-30 18:32:45
定了!公安部正式官宣,6月1日起全国推行10项便民新措施

定了!公安部正式官宣,6月1日起全国推行10项便民新措施

混沌录
2026-03-28 20:14:21
17-18赛季以来创造绝对机会数量:梅西少踢两个半赛季仍领跑

17-18赛季以来创造绝对机会数量:梅西少踢两个半赛季仍领跑

懂球帝
2026-03-30 19:03:52
雍正王朝穿帮镜头:康熙戴劳力士忍了,乔引娣穿球鞋真忍不了

雍正王朝穿帮镜头:康熙戴劳力士忍了,乔引娣穿球鞋真忍不了

杰丝聊古今
2026-03-29 07:16:55
全国多地“住建局”改名住建局,有何深意?

全国多地“住建局”改名住建局,有何深意?

墨印斋
2026-03-30 09:25:01
原形毕露!热火惨败东部垫底17分,阿德巴约的83分彻底沦为笑话

原形毕露!热火惨败东部垫底17分,阿德巴约的83分彻底沦为笑话

仰卧撑FTUer
2026-03-30 15:25:02
菲大报重磅发声:黄岩岛就是中国领土!霸占15年反被世界耻笑

菲大报重磅发声:黄岩岛就是中国领土!霸占15年反被世界耻笑

安安说
2026-03-29 12:49:38
比赖清德还狂的人出现了,如果她当选台湾领导人,解放军必定收台

比赖清德还狂的人出现了,如果她当选台湾领导人,解放军必定收台

芳芳历史烩
2026-03-29 21:09:31
被37岁老将逼入绝境!日乒25岁名将无缘世锦赛有理:近3站1次八强

被37岁老将逼入绝境!日乒25岁名将无缘世锦赛有理:近3站1次八强

颜小白的篮球梦
2026-03-30 11:22:05
在广东广州天河区这5家馆子,真的是越破越好吃,越吃越上瘾

在广东广州天河区这5家馆子,真的是越破越好吃,越吃越上瘾

椰青美食分享
2026-03-30 09:55:31
富人的生活能有多夸张?网友:根本找不到心动还门当户对的人

富人的生活能有多夸张?网友:根本找不到心动还门当户对的人

带你感受人间冷暖
2026-03-27 00:05:14
特朗普透露卸任后去向,想当几个国的领导人?霍尔木兹海峡变“特朗普海峡”?

特朗普透露卸任后去向,想当几个国的领导人?霍尔木兹海峡变“特朗普海峡”?

新民周刊
2026-03-29 08:55:09
一再提醒:痣长在这3个位置,与癌症密不可分,赶紧自查

一再提醒:痣长在这3个位置,与癌症密不可分,赶紧自查

今日养生之道
2026-03-30 16:47:33
NBA季后赛附加赛形势:雷霆马刺已锁定,湖人保三,勇士再战

NBA季后赛附加赛形势:雷霆马刺已锁定,湖人保三,勇士再战

五姑娘台球
2026-03-30 18:19:09
王曼昱赢下47岁老将!早田考夫蔓同一地方滑倒,王艺迪展望次轮

王曼昱赢下47岁老将!早田考夫蔓同一地方滑倒,王艺迪展望次轮

排球黄金眼
2026-03-30 15:49:26
2026-03-30 19:19:00
新浪财经 incentive-icons
新浪财经
新浪财经是一家创建于1999年8月的财经平台
2685291文章数 6252关注度
往期回顾 全部

科技要闻

一句谎言引发的硅谷血案

头条要闻

张雪机车夺冠公司估值超10亿 创始人20年前纪录片刷屏

头条要闻

张雪机车夺冠公司估值超10亿 创始人20年前纪录片刷屏

体育要闻

想进世界杯,意大利还要过他这一关

娱乐要闻

单依纯凌晨发长文道歉!李荣浩再回应

财经要闻

本轮地缘冲突,A股凭什么走出独立行情

汽车要闻

理想i9要来了!外形似小号MEGA 能冲击高端纯电市场?

态度原创

教育
旅游
家居
游戏
军事航空

教育要闻

一模二模三模,哪次最接近高考?90%的家长都搞错了。#教育##高三##新学期超给力#

旅游要闻

这个春天,总要去一趟禹州!

家居要闻

东方法式美学 现代简约

PS5Pro官宣涨价反而卖爆了?大量玩家抢着升级

军事要闻

第三艘航母出动数千名士兵抵达 美军大举增兵中东战场

无障碍浏览 进入关怀版