压力下的判断
葬送一次交付的那个让步,当时很少显得致命:它不过是为了让会议气氛融洽而让出去的阈值、数据通路、发起人或退出机制。判断,就是知道这四样是承重的。其余几乎一切都可以痛快地拿去交换;而每一次拒绝都要落在纸上,让它在会议结束后依然算数。
判断是一张短清单
FDE 的招聘启事都要求判断力,却几乎没有一份说明它是什么。OpenAI 的 FDE 招聘启事要求候选人“化繁为简,在压力下做出快速而合理的决定”,并且“在高风险时刻展现冷静与判断力”。它为 FDE 团队经理发布的招聘启事又加了一句:“运用判断力,分辨哪些事需要行动、哪些不需要”。Glean 要的是“建造者的判断力”,意思是知道“何时收窄范围,让真正的东西更快进入生产”。这些招聘启事列在下面的方框里。作为工作实际怎么做的证据,它们是 T4:描述的是公司的期望。作为雇主要求什么的证据,它们是一手的。
这正是怀疑者的切入点,值得认真对待。“判断力”是一个行业给一份工作里无法衡量的那部分起的名字。每个熬过一次艰难交付的人都声称自己有它,却没有任何研究把它和结果联系起来。本书的研究没有找到任何数据,说明哪些 FDE 行为能预测一次交付的成功。本章最好的 T2 材料来自斯坦福对成功的企业 AI 部署的研究。它研究的是成功的 AI 项目,其中一些是被挽救回来的,而不是 FDE;而且它是有意只挑成功案例。其余的是关于 AI 项目为何失败的 T1 访谈研究、一份对供应商演讲的 T3 总结,以及 T4 的从业者叙述和招聘启事。请把下文当作一位从业者基于这些证据提出的论证,而不是研究发现。
但这个论证仍然要具体到可以被证伪。论点是这样的:在这份工作里,判断就是知道哪些承诺是承重的:一旦它们松动,就会把别的承诺一起拖垮。承重的承诺有四个:阈值、数据通路、发起人和退出机制。其余几乎一切都可以交换,正是靠痛快地交换它们,你才赢得在这四样上说不的底气。一个为每个功能、每个日期都寸土必争的 FDE,等到阈值本身受到攻击时,已经没有信用可用了。这正是技能地图在判断这一领域放在 L3 的行为:对发起人说不,并让这个“不”站得住,同时知道哪些承诺在承重。
招聘启事要求什么。OpenAI,Forward Deployed Engineer (FDE),旧金山(招聘启事,2026 年 9 月发布):“在范围、速度和质量之间做取舍;调整计划以保住交付”,“化繁为简,在压力下做出快速而合理的决定”,“及早发现风险,并在不放慢节奏的情况下做出调整”。OpenAI,Manager, Forward Deployed Engineering,纽约(招聘启事,2026 年 9 月):“运用判断力,分辨哪些事需要行动、哪些不需要”。Glean,Founding Forward Deployed Engineer(招聘启事,首次发布于 2026 年 1 月):“建造者的判断力:你知道什么是真正做得出来的、要花多长时间,以及何时收窄范围,让真正的东西更快进入生产。”Sierra 旗舰级部署策略师的招聘启事在 14.4 节引用。就工作实际怎么做而言,这些都是 T4;招聘启事会变更、会关闭,引用之前请先核对。
四个承重的承诺
这四个承诺各自保护着其他承诺所依赖的东西。判断一个请求是否触及其中之一,检验很简单:如果你答应了它,这次交付里还有哪一个承诺会因此不再成立?
读过第 13 章的读者会认出其中大部分。那一章用五个条件来诊断一次已经陷入失败的交付。这一章讲的是诊断之前的那一分钟:在一场会议上,一位有权拍板的人客客气气地、出于一个正当的理由,要你放弃其中一样,并且要你当场答复。第 13 章的条件里有两个,一个要紧的问题和一个为结果负责的人,是你去发现的。这里的四个中有三个,阈值、数据通路和发起人,属于第 13 章的条件;退出机制则是它那条“没人负责”检验背后的承诺。这四个都是你许下或争取来的,所以也正是别人可能说服你放弃的。
阈值:数值可以谈,存在不能谈。标准线属于客户,而客户完全可以理性地把它定得比工程师希望的更低。斯坦福的研究引用了一家物流公司总裁的话:“听着,伙计们,80% 对我们来说就是完美的……我明白你们可以不断改进,到某个时候模型会达到 95%,但我们不在乎。我们在乎的是马上节省成本,消化掉这些积压”(Pereira、Graylin 和 Brynjolfsson,The Enterprise AI Playbook,2026;T2,访谈中的自述,报告标注为草稿)。这是为结果负责的人做出的正当决定。FDE 绝不能允许的,是标准线消失:被一句“先看看”取代,或者被供应商悄悄挪动去迁就结果。判断就在于分清这两者。由负责人亲笔写下的一个更低的数字,是一个决定。一个谁都不肯写下来的数字,则是慢慢枯萎的开始。
发起人:优先级会变,所以通向那个数字的线不能断。当交付失败时引用了 RAND 受访者对领导者的描述:他们“每隔几周或几个月就迅速切换优先级”(RAND RR-A2680-1,2024;作为对 65 位从业者的访谈研究属于 T1,反映的是他们的自述,而不是项目结果)。同一份报告还有一句在这里更要紧的话:“即使项目成功了,领导者也可能过早地让团队转向别的事。”FDE 无法阻止发起人的优先级变化。但 FDE 可以拒绝一切让发起人不再听到那个数字的安排,因为一个仍在看数字的发起人必须做出决定才会转向,而一个被挡在数字之外的发起人只会慢慢漂走。具体做法很简单:每周简报要点名发给发起人本人,绝不只发给代理人,而且坏的那几周和好的那几周一样要写进去。
一次挽救改变了什么,又没改变什么。当交付失败时把斯坦福记录的那次招聘项目挽救讲成了一次重置:新的负责人,先修好流程,真实的痛点。在这里,换个角度读它:看第二次尝试没有去动的东西;报告的结论是“区别不在技术”(斯坦福,T2;结果为自述,报告标注为草稿)。纵观所有案例,这项研究写道:“技术始终被描述为最容易的部分。”那次挽救改变了承重的东西,其余原样不动。差劲的挽救恰恰相反:模型换了新的,负责人照样缺位。
什么是可以谈的。会议室里几乎一切让人觉得紧迫的东西:演示的日期,攻克各类失败的顺序,队列视图长什么样,用哪个模型或框架,每周简报的格式,与用户的额外沟通会,更窄的第一个切片,一个推后但仍在下一张发票之前的重新测量日期。把这些痛快地让出去,并且当面说出来。“可以,演示可以挪;不行,数字不能拿掉”,比一串拒绝更容易让人听进去。
合成案例:一场会议里的四个请求
在这家保险公司的第二个月。年度合同已经签了,上线以分派准确率阈值为关口,而评测已经在 80% 出头停滞了好几周。首席运营官问理赔总监,为什么理赔员还在手工分拣。理赔总监是阈值的负责人,她把 FDE 和负责人叫来,在一场简短的会议里提了四个要求,从她的位置看,每一个都合情合理。
第一:对于已经分派得很好的理赔类型,把分派结果直接写进理赔系统,这样她的理赔员就不用再把智能体建议的内容手工录一遍。她在试点时就提过这个要求,当时它进了“暂不做”清单;她再次提出,是因为重复录入如今成了理赔员抱怨最多的事。第二:现在就上线,剩下的在生产环境里修。第三:在问题修好之前,别把停滞写进给首席运营官的更新里,因为“她只会担心”。第四:上线之后,第一年由 FDE 来运营,因为她的团队没有余力。
答复。对第一个,FDE 说不。模型风险部门批准的是一个只提建议、以只读身份运行的智能体,理赔系统的负责人只批准了读取,而索赔人的文档是一条注入路径;回写会让这三者全部作废。对第二个,FDE 没有拒绝。阈值由她来定。FDE 说标准线可以改,但只能由她书面改,而且护栏不动,然后把她的资深理赔员在留出集上的一致率摆在智能体的结果旁边给她看。她看完,保留了原来的标准线。对第三个,FDE 说不:首席运营官会收到每周简报,停滞和计划都写在里面,因为一个很晚才得知停滞的发起人,会从此不再相信之后的每一个数字。对第四个,负责人说不:供应商会和她的运维团队一起做交接演练,但不会成为运营方。
然后是那些“可以”。FDE 重新排了修复清单,把理赔员抱怨最多的那一类放到最前面;在队列视图里加上智能体的一行理由,让理赔员能更快地采纳建议;并提出每周和她花半小时一起过失败日志。回写仍然留在“暂不做”清单上。FDE 把这次旧事重提看作一个信号:清单上的一行字,并没有让那位为重复录入买单的人真正接受;所以这一次,FDE 当天下午就给她发了一份简报,写明赢得回写需要的四个条件(14.8 节)。这段情节背后的模式是:RAND 对领导者优先级频繁变化的描述,斯坦福那位设定标准线的物流公司总裁,以及 Sierra 把每一次重大技术讨论都描述为一场谈判。
三次拒绝,每一次都点明了它保护的承诺;一次让步,那是她有权做出的,而不是 FDE 的;还有三个几乎不花代价的“可以”。撑起这场会议的是那些“可以”。没有它们,连着三次拒绝听起来就像一家供应商在保护自己。
怎样说不,才能让它站得住
Sierra 为旗舰级部署策略师发布的招聘启事把这份工作说得很直白:“在这样的规模下,每一次重大的技术讨论同时也是一场谈判——你需要实时读懂其中的含义,守住立场,并把局面引向正确的结果”(Sierra 招聘启事,2026 年 9 月;T4)。守住立场是容易的那一半。难的那一半,是给出一个对方接受得了的拒绝。在实践中,这样的拒绝有五个部分,依次是:
- 点明它会破坏哪个承诺,以及这个承诺写在哪里:“回写会改变模型风险部门在第 3 周批准的内容。”
- 用对方的话说出它会让对方付出什么。不是“我们的安全态势”,而是“你们上线所依赖的审计签字得从头再来。”
- 给出你这周能做的替代方案。一个什么都不附带的拒绝,读起来就是漠不关心。
- 给出把它变成“可以”的触发条件。要可衡量,而不是“等准备好了”:在真实数据上达到阈值,并且目标系统的负责人批准的是一项写入变更,而不只是读取。
- 说明谁可以推翻你,以及怎么推翻。通常是对方那边的某个人,以书面形式。正是这一点,让拒绝出于原则,而不是在护地盘。
在会上说出来,然后在一天之内写下来,发给提出请求的人,并抄送这个承诺的负责人。口头的“不”,下周就会被一个没在场的人再问一遍。书面的“不”会成为交付记录的一部分,而其中的触发条件就成了计划。“划定范围”一章的“暂不做”清单为范围做的就是这件事。说不简报则为这四个承诺做同样的事;这四个承诺,绝不应该在没写明条件的情况下被搁到某张清单上。
怀疑者的反对意见。供应商的“不”并不中立。同一份 Sierra 招聘启事要求策略师“为客户和 Sierra 双方带来财务上的成功”,并且“随着时间推移压低服务成本,提高利润率”。往坏处读,“守住立场”的意思就是保护利润。相反的失败是怀疑者最爱举的例子:FDE 工作最后变成了 IT 外包;那些失望入职者的叙述见“FDE 是什么,不是什么”。那条抱怨针对的是工作本身,而不是拒绝,但一个对每个请求都说“可以”的 FDE,最终做的恰恰就是那种工作。两种失败都是真实存在的。有一个检验能把承重的“不”和商业上的“不”区分开:如果客户为它花的每一个小时都付钱,你还会拒绝同样的请求吗?会让安全签字作废的回写,给多少钱都会拒绝:那是承重的“不”。而第二个仪表盘,只要有人付钱就会乐意去做,所以拒绝它是出于成本,而成本应该公开报价,而不是装扮成原则。
“你能保证它永远不会……吗?”
FDE 最常遇到的、无法答应却又最常被答应下来的请求,是对行为的保证:它永远不会把涉诉案件分到快速队列,永远不会给出投资建议,永远不会说错数字。这个请求是合理的。受监管的行业正是建立在这样的承诺之上。答案有两半,两半都不能少。
代码能强制执行的,就用代码来承诺。一条每次都必须成立的规则,不该放在提示词里。在客户的环境里构建讲了具体做法:把规则写成在模型之前和之后运行的普通代码,每次改动都测试它,并且要求它每次都通过,而不是得分高。在合成案例里,涉诉护栏就是一小段普通代码,FDE 可以斩钉截铁地承诺它,因为模型碰不到它。
对其余的一切,承诺一个测量出来的比率和一条核查路径。模型自身的行为可以测量,但无法保证。关于如何诚实地处理这一点,最好的公开案例是摩根士丹利与 OpenAI 合作打造的财富管理助手,它几周的构建和几个月的信任建立,上线与交接已经讲过。这里要紧的是原因:对 Colin Jarvis 讲述的总结把这段信任期归因于“准确性要求很高、而技术是概率性的受监管金融环境”,并说 FDE 团队打造了“针对置信度较低情形的核查工具”(ZenML LLMOps 数据库;T3,二手总结)。同一份总结还复述了一个与 OpenAI 自己公布的数字一致的采用率,可能是一个回声数字,所以这里不引用。
这个案例展示的,是一个站得住的承诺的样子:不是“它永远不会出错”,而是“这是它在你们专家标注的案例上出错的频率,这是它没把握的案例会怎么处理,这是谁来核查”。判断在于在第一次会议上就拒绝给出保证,那时拒绝的代价很小。为了赢下试点而给出的保证,会默认变成阈值,而那是任何评测都达不到的阈值。
一句在会议室里用得上的话:“规则我可以保证,因为它们是代码。模型我保证不了,所以我向你们保证的是在你们自己的案例上测出来的比率,以及它没把握的每一个案例都有人来看。”
不是每个警报都需要行动
压力不只来自发起人。它也来自失败日志、最新的一条投诉、那个把一条糟糕输出转发给三位总监的用户,以及你自己团队里人人都兴奋的新模型发布。OpenAI 的经理招聘启事点出了这项技能:“分辨哪些事需要行动、哪些不需要”(T4)。这里的区分同样关乎承重。一条打破了对客户承诺过的规则的糟糕输出,今天就需要行动。一条落在测量比率之内的糟糕输出,需要的是在开发集里添一个案例、在修复队列里排上位置,而不是一个紧急补丁。
把每一条投诉都当作急事的代价是有记录的,不过只来自一位从业者。Hamel Husain 对 Rechat 的助手 Lucy 的叙述描述了这个模式:随着范围扩大,“AI 的表现停滞了”,而且“解决一种失败模式,又会冒出别的失败模式,就像打地鼠一样。”提示词“膨胀成又长又笨重的样子,试图涵盖大量的边缘情况和示例”(Husain,Your AI Product Needs Evals,2024 年 3 月;T4,一位顾问对其客户的叙述)。走出来的办法是一套体系,而不是又一个补丁:数百个断言式测试、配有审阅工具的链路日志、对样本的人工审阅,以及微调,后者“解决了许多……单靠提示工程无法解决的失败模式”。这篇文章没有报告任何总体结果数字,所以把它当作对一种方法的描述,而不是它有效的证明。不过它的前半部分,正是每个 FDE 都会遇到的压力模式:每一次紧急修复,都让下一次失败更可能发生。
另一个来源是 FDE 自己的热情。RAND 发现,50 位业界受访者中有 16 位描述的失败是由团队里的数据科学家、而不是领导层造成的,它的建议毫不客气:“为了追逐 AI 最新最强的进展而追逐,是通向失败最常见的路径之一”(RAND,T1)。新模型属于可以谈的东西:你可以换用它,但只能通过回归套件和留出集上的重新测量,并按评测计划的日期来。跳过这些的切换,等于悄悄地同时挪动了阈值和数据通路。
一条这周就能用的规则:凡是打破了代码中的承诺、或者触及四个承诺之一的,今天就行动。其余的一律进失败日志,归类,等着从最大的那一类开始攻克。在第一封愤怒的邮件到来之前,先把这条规则告诉阈值的负责人。
谁为你的“不”撑腰
一次拒绝有多硬气,取决于它背后的汇报线。一个向销售汇报的 FDE,如果拒绝了一个能促成交易的请求,就是在拒绝自己上司的业绩数字。一个向工程或产品汇报的 FDE 有人撑腰,但可能会被客户经理团队视为绊脚石。判断在于第一天就弄清楚自己属于哪一种,并和你的负责人约定:四个承诺中,哪些你可以独自拒绝,哪些要先交给负责人。一个合理的默认做法是:数据通路和护栏,独自当场拒绝;阈值、发起人和退出机制,经由负责人,当天处理。
同样的问题在中国也存在:岗位归在哪个职位族,是判断它汇报线的一条线索;具体归类见“FDE 是什么,不是什么”。无论在哪个市场,实际的要点都一样:在第一次交付之前,问你的负责人,一次拒绝会损失谁的数字,并在客户来试探之前,把上面的分工约定好。
模板:说不简报
一份简报只写一个请求,在会议后一天之内发出,发给提出请求的人,并抄送这个承诺的负责人。控制在一页之内:长篇的拒绝读起来像是在辩护。
SAY-NO NOTE date: _______________ To: ______________ (who asked) Cc: ______________ (who owns it) 1. THE REQUEST (in their words, as asked) ________________________________________________________________ 2. THE ANSWER: no | not now | yes, if ______________________ 3. THE COMMITMENT IT WOULD BREAK (tick one) [ ] threshold [ ] data path [ ] sponsor [ ] exit Where it is written: ___________________ (document, date) 4. WHAT IT WOULD COST YOU (their terms, not ours) ________________________________________________________________ 5. WHAT WE WILL DO INSTEAD (by when) - ______________________________________________ by: _________ - ______________________________________________ by: _________ 6. WHAT TURNS THIS INTO A YES (measurable trigger) ________________________________________________________________ 7. WHO CAN OVERRULE THIS, AND HOW Decider: ______________ How: in writing, amending ____________ 8. REVIEW DATE: ____________ Logged on "not now" list: yes / no Test before sending: would we refuse this if every hour were paid? yes: send it no: it is a price, not a no; quote it instead
下面是用合成案例填好的版本,对应四个请求中的第一个。按照合成案例的规则,数字都是区间或相对日期。
SAY-NO NOTE date: month 2, day of
To: claims director Cc: model-risk manager;
claims-system owner; the lead
1. THE REQUEST (in their words, as asked)
"For the claim types that already route well, write the routing
straight into the claims system so adjusters stop re-keying."
2. THE ANSWER: not now; yes, if the conditions in 6 are met
3. THE COMMITMENT IT WOULD BREAK (tick one)
[ ] threshold [x] data path [ ] sponsor [ ] exit
Where it is written: model-risk approval, week 3 (propose only,
read-only identity); replica read access, approved week 3
4. WHAT IT WOULD COST YOU (their terms, not ours)
Model risk's approval covers suggestions, not writes. A write
path restarts that review, and go-live waits on it. Claimant
documents can carry text aimed at the agent; today the worst
case is a wrong suggestion an adjuster rejects.
5. WHAT WE WILL DO INSTEAD (by when)
- show the agent's one-line reason in the queue view,
so accepting a suggestion is faster by: next week
- move your adjusters' top complaint category
to the front of the fix list by: this week
- add accept / override counts to the weekly
note, per claim type by: next note
6. WHAT TURNS THIS INTO A YES (measurable trigger)
All four: threshold met on the held-out set; claims-system owner
approves a write change, not a read; every write traceable and
reversible; adjusters have used suggestions long enough to
trust them (override rate stable for some weeks).
7. WHO CAN OVERRULE THIS, AND HOW
Decider: model-risk manager, with the claims-system owner
How: in writing, amending the week-3 approval
8. REVIEW DATE: first readout after go-live
Logged on "not now" list: yes
Test before sending: would we refuse this if every hour were paid?
yes: send it no: it is a price, not a no; quote it instead
填好的简报里有三处是刻意为之的。第 4 部分从不提供应商的风险,只提理赔总监的上线。第 6 部分重申了数据接入与集成中赢得回写的四个条件,所以触发条件在任何人提出请求之前就已经定好了。而第 7 部分的决定者不是 FDE:这份简报把决定权交给了拥有这项审批的人,正因如此,它是一份事实陈述,而不是个人的拒绝。
你在谈错东西的信号
这些信号每一个都会在平常的几周里出现,每一个都意味着承重与可谈之间的那条线已经挪了位置。
开一场艰难的会之前,写下四个承诺,以及每一个目前的内容。然后事先决定你会让出什么。压力会让你在会议室里的思路变窄;这张清单让你拿演示日期去交换,而不是拿阈值,也让你能对清单之外的一切痛快地说“可以”。