LLM 故障切换设计指南:恢复请求,同时避免不安全重试

可靠的故障切换策略是一套封闭阶梯,由已批准线路、可重试错误和截止时间组成。它记录每次尝试,并在可靠性功能变成重复工具执行、失控费用或静默模型替换前停止。应用层与网关层必须一起设计,因为任何一层都无法自动知道另一层的副作用。

发布 2026-08-15 · 更新 2026-08-15 · KeepRouter Editorial · 10 分钟阅读

展示安全重试、回退、取消与副作用边界的 LLM 请求状态机
故障切换策略必须保留操作身份,并在产生不安全重复副作用前停止。

先给结论:故障切换只能恢复应用已经判断为可安全重复的失败。先建立已批准线路集合,再定义可重试错误、单次超时、总截止时间、流式规则、幂等性与费用证据。不要让通用重试策略悄悄切换模型或执行两次工具。

分开四种恢复动作

恢复动作线路变化适用情况主要危险
重试同一线路不变临时网络或部分服务器错误可能恢复重复 token 与更长截止时间
尝试另一供应商线路供应商或 deployment 变化等价线路通过相同验收套件区域、版本、数据策略或缓存不同
回退到另一模型公开模型或家族变化产品明确批准不同模型行为质量、工具、安全与价格变化
停止并返回错误不再尝试永久错误、时间耗尽或副作用不确定完成率下降,但保护正确性

最后一种也是可靠策略的一部分。总要返回内容的系统,可能不如在破坏状态前停止的系统可靠。

用真实响应建立错误分类

收集准确端点与供应商的错误。认证失败、未知模型 ID、不支持字段和错误输入通常需要修复配置或代码,重复请求不会改变这些事实。

限流、连接重置、部分 5xx 和超时可能可以重试,但仍要检查供应商指南、Retry-After 与剩余产品截止时间。代码 Agent、自动补全和语音交互能接受的等待时间不同。

保留原始错误类型和之后的每次尝试。只返回最终 200 会让不稳定线路看起来健康,也隐藏恢复成本。

为完整阶梯分配时间

设置一个逻辑操作截止时间,再分配给各次尝试。如果客户端只允许 12 秒,两次独立的 10 秒上游超时就放不下。还要保留流式输出和返回有效错误的时间。

只有等待可能改善条件时才使用指数退避。永久 Schema 错误后的退避只会耗尽时间。多个 worker 可能在同一故障后一起重试时,应增加 jitter。

网关延迟指南说明如何分开报告首次尝试与获救请求。

流式需要状态机

第一个输出事件之前,另一次尝试可能对用户不可见;部分输出之后,重新播放会重复文本或产生冲突答案。应跟踪客户端是否已经收到响应头、内容、工具调用、用量和终止事件。

为部分流选择明确策略:停止并返回带标记的不完整响应;只在协议和供应商支持时恢复;或作为新的用户可见尝试重新开始。不要把不同模型输出拼接成一个响应。

在应用边界保护副作用

网关看到的是模型请求,通常不知道生成的工具调用是否已经发送邮件、扣款或修改数据库。应用必须分配稳定 operation ID、持久保存工具状态,并拒绝重复执行。

每个回退模型都必须通过相同工具 Schema 与授权测试。较弱模型即使使用同一兼容 API,如果参数格式不同,也不能视为等价线路。

核对所有尝试的成本

成本来源为什么可能重复
输入 token每个供应商都会再次收到提示词
输出 token失败流可能已经生成内容
缓存输入缓存 Key 与可用性会随线路变化
网关请求费部分产品按请求或套餐用量收费
工具操作外部系统可能执行付费或不可逆工作

把所有尝试归入同一个逻辑操作,同时保留逐次模型、用量、状态与费用。产品团队需要总数,平台团队需要线路明细。成本控制文章解释这种归属模型。

生产前运行失败矩阵

  1. 拒绝无效认证,并确认没有重试。
  2. 发送不支持参数,并确认策略停止。
  3. 模拟带与不带 Retry-After 的限流。
  4. 让首字节超过单次超时。
  5. 在部分内容前后分别中断流。
  6. 在提出工具调用后和返回工具结果后分别失败。
  7. 耗尽总截止时间并检查客户端错误。
  8. 比较每次尝试的请求记录与计费证据。
  9. 禁用主线路并证明回滚控制。

先阅读什么是 LLM API 故障切换,再把最终策略写在路由配置旁边。策略是生产契约,不应只是隐藏的网关默认值。

常见问题

所有 5xx 都应该重试吗?

不是。应结合供应商指南、端点行为、剩余时间与副作用状态,部分服务器错误会持续存在。

故障切换可以更换模型吗?

只有产品明确允许,并且回退模型通过相同任务、工具、安全和成本检查时才可以。

多少次尝试是安全的?

没有通用次数,应由用户截止时间、可重试条件、副作用风险与总成本上限共同限制。

故障切换应记录什么?

记录一个逻辑 operation ID,以及每次尝试的线路、模型、错误、时间、用量、费用与最终状态。

参考的一手资料

本文最近复核 2026-08-15

  1. [1] Cloudflare AI Gateway request handling
  2. [2] Cloudflare AI Gateway dynamic routing
  3. [3] Vercel AI Gateway provider options
  4. [4] OpenRouter provider routing

继续阅读

← 全部文章 · 模型与价格 · 获取 API Key