Agent 越顺手,你可能越不会判断了

cover

Hello,我是飞飞。

我有一条写文章的流水线。十几个技能模块(skill)排着队。选题、查资料、写初稿。润色、评阅、配图、分发。每一步都有专门的角色。你如果也在用 agent 干活,大概见过这种排法。

它跑得越顺,我越少打开中间那些文件。你可能也有过这种时候。流程一路绿灯,人反而离细节越来越远。

昨天 Addy Osmani 写了篇长文,讲的就是这件事。他给了个说法,把「用 AI 用顺手」分成三档。说真的,我对着自己这条流水线挨个套了一遍。套完才发现,最危险的那档藏在中间。

今年四月我写过一次,AI 用多了人会懒得想。那篇给的是结论。这次想拆开过程。人是分几步滑下去的。哪一步最不容易被看见。

先分清三档

Osmani 把人和 agent 的关系分成三段。

最上面一档叫认知卸载。活交给 AI,结果的所有权还在你手里。你可以让它干,但得像验收下属的活一样验收。

中间一档叫让渡(deferral)。工具的输出直接变成你的新输入。到了这一步,结果不再是假设。它已经是一个既成事实。你拿着它往下走,不再回头问它对不对。

最下面一档叫认知投降。AI 的输出悄悄变成你自己的,你觉得没必要查。这个词是 Wharton 的 Steven Shaw 和 Gideon Nave 提出来的。Osmani 借它描述自己看到的滑坡。

同一个人不会固定在哪一档。信任多一点,或者懒一点,人就往下滑一格。

滑坡没有声音

Osmani 写了一段很克制的话。他说这个转变很少被看见。每一步都很小,看起来都合理。

你上一段回答读得很细,下一段就只扫一眼。再往后,只看看小标题。然后有人问你其中一行,你答不上来。哪怕 agent 就在旁边。

这句话值得停一下。

我那条流水线里,选题是我点的,终审是我过的。这两步我守得很紧。可中间呢?中间那些环节,我一直是交出去的。它们交回来什么,我接着往下走。评阅分数过了八十,流程就继续。

每一步都像在验收。可验收的颗粒度会一路变粗。一开始要求逐字读。后来读摘要。最后只看一个分数。

更麻烦的是,模型越强,这个滑坡越顺。写得差的输出会逼你回头看。写得顺、大体正确的输出不会。它不给你停下来重新想的理由。

Osmani 还有一句提醒。agent 工作流本身很舒服。快、顺、大体正确的答案,在忙的时候特别解压。也正因为解压,人更容易把警惕放下。警惕很少是被谁说服才放下的。常常是舒服着舒服着,就没了。

中间那档最危险

三档里,最下面那档最容易让人紧张。可对着自己的流程看,真正难防的是中间那档。

认知卸载还好识别。你知道自己在交活。认知投降也有信号。你发现自己答不上来。中间那档最安静。输出变成了输入,你还在正常干活。它不需要你点头,也不需要你放弃什么。你只是在正常交接。

Osmani 还提了一个更具体的场景。多个 agent 串起来干活。每一个都把上一个的摘要塞进上下文。跑到后面几环,它可能压根没读过原始文档。每一棒都觉得自己在按事实办事。传下去的,却已经是别人的转述。

我这条流水线也有这个结构。研究员给我简报,写手读简报。润色读稿子,评阅读润色后的稿子。每一环都有输入有输出,链条看起来很完整。可如果最前面那环漏了一个关键限定。后面几环会把它当成前提。一路顺下去。

链条越长,中间那档越难发现。因为每一环都在正常工作,没有人报错。每一环单独看都合格。合起来,却可能已经偏了。

绿灯只证明一件事

中间那档最难抓,因为它长得像验收。

Osmani 讲验证时点到一件事。agent 让写测试变得很便宜,绿灯会变多。可测试可能跟功能犯同一个错,照样通过。一个绿灯只说明它检查了那件事。你把绿灯当成「全都过了」。那一刻,验证就已经从你手里滑到流程里了。一次两次看不出来。次数多了,你记住的只剩那个分数。

他给的做法是先定义什么算完成。测试通过、截图、日志、trace,选一个能落地的东西当终点。收到完成通知,先看它跑了什么命令、返回了什么。然后再看摘要。

绿灯不骗人。骗人的是我对绿灯的想象。

把判断放回流程

Osmani 给了一套日常做法。我挑了几件打算塞进自己流程的。都冲着刚才那个毛病去:验收太粗。

一件事是,读简报之前先写一句我猜它会怎么说。哪怕猜错。它让我在读到一个顺滑答案时,脑子里不是空的。

另一件事是,派活之前先写清楚什么算完成。不等它跑完再想怎么验,先定好要过哪几条检查。

还有一件,让它列出替我做的决定。默认值、范围、两条要求冲突时听谁的。这些不会出现在「一切顺利」的摘要里。我会抽查几行,问它这行为什么这样。

用测验收尾,别用摘要收尾。绿灯之后追一句。它证明了什么,没证明什么。

还有一条是关于提示词的。他说第二轮改不对,就别继续微调。回去重写自己的需求。提示词写不清,往往说明脑子里还没想清。

责任交不出去

文章最后,Osmani 把话说死了。他说活可以交出去。大部分审计也可以交出去。但责任交不出去。

他还引了 Anthropic 自己的研究。监督 Claude 需要的那套编码能力。恰恰可能因为过度使用 AI 而退化。这个循环有点讽刺。你越依赖它,越难判断它做得对不对。

所以他把事情分了两类。错了代价小的事,可以整件交出去。他举了自己挑录音酒店的例子。三家评分接近,没时间看评论。交给 AI 选,结果能用,下次还这么干。投资、孩子的职业建议、产品做什么。改动影响哪些用户,能不能安全上线。这些要把推理留在自己手里。

这个分法听着像常识,放到流水线里却容易忘。流程跑通一次,下一次就会默认它还能跑通。昨天验证过的东西,今天未必还成立。可人不会每天都去重新证明一遍。

我补一句自己的分法。选题和终审我会一直自己来。这两步错了,署名的人要认。中间那些核查、评分、格式检查,可以交给流程。但我打算定期抽一份原始材料对一遍。确认流程没在替我编事实。

写到最后,我想起 Osmani 文里那句最朴素的提醒。如果你连答案都解释不了。哪怕有 agent 帮忙,也解释不了。那你就已经把它交出去了。

这句话可以当筛子用。下次 agent 交活给你,别急着点通过。先看看你手里那只筛子,网眼是不是又大了。再问自己一句:这一步,我还能解释吗?

你那条流水线里,哪一步是你已经解释不了的?