你大概也撞见过这两个剪影。上个月末 arXiv 上挂出一篇论文,讲一个做网页开发的用户研究平台 VibeJam;它的试点里,13 个初级学生跟 AI agent 搭班做游戏网站,做出来的质量,比同一个 agent 自己单干要高。另一边,中文社区每次谈 AI 编程能力,几乎永远是跑分——某某模型又拿了几分,某某 benchmark 又超了谁。
这两件事单看都不奇怪。奇怪的是它们同时存在:我们一边默认 AI 编程是人和 agent 的协作,一边却只用“agent 单干”去评估它行不行。中间这块裂口,到现在没个常叫的名字。
我把它叫做:搭班测。拆开说就是,评估 AI 编程能力,不该只考模型自己能把题做成什么样,得把活人和它放进同一条活里,看搭班出来的成品到底怎么样。不是并列地测两个人,是测那台戏。
现在满街的“AI 编程能力”,说穿了都在测单口。题丢下去,agent 从零写,写完打差分。它好自动化、好发榜、好让媒体第二天出稿。但它只回答了一个问题:这个模型一个人能干啥。真实开发里,几乎没人让 agent 一个人跑全程。是人给任务、人看 diff、人改 prompt、人洗码,agent 写、审、合。真场景是搭班,跑分场里的却是单口相声。
搭班测要补的就是这个。它不新——学术圈早就管它叫 user study,人在环里也算半句老话。但在我们日常说“AI 编程能力”的时候,这个词几乎不出场。大家习惯把单测分当成编程能力的全部,于是吵“AI 会不会取代人”时,全是拿单口成绩当弹药。单口场上的结论,搬到搭班场上去,经常是反的。
你想想 VibeJam 试点里那个结果。初级学生,经验谈不上,跟一个默认的 Aider agent 搭班,做出来的网站比 agent 独立做完的质量还高。这不代表学生厉害,也不代表 agent 弱;它说明这件事的性能,很大一部分藏在搭班的接缝里——人的任务梳理、中途纠偏、对 diff 的取舍。单测把这些接缝全剪掉,只剩一个光滑的自动完成。所以你看到的高分,可能恰好是个跟人处不来的家伙。
我自己的直觉是:一个模型单测分越高,搭班时越可能难用。不是一定,是它更容易养成那种“我自己就能跑通整条路”的气派,真跟人搭班,反而听不进指令、爱抢跑、留下洗不完的码。这话我没证据,先撂着,但方向我敢下——单测和搭班测,是两个问法,答案不该被混成一个。
等等,我刹一句。VibeJam 才是个 55 个任务的试点平台,刚挂上 arXiv,作者们自己都还把它叫试点。我不给这个具体平台吹号,我吹的是它顺手带出来的那个动作。它能不能活、会不会被社区用起来,得另说;但“搭班测”这个空缺,不用等它。任何一次真人跟 agent 协作做出的东西,都可以按搭班测来看。
那为什么这词到今天才有人搭着胳膊喊?因为搭班测天生麻烦。它不是一键跑的,得找真人,得搭环境,得处理交互,得算人和 agent 的账怎么拆。搞研究的人宁愿跑离线,不止因为快,还因为干净——变量少,结论好写。可这干净,是把最要紧的那个变量给人请出去了。省下的麻烦,最后都变成“AI 编程能力”这个说法里的水分。
你应该把这个词认领走!下次再看见任何“AI 编程能力”的结论,先问一句:单测还是搭班测?凡没活人下场的分,先别急着进你脑子。你自己要真试工具,也尽量绕开“谁用得更快”这种单口指标——把你和 agent 搭班做出来的成品摆出来看。有差分的看差分,有站点的看站点。看哪个搭档能跟你处,哪个只是单口分高、一搭班就抢杆。
最后留个作废条件:这词如果半年之后还是只有我在喊,社区照样只谈跑分不谈搭班测,那就说明我的音又没校上,回炉。造词的账,得让认领的人来结。