跳到主要内容

过度纠正陷阱:为什么在 AI 功能公开失败后下架它反而让恢复更慢

· 阅读需 11 分钟
Tian Pan
Software Engineer

2024 年初,谷歌的图像生成工具开始产生历史上不准确的结果,应对之策来得迅速:暂停所有人物图像生成功能。这一暂停持续了数月。想将该功能用于合法用途的用户毫无选择。等到功能重新上线时,采用率也很低——仅对一小部分订阅用户开放,受到严格限制,且声誉包袱尚未完全卸下。过度纠正本身成了一个新问题。

这是大多数团队在 AI 功能公开失败后都会掉入的陷阱。直觉没错——如果某个东西在造成伤害,就应该停止——但执行方式却错了。彻底下架功能,或者堆砌铺天盖地的护栏让其形同虚设,并不能重建信任。这只会表明你不知道如何负责任地运营 AI,也无法分辨那 0.1% 的错误输出与 99.9% 的正常输出之间的区别。

另一种选择并非假装什么都没发生,而是理解为什么 AI 信任损害与传统软件信任损害的运作方式不同,并做出相应的应对。

AI 故障被归咎于能力,而非实现

当传统软件产品出现 Bug 时,用户通常将其归咎于实现问题:"他们没有测试到那个边界情况。"他们的心理模型是:底层系统是健全的,只是特定代码路径出了问题,下个版本会修复。

当 AI 功能公开失败时,用户将其归咎于能力。"AI 不够智能。"他们的心理模型是:系统存在根本性的局限,这不是一个可修复的边界情况,它还会以某种其他形式再次出现。这就是为什么单次 AI 错误与单次软件 Bug 相比,会引发更大幅度的信任下降。这个错误让人觉得是对系统本质的揭示,而非对其实现的揭示。

这种不对称性有一个实际后果:在传统软件场景中能够完全恢复信心的修复措施,对 AI 而言是不够的。部署新版本无法消除信任赤字。用户需要看到一个关于"这次有何本质不同"的叙事——不是"我们修复了它",而是"以下是它发生的原因、它代表哪类问题,以及为什么这类问题现在是有界的。"

关于金融咨询场景中 AI 信任动态的研究发现,信任恢复需要结合两个要素:因果解释(为什么会发生错误)和边界说明(系统无法可靠完成哪些事情)。仅凭任何一个要素单独作用,效果都更差。"我们修复了图像生成中的偏见"是不够的。"模型训练的语料库系统性地低估了这些人口统计学背景——我们已更新训练数据并添加了生成后验证,但对 1900 年以前的历史图像仍然可靠性较低",这样的表达才真正能推动事情向前。

过度纠正陷阱

团队始终会遭遇两种失效模式。

彻底下架功能。 这对团队来说是最安全的举措,但对用户并非如此。它传递的信号是"我们不能被信任负责任地部署 AI。"信任损害不会消失——反而会积累,因为现在用户将 AI 团队与最初的失败和过激反应这两次接连失败都联系在一起。当功能重新上线时,它是在一个已经连续发生两次失败的背景下启动的。

堆砌护栏直到功能无用。 谷歌图像生成器在事故后变得如此谨慎,以至于拒绝了与最初问题毫无关系的基础请求。团队这样做是因为护栏让人感觉像是在认真对待失败,但用户体验到的是一个无法完成其预期目的的系统。勉强能用的产品造成的用户流失,与最初失败造成的流失在结果上无从区分。

反直觉的是:移除那些为捕捉 AI 错误而设计的繁复审查流程,往往反而能改善恢复。不是因为监督不好,而是因为大而化之的护栏阻碍了团队理解 AI 真正的失败之处。一旦团队了解了真实的失败模式,就可以针对性地进行风险管理——对出错的特定类别实施严格审查,同时让系统的其余部分正常运行并重建可靠性证据。

事故后响应的目标应该是遏制,而非消除。确定受影响的用户群体、发生了什么伤害以及伤害是否仍在持续。针对该特定失败模式实施熔断器。让其他一切保持正常运行。

冷启动恢复比初始采用更难

推荐系统中的"冷启动"问题,指的是对一个没有历史记录的新用户做出良好预测的困难。事故后的恢复面临的是这个问题的更难版本:已流失的用户是有历史的——负面历史。他们尝试过这个功能,它公开失败了,他们形成了关于其可靠性的心理模型,然后离开了。

重新吸引因可见失败而流失的用户,比获取新用户成本更高。他们已经做出了判断。推翻一个判断比从零开始形成一个判断需要更多的证据,因为修正判断是令人不舒服的,人们会为回避行为找理由。

其含义在于:泛泛的重新接触不会奏效。向那些因特定功能以特定方式失败而流失的用户发送"我们改善了 AI"的电子邮件,不会打动他们。真正有效的是具体性——"我们找到了影响你[用例]的问题,以下是变更内容,以下是如何验证。"这需要知道哪些用户受到了哪种失败模式的影响,而大多数团队在正常运营中并不追踪这些信息,事后也难以重建。

恢复最快的团队,是那些能够将失败追溯到特定用户群体(不是"功能 X 的所有用户",而是"触发了提示模式 Y 的功能 X 用户")并就具体修复与该群体直接沟通的团队。这需要大多数团队为调试而构建的可观测性基础设施,但这并非为了信任沟通而构建的。

响应时间线实际是什么样的

关于 AI 错误后信任形成和修复的研究显示了一个一致的模式。信任损失很快——对于直接遭遇失败的用户来说几乎是即时的,对于从旁人处听说的用户来说是数小时到数天。信任恢复则缓慢且不完整:即使有清晰有效的解释,短期内信任也很少完全反弹到失败前的水平。

处理得当的团队的大致时间线:

  • 前 15 分钟:确定爆炸半径。谁受到了影响?是否仍在持续?激活备用方案——人工升级、功能开关、可用的话切换到之前的版本。
  • 第 1 小时:向领导层和公关部门提交执行摘要。信息是什么?谁负责?避免出现领导层因工程师仍在诊断而沉默的真空。
  • 前 24 小时:面向公众的解释。这需要是有因果关系且有边界的。不是"我们正在调查",而是"我们已确认失败影响了[特定情况类型],我们已禁用该路径,以下是我们所知道的原因。"
  • 第 3-7 天:诊断修复部署到小规模用户群并进行密集监控。不是全面推出——而是概念验证案例。
  • 第 2 周+:逐步重新引入。1% → 5% → 25% → 100%,并针对原始失败模式进行专项监控指标。
  • 第 4-8 周:透明度报告。分享你学到了什么,包括仍然存在的残余风险。

那些在前 24 小时保持沉默、第 2 天发布含糊道歉、第 1 周全面重新上线的团队,恢复曲线最为缓慢。经历了失败的用户没有任何理由更新自己的心理模型。修复可能是真实的;但他们没有证据证明这一点。

能可信地传递"已修复"信号的用户体验模式

信任是在产品界面上重建的,而不是在新闻稿中。几种模式是有效的:

置信度校准呈现。 并非每个 AI 输出都值得相同的视觉权重。高置信度的输出可以呈现为答案;低置信度的输出应呈现为需要验证的建议。这有助于用户形成准确的心理模型,而不是对所有输出施加一概而论的不信任。这在事故后尤其重要,因为用户对不确定性信号高度敏感。

可见的反馈循环。 轻量级反馈机制(点赞/踩、表情回应)重要的不是它们向模型发送的信号,而是向用户发送的信号。当用户看到"此反馈已帮助改善了 847 个类似响应"时,他们就成了恢复的共同所有者。他们成为功能改进的利益相关者,而不是团队声明的旁观者。

明确的局限说明面板。 承认系统无法可靠完成哪些事情,比声称它能做所有事情更快地重建信任。"此功能在 X 和 Y 方面效果良好。对于 Z,我们建议进行人工审查。"这准确地框定了功能,并防止下一次失败重置恢复时钟。

变更日志,而非版本号。 在可见失败后流失的用户不关心你是否在使用 v2.3.1。他们关心的是出了问题的那个具体的东西是否已经得到解决。用面向用户的语言写变更日志,直接映射到失败模式:"我们更新了历史图像的训练数据,并添加了生成后人口统计学验证。"这是可审查的。"提升了准确性和可靠性"则不是。

结构性洞见

AI 失败后的冷启动恢复不是一个沟通问题。沟通有帮助,但恢复弧度主要取决于你实际改变了什么,以及用户是否能随着时间推移观察到这种改变的证据。

结构性要求:AI 事故响应需要与产品界面相连接。大多数团队将这两者分开——事故响应在 Slack 和 Jira 中进行,产品团队发布新版本,公关团队起草声明——而这三条线没有就恢复的证据从用户角度看起来是什么样子进行协调。用户看到的是一个新版本,却没有任何可见的指示说明发生了什么变化;或者他们看到的是一份新闻稿,却与产品中任何可观察到的内容都毫无联系。

恢复最快的团队,将事故后期视为一个产品阶段,而非沟通问题。他们设计用户将观察到什么作为修复证据:置信度指标、局限说明面板、反馈循环、用用户语言写成的变更日志。他们追踪恢复指标(流失用户的重新参与、受影响群体的情感趋势),就像追踪上线指标一样。他们将恢复阶段视为信息收集的机会——失败揭示了模型局限性的真实情况,如果你是在衡量而非只是等待新闻周期过去,那么失败后的几个月是你最能了解这些局限性所在的时候。

过度纠正——下架功能、用护栏将其封住——跳过了这种学习。这是一种看起来最像负责任却实际上最不像的举措。恢复来自于在公开状态下谨慎地运营系统,而不是将其关闭在无人看见的地方,再次失败。

References:Let's stay in touch and Follow me for more thoughts and updates