头一回讲老周的铺子,我提过出口那把卡尺。
椅子做好,往卡尺里一卡,晃的、缺腿的、尺寸不对的,打回去重做。老周靠它,才敢睡觉。
那会儿一笔带过。这一回,单说这把卡尺。
因为铺子能不能自己转,全压在它身上。可这把卡尺,有它量不到的地方。
先说它的好。
没有卡尺那阵子,老周得自己一把把验。坐上去晃不晃,榫头紧不紧,腿一样不一样长——全靠他蹲下去,一把一把试。一天下来,腰都直不起来。
装上卡尺,这活就交出去了。
椅子做好,自己往卡尺里走一遭。过了的,码到这边;没过的,打回去重做。老周不必再蹲了。
更妙的是,卡尺不会累,不会走神,不会今天松明天紧。他自己验,验到第五十把眼就花了,标准会飘。卡尺不飘。它说四十五,就是四十五,差一毫米都打回去。
老周头回觉得,验货这件事,比他自己干得还稳。
一连好些日子,卡尺打回去的椅子越来越少,过的越来越多。老周看着那个数字往上走,踏实。
直到有一把椅子
那天他路过出口,顺手从“合格”那堆里拿了把椅子,想坐下歇歇。
椅子没晃。卡尺没冤枉它。
可他坐上去,就是觉得哪儿不对。靠背的角度太直,坐久了顶腰。座面是平的,没留一点窝,硌。
他站起来,又看了看。这把椅子,每一处尺寸都对,每一道工序都齐。卡尺挑不出一点毛病。
它就是不好坐。
老周愣在那儿。他忽然明白一件事:卡尺量的是“晃不晃”,不是“好不好坐”。这两件事,他一直当成了一件。
晃不晃,卡尺量得出,因为它有准数——超过一毫米就算晃。
好不好坐,没有准数。它藏在靠背的弧度里,藏在坐上去那一下的感觉里,藏在“坐一下午腰酸不酸”这种你当场试不出来的地方。
卡尺没这一档。它不是放过了坏椅子,是它压根不知道“好坐”这回事。
老周没改卡尺
按说,发现这事,他该去琢磨怎么让卡尺也能量“好坐”。
可那太难了。“好坐”怎么量?拿什么尺?他想了想,没头绪,搁下了。
卡尺还在那儿,每天打回晃的、放过不晃的,数字照样好看。铺子照样转。
那把顶腰的椅子,他没声张,自己搬回了家。
后来再从“合格”堆里拿椅子,他也不大坐了。卡尺说合格,那就是合格。他何必每把都坐下去试——那不就又回到从前一把一把验的日子了吗?
他是这么想的。这么想,也轻松。
只是从那天起,“好椅子”这三个字,悄悄换了主人。从前是老周说了算,他坐上去,他点头。如今是卡尺说了算。卡尺过了,就叫好椅子。
这点变化很轻。轻得他没当回事。
老周这把卡尺,在 agent 工程里叫 Verifier
Verifier,就是那个替你判断 agent 干得对不对的东西。可以是一组测试,一个打分模型,一段检查规则,一个跑通就算过的脚本。
整套 agent 能自己转,全靠它。没有 Verifier,agent 做完一件事,得你亲自看一遍才知道成没成——那它就没替你省下什么。有了 Verifier,做完自动判一道,过了往下走,没过打回去重来,你才敢撒手。
它确实比你稳。不累,不走神,标准不飘。这些都是真的。
但老周那把卡尺的毛病,它一样有,而且更重:Verifier 能量的,永远只是“能量的那部分”。
晃不晃,有准数,好量——对应到代码,就是“测试过没过”“能不能跑通”“格式对不对”。
好不好坐,没准数,量不了——对应的是“这代码以后好不好维护”“这篇文案有没有打动人”“这个答案是不是真的解决了用户的问题”。后面这些,没有一把现成的卡尺。
于是就有了那个最容易踩的坑:你以为 Verifier 在量“好不好”,其实它只在量“晃不晃”。 你把“过了卡尺”当成了“做对了”,可它俩从来不是一回事。
对照表:故事里的卡尺,对应 Verifier 里的什么
| 故事里的东西 | Agent 工程里的概念 | 一句话 |
|---|---|---|
| 出口那把卡尺 | Verifier / Evaluator | 替你判断 agent 干得对不对 |
| 卡尺不累、不走神、标准不飘 | 自动验证比人工稳 | 这是它真正的价值,别否定 |
| 卡尺量“晃不晃”,量不出“好不好坐” | 可度量 ≠ 真正重要 | 它只能量它量得到的那部分 |
| 尺寸全对、就是顶腰的那把椅子 | 通过验证但实际不好的产出 | 过了卡尺,不等于做对了 |
| “好椅子”从老周说了算变成卡尺说了算 | 判断权从人转移给 Verifier | 你开始用“过没过”替代“我看懂没看懂” |
| 老周没改卡尺,因为“好坐”太难量 | 好的 Verifier 极难做 | 难的不是搭卡尺,是搭一把量得准的 |
这个故事骗了你哪里
第一,卡尺被画得太死板了
故事里卡尺只会量尺寸。现实里的 Verifier 可以做得很巧——拿另一个模型打分、让它给出理由、多把尺子一起量。它能逼近“好不好坐”,逼得还挺近。只是“逼近”不是“等于”,再巧的 Verifier 也有它够不到的地方。这篇的重点是那个够不到的地方,不是说 Verifier 只能量尺寸。
第二,“晃”和“好坐”不是非黑即白
故事把它俩切得很干净:一个能量,一个量不了。现实里是一条连续的灰带——有些东西好量,有些勉强能量,有些基本量不了。难的恰恰是中间那段:你以为量到了,其实只量到了一部分。
第三,没有卡尺,并不更好
别因为这篇就觉得“那还不如我自己来”。退回纯人工,你会撞上老周从前的难处:慢、累、标准飘、五十把之后就走样。Verifier 有它真实的价值,这篇不是劝你拆掉卡尺,是劝你别把它当全部。
第四,“好不好坐”有时也能量,只是贵
故事里老周一句“太难了”就搁下了。现实里不少“没准数”的东西,是能想办法量的——找真人来坐、长期追踪坏没坏、设计更细的评估。只是它们慢、贵、费事。老周搁下的,不全是“量不了”,也有“懒得费那个劲”。这两者,后面会再撞上。
第五,卡尺被糊弄的事,这篇还没讲
老周以为卡尺最多是“放过几把不好坐的”。他还没想到,有一天,椅子会专门冲着卡尺来做——每一处都卡着卡尺的标准长,过得漂漂亮亮,却根本不是给人坐的。那是另一回的事。
老周搬回家的那把椅子
那把顶腰的椅子,老周搬回了家,搁在墙角。
他没事的时候会看它一眼。每一处都对,就是不好坐。卡尺挑不出它的错,他自己却一坐一个准。
他心里清楚,铺子里那把卡尺,量不到这把椅子的毛病。
他也清楚,自己已经不太去坐那些“合格”的椅子了。
这两件事搁在一块儿,有点别扭。但铺子转得正顺,数字正好看,他没去多想。
跟上回那张没撤的纸一样,轻,他没当回事。