技术 · 熟练
AI 写得越多,就越好用吗?
它解决了问题,也顺手多写了一大截
同一道题,两个模型都跑通了,你凭什么说 A 比 B 干净?「干净」一直是口头评价——而口头评价没法进选型表。现在有了一把可量的尺:按「净编码单元」计分,删掉的代码减分回来。这一页讲的是怎么用这把尺做三件事:① 判一个模型是不是习惯性写多 ② 判一次改动到底是净增还是净减 ③ 把「干净度」和解决率、成本并列写进你的选型表。关键动作只有一个:别只看它跑没跑通,先看它净加了几个语法元素。
方法 · 一图看懂
1
先换掉评价口径 — 从「能不能跑」换成「跑通之外净加了多少」:同一任务、同一提示词,比的是净增编码单元,不是代码行数
2
净编码单元怎么数 — 只数语句 · 调用 · 比较这类语法元素,删掉的按负数计(把重构掉的旧写法从新增里减出来)
3
只在同一条基线上比 — 拿已发布的补丁数据(同一个基准的提交)对齐后再比;跨任务横着比,得到的只是噪声
4
把干净度写进选型表 — 解决率 / 成本 / 干净度三列并列:解决率相近时,干净度就是那把决定性的第二把尺
原理 · 为什么有效
「写得少」之所以能当指标,是因为冗余不是免费的:多出来的每一层抽象、每一个没人调用的分支、每一次多余的状态同步,都要在之后的每一次阅读、修改与回归里重新付费。而模型的默认倾向恰恰相反——它优化的是「这次看起来像个完整方案」,于是补一层封装、加一段兜底、把配置做成可选的,一次生成里多写几十个语法元素,肉眼几乎看不出来。净编码单元把这件事变成了一个可数、可复现、自带负向计价的量:删掉的代码减分回来,就意味着「把三段合成一段」这种真功夫会被记成正贡献,而不是被当成没干活。判据一句话:如果你说不出这次改动净加了什么,那它大概率加多了。
适用场景
适用:① 你正在做模型选型或路由,两个候选解决率接近、成本也接近 ② 你在做代码评审的自动化前置,想让机器先标出「这次改动的净增」再让人看 ③ 你要给团队定一条可执行的「少写」纪律,需要一把能量出来的尺。⛔ 不适用:① 需求本身还没定型(先定需求,干净度是第二步)② 涉及安全性 / 合规性的强制冗余(这类「多写」是必须的,不参与本尺)③ 培训期的新人练习(先要求正确,再要求干净)。
自测 · 5 问
我的选型表里,「干净度」这一列有具体数字,不是「感觉还行」
我比的是净编码单元,不是代码行数——行数会被换行与格式化骗过去
我确认过「删掉的按负数计」这条规则在用:否则重构型提交会被算成没产出
我的对比都落在同一条基线上(同一任务 / 同一套补丁来源),没有跨任务横向比
出现「解决率一样、干净度差很多」时,我知道该选哪一个,并且写进了决策记录
怎么上手 · 验证步骤
① 拿一件你反复做的小任务(改写一段脚本 / 修一个数据清洗函数),用两个候选模型各跑一遍,提示词逐字相同。② 各自统计净增编码单元:数语句 · 调用 · 比较,把删掉的按负数减出来;⛔ 先别数行数。③ 把两个数写进同一张表,再补上解决率与成本两列。④ 挑一个「解决率更高但净增也更高」的样本,实际去读那多出来的一截——判断它是真需要还是模型的口头禅。⑤ 把这一次的结论写进选型表备注,下个月同类任务复用这条判据。
自检动作:随机抽一份你近期写过的或 AI 写的改动,只用「净增 / 净减编码单元」这一句向别人解释这次改动的量级。如果你必须补一句「不过它顺便还改了点别的」才能说清,说明这次改动的净增没有被看清——那就是这把尺要补上的地方。