速成课 · No. 30

大多数 AI 课程讲的是引擎。这一门讲的是搭在引擎之上的体验——以及它正中央那条硬道理:模型自信、流畅、却有时会出错。好的 AI 产品设计不是去掩盖这一点,而是为它而设计——设定诚实的预期、展示过程、让人始终掌控、优雅地失败。赢得信任的是设计,而不是模型。

只讲精髓 · 每个想法一个画面 · 用设计赢得信任

§ 01

整门学问的起点,是接受模型本来的样子:聪明、有用,却以一种特定的方式不可靠。假装并非如此的设计,会让用户栽跟头。

模型哪怕出错也一样自信

一位魅力十足的专家,给每个答案都用同样笃定的语气说出来——对的和瞎编的,听起来一模一样。

语言模型产出的输出流畅而自信,无论对错——它的错误不会带着忧虑的语气,也不会打上标记。这正是 AI 产品定义性的设计难题:界面无法指望模型自己发出不确定的信号,因为它答对时和胡说时听起来一样笃定。于是设计必须承担起模型不会承担的东西:关于可靠性的提示、留给核查的余地、可供恢复的途径。你是在围绕一个自信而会出错的部件包裹一层用户体验。

信任由设计建立,而非模型

你信任一家好银行,不是因为柜员永不出错,而是因为有回执、有对账单、还能对一笔扣款提出申诉——这套系统赢得了人单凭一己之力赢不到的信任。

用户不会因为某个 AI 功能强大就信任它;他们信任它,是因为围绕它的体验让他们觉得安全——他们能核查它、纠正它、撤销它,并知道会发生什么。模型提供能力;设计提供信任。一个绝妙的模型放进草率的界面里会显得不可信;一个平庸的模型放进周到的界面里则显得可靠。信任是你所造产品的属性,而不是你所用模型的属性。

让设计匹配代价的高低

你乐于让工具自动纠正一个错别字,但你想在一封法律信函发出之前逐字读过——同一个引擎,护栏却截然不同。

你给 AI 多大自由,应当与一个错误会有多昂贵相称。代价低、易于撤销的输出(一个建议的标签、一句草稿)可以更自动;代价高、不可逆转的动作(转账、删数据、发布)则要求核查与确认。最最重要的一个设计决策,就是把自主程度校准到代价上——而无论朝哪个方向把这件事弄错,都会让一个 AI 功能要么鲁莽,要么畏缩到无用。

模型哪怕出错也一样自信,所以设计必须承担它不会承担的东西:可靠性提示、核查的余地、恢复的途径。信任由产品建立,并与代价相称。

§ 02

很大一部分对 AI 的失望,其实是预期错位。在用户栽跟头之前,诚实地告诉他们面对的是什么——这是你能买到的最便宜的信任。

告诉用户这是 AI,而且它会出错

天气预报说「70% 的概率下雨」,而不是「会下雨」——把不确定性摆在前面,正是让人即便预报偏了也依然信它的原因。

坦率说明某个功能由 AI 驱动,且其输出可能并不完美。这不是道歉,也不是软弱——而是校准。一个知道自己拿到的是 AI 建议的用户,会以恰当的方式去读它:有用、值得核查、并非金科玉律。掩盖输出由 AI 生成,或暗示它权威无误,会让人过度信任它,然后在它出错时感到被背叛。诚实的措辞,把一个错误答案从一场背叛,变成一件意料之中、可以应付的事。

把输出当作草稿和建议来呈现

文件上手写的一个「草稿」印章,会改变你读它的方式——你把它当作有待改进的起点,而不是必须遵从的定论。

围绕一个输出的措辞与呈现,决定了用户对它有多信任。把 AI 结果作为 草稿、建议或起点 来呈现——而不是作为完成、权威的答案——会邀请用户带着批判去参与、去编辑,而这正是面对一个会出错的工具应有的姿态。「这是一份你可以编辑的草稿」比「这就是答案」带来更好的结果和更少的灾难。这种措辞默默地、持续地工作着,让用户与模型保持在恰当的关系里。

不要夸大它的能耐

一个承诺某件小玩意儿无所不能的推销员,会让你觉得受了骗;一个准确告诉你它擅长什么、不擅长什么的推销员,赢得长久的信任。

把一个 AI 功能当作魔法来营销很诱人,但夸大保证带来失望——承诺与现实之间的落差,会变成用户的体验。把预期设得略低于模型能做到的,而非略高,让它带来惊喜。哪怕显眼地坦承它的局限,也比一次失败就击碎的炒作,建立起远为持久的信任。少承诺,让模型超额交付,而不是反过来。

大多数对 AI 的失望都是预期错位。说清楚这是 AI、会出错,把输出作为草稿而非裁决来呈现,并少承诺——诚实的措辞是最便宜的信任。

§ 03

一个你无法核查的答案,就是一个你无法信任的答案。让用户看到输出从何而来,把一句黑箱式的断言变成他们能验证的东西——而可验证性正是信任的地基。

给出答案背后的来源

一篇带脚注的研究论文,让任何读者都能把一条主张追溯回它的源头——正是这些引注让它可信,而不只是自信。

当模型基于检索到的信息作答时,把来源展示出来——链接到文档、引述原文段落、指向主张的出处。引注让用户得以验证一个答案,而不必凭信仰接受;它们把模型从一位你必须相信的神谕,变成一位你能核查的研究助手。这正是接地(grounding)在设计上的回报:答案在内部有来源还不够,用户必须能看到并顺着追到那个来源。

让答案可验证,而不只是看似合理

一位好会计不会只甩给你一个数字——他会把每个明细列出来,好让你确认它,而不是去信一个自信的总数。

要这样设计:让用户能核查输出,而不只是接收它。把模型作答所依据的东西呈现出来,标出它用到的具体数据,让人易于对照现实去确认。一个可验证的答案,即便偶尔出错也值得信任,因为用户能逮住那些错的;一个不可验证的答案,即便通常正确也很危险,因为无从分辨好坏。为核查而设计,那些不可避免的错误就会变得可逮,而非昂贵。

在有帮助处展示信心与推理

一位说「我相当有把握,但我们用一项检查来确认」的医生,比一位对每个诊断都用同等确定语气下结论的医生,更能引导你。

在你能做到的地方,把一个输出有多可靠的信号呈现出来——一个信心水平、推理的步骤、当模型拿不准或证据单薄时的一个标记。这帮助用户校准对每个答案该倚重多少,而不是把它们都当作同样牢靠。它不会完美,但哪怕是一个粗糙的「这条不太稳」的提示,也能极大改善人们使用这个功能时的安全程度。把模型语气所掩盖的可靠性信号交给用户,是你能做的最高价值的设计之一。

一个你无法核查的答案就是你无法信任的答案。给出来源、让输出可验证、把信心呈现出来——可验证性把那些不可避免的错误答案,从隐藏的风险变成可逮的风险。

§ 04

对一个会出错的模型来说,最安全的位置是副驾驶座。这样设计——让用户始终做主、批准、编辑、撤销——正是让强大的 AI 能安全上线的原因。

建议与协助,不要擅自行动

一位好助理把邮件起草好,留给你来发——他们不会自己按下发送,事后才告诉你。

对任何有后果的事,把 AI 设计成 建议而非行动:提出修改、起草消息、推荐选择——让人来决定是否采纳。这让人始终参与在要紧的决策里,于是模型的一个错误变成一条被拒绝的建议,而不是一个被执行的错误。一个动作越要紧、越无法撤销,就越应当由模型提议、由人处置。用户发号施令的协助,比用户仅仅在旁监督的自主更安全。

让用户能编辑,而不只是接受或拒绝

一份好模板让你改掉不合适的部分,而不是逼你在完美与无用之间做非此即彼的取舍。

最好的 AI 交互,让用户能 塑造 输出,而不只是要或不要。让 AI 结果易于编辑、打磨、部分保留——因为模型常常帮你走到八成,价值就在于让人来完成最后那两成,而不是因为一处瑕疵就把整件东西丢掉。把输出当作可塑的黏土,而非已成定论,这恰好契合模型实际的表现:一份由人来改进的有力草稿。可编辑性,把「差不多对」从一次失败变成一个先发优势。

任何不可逆转的事都要先确认

银行对一笔大额转账要求二次确认——在你收不回的那件事之前,一个刻意的停顿。

在任何用户无法撤销的动作之前,放上一个清晰的 确认步骤——发送、付款、删除、发帖,任何不可逆转的事。这与安全里的「爆炸半径」是同一种思路,只是表达在用户体验上:一个模型错误至多产出一条被用户回绝的建议,绝不能擅自执行一个不可逆转的动作。并且在你能做到的地方都配上 撤销,这样即便是已采纳的动作也仍可挽回。能够退回去这件事,正是让用户敢于自信而非提心吊胆地依凭 AI 行动的原因。

让人始终做主:模型建议、人来决定;输出可编辑,而非要或不要;任何不可逆转的事都需要确认,并且最好能撤销。

§ 05

一个会出错的部件终将失败,所以它如何失败是一个设计决策,而不是一个边角情况。优雅地失败——承认局限而非凭空编造——正是把一个可信的产品与一个危险的产品区分开来的东西。

让它能说我不知道

你最信任的专家,是那个会说「那超出了我所知」的人,而不是为了填补沉默而自信地编出点什么的人。

把体验设计成允许——并且偏好——一句诚实的「我不知道」或「我拿不准」,胜过一个编造的答案。最危险的 AI 失败,是在毫无依据时自信地杜撰一个回应;一个让拒答成为有效、优雅结局的产品,远比一个逼模型永远产出点什么的产品安全。把不确定性呈现出来而非粉饰掉,不是功能的失败——而是功能在诚实地运作。一个知道自己局限的模型,加上一个尊重这些局限的设计,比一个永远作答的模型赢得更多信任。

对低信心的情形区别对待

一个有把握的垃圾邮件过滤器会自动归类那封邮件,而一个拿不准的则把它标出来让你核查——不确定的情形被处理了,而不是被藏起来。

不要不论一个输出有多不稳,都一视同仁。当模型不确定或在凭薄弱证据工作时,设计一条不同的路径:标记它、请求确认、转交给人,或者向用户问一个澄清的问题。不确定的情形恰恰是盲目自动化伤害最深的地方,所以它们值得有自己那份优雅的处置,而不是与稳妥的情形以同样的信心一并上线。为那个摇摆的中间地带而设计,而不只是为顺利路径,正是让功能稳健的原因。

降级,而不是崩塌

当 GPS 失去信号时,它显示你最后已知的位置并提示「搜索中」,而不是一片空白或把你引下悬崖——它柔和地失败。

当 AI 无法履职时——一个错误、一次宕机、一个超出范围的请求——体验应当 优雅地降级,而不是崩坏,或更糟,产出垃圾。退回到一个更简单的选项、一条清晰的消息、一条手动路径、一个缓存的结果。一个失败时落入一个明智而诚实的状态的功能,守住了用户的信任;一个失败时落入一个自信的错误答案或一块坏掉的屏幕的功能,则摧毁了它。像规划成功路径一样刻意地规划失败模式,因为对一个会出错的部件来说,失败是正常运转的一部分。

对一个会出错的模型而言,失败不是边角情况——而是常态。让它能说「我不知道」,对低信心的情形区别对待,并降级到一个诚实的退路,而不是自信的垃圾。

§ 06

一个好的 AI 产品不只是端出输出——它还从用户对这些输出的反应里学习。捕捉那个信号,把每一次交互都变成一次改进的机会,也给用户一条被听见的途径。

给用户一种轻松反应的方式

每个答案旁边的一个赞和一个踩——用户一点就能告诉你它中了还是偏了,对他们毫无成本。

让用户轻而易举地标示一个输出是好是坏——一个赞/踩、一次快速评分、一个标记。这一举两得:它给了用户一种掌控感和被听见的感觉,也给了你一条关于这个功能在哪里有效、在哪里失败的源源不断的真实信号。一个无法被评价的功能,是一个你在盲飞的功能;一个简单的反应控件,是你能得到的最便宜、最丰富的反馈。把用户本来就会给的反应捕捉下来。

让纠正去教会系统

当你修正手机键盘建议的那个地址时,它就学到了——这次纠正不只为了这一回,它改进了下一回。

最丰富的反馈,是用户去修正那个输出。当有人编辑一条 AI 建议时,那次编辑是一个精确的信号,告诉你「对的」长什么样——把它捕捉下来。纠正和拒绝是金子:它们在真实的案例上,准确告诉你模型在哪里没做到。把它们喂回你的 evals(那门 evals 课)里,让功能可度量地改进,产品就会沿着真实用户实际受困的轮廓变得更好。这次纠正既是当下的一个修复,也是日后的一堂课。

生产环境的反馈是你最好的 eval 集

最好的考题来自学生真正坐着考过的那场考试,而不是来自老师的想象——现实写出的测试,比你能想出来的更好。

从真实使用中涌入的反应与纠正,是你拥有的最有价值的 eval 案例来源——它们是你的用户实际所做的,包括那些你绝不会凭空想出来的失败。挖掘这些反馈,找出功能在哪里崩坏,把那些案例折叠进你的评测集,就闭合了回路:生产环境教会你该修什么,你修好它,下一个版本就更好。一个跑着这条回路的产品会持续改进;一个没有它的产品则在靠猜。正是这条反馈回路,让一个 AI 功能变得更好,而不只是存在着。

一个好的 AI 产品从使用中学习:给用户一种轻松反应的方式,把他们的纠正作为精确信号捕捉下来,并把真实的生产失败喂回你的 evals 里,以持续改进。

§ 07

AI 产品设计归结为一种贯穿始终的姿态:把模型当作一个强大却会出错的助手,并搭建那种让人能安全、自信地使用它的体验。

处处把自主程度校准到代价上

你让助理自己去归档那些表格,起草那封重要信函交你审阅,而签合同永远少不了你——自主程度按后果伸缩。

那个在一个产品里被一次次做出的统一决策,是让 AI 自己做多少、又让多少经由人——而答案永远是:把它伸缩到代价上。低风险、可逆的事可以更自动;高风险、不可逆的事则层层叠上预期、验证、掌控与确认。一个设计良好的 AI 产品不是一律自主或一律谨慎;它是逐处校准的,校准到那里的一个错误会有多昂贵。

为错误答案而设计,而不只是为正确答案

一位好的安全工程师设计汽车时,假定碰撞会发生,而不是寄望它不会——安全气囊是为那个糟糕的日子准备的,而它们正是要点。

成熟的 AI 产品设计的标志,是它围绕模型会出错而建,而不只是围绕它会答对。演示展示的是正确答案;产品则要在错误答案下幸存。所以你要设计验证、掌控、优雅的失败、反馈回路——那套让一个自信的错误变得可逮、可挽回的机器。把顺利路径跑通,你得到的是一个演示;为不顺的路径而设计,你得到的是一个人们真能放心托付真实工作的产品。

在你上线一个 AI 功能之前
  • 自主程度匹配代价了吗——可逆处更自动,不可逆处更受控? - 预期诚实吗——告诉了用户 这是 AI、输出作为草稿呈现、没夸大? - 用户能验证吗——给出了来源、答案可核查、在有帮助处 呈现了信心? - 人在掌控吗——建议而非行动、输出可编辑、不可逆之前先确认、能撤销? - 它优雅地失败吗——能说「我不知道」、低信心被处理、降级而非崩塌? - 反馈回路闭合了吗—— 易于反应、纠正被捕捉、喂回了 evals?
你现在拥有的词
  • fallible component(会出错的部件)——模型哪怕出错也一样自信;设计必须为此打算。 - calibrating autonomy to stakes(把自主程度校准到代价)——错误廉价处更多自由,错误昂贵处 更多掌控。 - honest expectations / drafts not verdicts(诚实的预期 / 草稿而非裁决)——让用户 与模型保持在恰当关系里的措辞。 - verifiability / citations(可验证性 / 引注)——让用户核查 一个答案,而不是盲目地信它。 - human-in-the-loop——建议、编辑、确认、撤销——人始终 做主。 - graceful failure(优雅的失败)——承认「我不知道」并降级,而不是凭空编造。 - feedback loop(反馈回路)——捕捉反应与纠正,随时间改进功能。
你把 AI 设计得好的迹象
  • 体验靠可验证性与掌控 赢得信任,而不只靠模型的力量。 - 用户被 诚实地 告知它是什么, 输出作为待核查的 草稿 呈现。 - 人始终 在掌控——能编辑、能确认、能撤销。 - 它 优雅地失败,承认不确定而非自信地编造。 - 真实的 反馈 回流进你的 evals,于是功能随 使用而改进。

AI 产品设计,是搭建那种让一个强大却会出错的模型可被安全使用的体验:自主程度匹配代价、诚实的预期、可验证的答案、人在掌控、优雅的失败,以及一条会学习的反馈回路。

速成课完 · 7 章 · 用设计赢得信任

接下来是练习:拿一个 AI 功能,从用户那一侧走一遍,这一次假定模型出错了——他们能看出这是 AI 吗,能核查答案、能编辑它、能撤销它、能上报那次偏差吗?凡是答案为否的地方,那是一个设计的缺口,而不是一个模型的缺口。去修体验,而不只是修 prompt。当你意识到信任来自产品而非模型的那一刻,这门学问便豁然贯通。但有一个想法要置于其余之上:模型会自信地出错,而你的设计决定了这件事是落地为一条被逮住、可挽回的建议,还是一场以事实之名递出的灾难。为错误答案而设计,正确的那些便会自己照看好自己。