跳到主要内容

人工接管作为一等功能:设计能够优雅降级至人工控制的 AI 系统

· 阅读需 11 分钟
Tian Pan
Software Engineer

当一个 AI 驱动的客服智能体无法解决问题并将工单升级给人工时,接下来会发生什么?在大多数系统中:客户被冷转接,没有任何上下文,不得不从头开始重新解释所有情况。人工客服完全不知道 AI 尝试了什么、收集了哪些信息,以及为什么发生了交接。

这是人工接管失败最常见的形式——不是戏剧性的 AI 崩溃,而是自动化与人工处理衔接处悄然发生的 UX 崩塌。究其根本,是工程师精心设计了 AI 处理路径,却将人工接管作为事后补丁——一个出问题时的回退方案。结果是,接管体验像系统报错,而非经过设计的操作模式。

那些做得好的工程团队,从第一天起就将人工接管视为一等功能。以下是其在实践中的具体体现。

默认设计是错的:将接管视为错误状态

大多数 AI 系统架构隐含地编码了一种二元逻辑:AI 处理,或 AI 失败。当 AI 失败时,就会触发某种异常处理——回退、超时、升级。交接没有经过设计,而是在运行时临时拼凑。

这会造成几个相互叠加的问题。

失忆问题是最显眼的。AI 积累的状态——用户输入、尝试了什么、为何置信度下降——在交接时全部蒸发。人工操作员从零开始。在客服场景中,这意味着客户需要重复自己的问题。在医疗编码工作流程中,这意味着人工审核员需要重新处理 AI 已经部分分析过的案例。在自动驾驶车辆中,这意味着人类驾驶员接手方向盘时,对系统不确定的原因一无所知。

告警疲劳问题不那么明显,但破坏性更强。当每次升级看起来都一样——一个通用的"需要人工审核"通知——人工操作员就会停止认真处理。缺乏上下文迫使他们把每个案例都当成新的开始,久而久之形成浅层处理习惯。高风险案例和琐碎案例得到同等对待。

问责缺口是上述问题的结构性版本。当接管没有经过设计,它也就无法审计。没有记录说明哪个触发器触发了、传递了什么状态、谁接手了、做出了什么决策。事后分析变成了猜谜游戏。

解决方案并不复杂,但需要在项目早期做出一个明确的设计决策:将人工接管定义为系统可以进入的一个状态,而不仅仅是系统可能失败到的一个条件。

触发器设计:何时交接

第一个设计决策是定义什么情况导致系统路由到人工。触发器分四类,生产系统通常需要全部四类。

基于置信度的触发器在 AI 对其输出的不确定性超过阈值时触发。校准取决于领域:通用客服系统通常在 60–70% 置信度时升级;企业合规敏感工作流推高至 80–85%;金融服务系统通常在 85% 或以上运行。这些阈值不是魔法数字——应该通过在标注验证集上运行模型并调优来经验性地设置,优化目标是团队在操作上能够承受的误报率。

基于权限的触发器在请求的操作超出 AI 授权范围时触发。这些应该在系统的授权模型中明确规定,而不是在运行时推断。处理报销审批的 AI 智能体可能有 5,000 美元的硬性上限;超过这个金额的自动路由到人工。这不是置信度判断——而是蓄意的策略边界。

基于异常的触发器在系统行为以暗示出错的方式偏离预期模式时触发。在智能体系统中,这包括:相同工具调用重复且无进展、token 消耗速度激增(每分钟正常进行 5 次工具调用的健康智能体不应该突然达到 500 次)、连续错误无法解决,以及智能体明显意图偏离原始任务的语义漂移。这些是熔断器触发器——用于捕捉置信度评分无法捕捉的失败模式,包括你尚未预料到的那些。

基于能力的触发器在任务在结构上超出 AI 能力范围时触发——模型不支持的语言、无法处理的数据类型、没有可靠知识的领域。这些应该提前定义并编码为早退规则,而不是在推理时才发现。

将有效触发器设计与失效触发器设计区分开来的实现细节:每种触发器类型应该产生不同的信号,而不是同一个通用的"升级"事件。下游交接逻辑需要知道为什么要呼叫人工,而不仅仅是是否要呼叫。

AI 系统的熔断器

分布式系统中的熔断器模式直接适用于 AI 工作负载,并有一个重要扩展:AI 熔断器需要考虑 token 预算和语义状态,而不仅仅是请求计数和错误率。

设计良好的 AI 熔断器同时监控多个维度:

  • 连续失败:某类任务连续三次失败则断路
  • 成本速度:如果 token 消耗在会话窗口内超过可用容量的 80%,在系统触及硬性限制并非正常终止之前断路
  • 行为异常:同一工具调用在没有向前推进的情况下执行超过 N 次,这是循环而非推理
  • 置信度下限:如果模型的内部不确定性估计(通过校准的 logprob 评分或思维链置信度)跌破安全下限且持续保持,系统不会自我纠正

熔断器应具有三个状态:关闭(正常运行)、断开(将所有流量路由至人工处理)和半开(允许有限流量通过以测试恢复)。状态之间的转换逻辑是大多数团队偷工减料的地方——他们实现了关闭和断开,却省略了半开,这意味着他们没有自动恢复路径,要么持续降级运行,要么需要手动重置。

与传统熔断器的一个重要区别:失败信号通常是语义性的,而非二元的。传统服务要么返回 200,要么不返回。AI 系统可以返回语法上有效但语义错误或偏离任务的响应。这意味着 AI 的熔断器逻辑需要包含输出验证,而不仅仅是追踪调用成功/失败。

交接 UX:人工操作员实际收到什么

良好的触发器设计解决的是何时升级的问题。交接 UX 设计解决的是升级那一刻发生什么的问题。大多数团队优化了前者,却忽视了后者。

设计良好的交接应向人工操作员传递以下内容:

  1. 对话状态:用户说了什么、AI 回应了什么的完整历史,而非摘要
  2. AI 推理轨迹:系统尝试了什么、按什么顺序、得出了什么结论
  3. 触发上下文:哪个具体触发器触发了,以及当时的阈值是多少
  4. 推荐操作:如果 AI 对人工下一步应该做什么有假设,则附上——并标注置信度,以便人工判断应给予多大权重
  5. 用户上下文:这个人是谁,他们的历史,以及互动开始时陈述的目标

这些信息应该以结构化上下文包的形式到达,而不是堆入聊天记录。人工操作员每小时处理数十个案例;如果他们需要阅读三段话才能理解一个案例为何存在,AI 预处理的大部分价值就白费了。

"升级卡"模式——在操作员视图顶部呈现的紧凑结构化摘要——是最一贯有效的交接格式。它展示:用户在尝试做什么、尝试了什么、为何升级,以及推荐的下一步操作。两到三个简洁字段,而非叙述性文字。

团队持续投入不足的一个 UX 细节:明确的合规案例。当用户说"我想和真人说话"时,转接应该立即发生——不是再尝试一次解决,不是 AI 解释为何可能能够帮助。对明确接管请求不合规是破坏用户对 AI 产品信任最快的方式之一。

在写任何提示词之前先设计状态机

防止最多下游问题的实践建议:在编写第一个提示词或工具调用之前,将人工接管状态显式建模为系统设计的一部分。

具备人工接管能力的 AI 系统的最小状态机至少有六个状态:

  • 活跃:AI 正在处理任务
  • 不确定:AI 正在处理任务,但置信度低于阈值——软警告状态
  • 升级中:触发器已触发,上下文正在打包,路由正在进行
  • 人工活跃:人工操作员已接手
  • 解决中:任务正在完成(由人工或 AI)
  • 完成:任务已关闭,结果已记录

状态之间的转换是操作需求所在。当状态从活跃移动到升级中时,进行中的 AI 请求会发生什么?哪些数据被检查点保存?谁收到通知?如果在 N 分钟内没有人工操作员接受,超时行为是什么?

如果你明确地建模这些转换——在图表中、在代码中、在规范中——实现需求就变得清晰且可审计。如果你不这样做,你将在生产中发现缺失的转换,在最糟糕的情况下。

监管底线(以及为什么它是设计最低要求,而非目标)

欧盟 AI 法案第 14 条要求对高风险 AI 系统进行人工监督,要求操作员能够理解系统能力、检测并解决问题、覆盖输出,以及停止操作。这些要求于 2026 年 8 月全面生效。

NIST AI 风险管理框架于 2025 年更新,在其透明度和问责支柱下正式化了类似要求:有文档记录的监督流程、AI 生命周期中明确的所有权,以及包含人工干预路径的事件响应计划。

这些是底线,而非上限。设计到监管最低要求的系统——"如果他们愿意,人工在技术上可以覆盖这个"——与将接管设计为一等操作模式的系统不同。监管合规要求接管是可能的。操作可靠性要求接管是经过设计的

目前在没有记录降级计划的情况下运营 AI 系统的 71% 的企业,今天不一定违反了任何法律。但他们正在积累可靠性债务,这笔债务将在第一次严重事件中到期——当系统以意外方式降级,团队实时发现没有定义的人工控制路径时。

整合:实用检查清单

将人工接管设计为一等功能意味着在第一个冲刺结束之前回答这些问题:

  • 该系统的四类触发器是什么,每类产生什么具体信号?
  • 为该领域校准了什么置信度阈值,这个数字是如何验证的?
  • 适用哪些熔断器条件,包括 token 预算、异常检测和输出验证?
  • 人工操作员在交接时收到什么上下文包,是否已经与实际操作员进行了可用性测试?
  • 管理系统接管状态的状态机是什么,所有转换条件是否明确?
  • 如果在超时窗口内没有人工接受升级会发生什么?
  • 接管事件如何记录以供事后分析?

提前做这项工作的团队并不是在做更多工作——他们是在便宜的时候做同样的工作,而不是在昂贵的时刻。人工接管不是边缘案例。对于任何在现实世界环境中以现实世界失败模式运行的 AI 系统,它都是一个将会激活的核心操作模式。问题是它是经过设计的,还是临时拼凑的。

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