故障回復
诺玛AI 的故障回復機制在主模型不可用時,自動切換到備選模型,確保你的服務不中斷。
工作原理#
- 請求傳送到主模型
- 如果主模型回傳錯誤(5xx、超時、限流等)
- 自動按順序嘗試 fallback 清單中的模型
- 回傳第一個成功的回應
單請求回復#
透過 `provider.fallback` 引數為單個請求設定回復:
程式碼
from openai import OpenAI
client = OpenAI(
base_url="https://as.apinoma.com/v1",
api_key="<你的 APINOMA_API_KEY>"
)
response = client.chat.completions.create(
model="openai/gpt-4o", # 主模型
messages=[{"role": "user", "content": "你好"}],
extra_body={
"provider": {
"fallback": [
"anthropic/claude-sonnet-4.6", # 第一備選
"google/gemini-pro-compatible-flash-lite-preview" # 第二備選
]
}
}
)
# 檢視實際使用的模型
print(response.model)回復觸發條件#
以下情況會觸發回復:
條件
說明
HTTP 5xx
伺服器錯誤
請求超時
模型響應超時
429 限流
上游模型達到速率限制
模型不可用
供應商維護或下線
以下情況不會觸發回復:
條件
說明
HTTP 4xx(非 429)
客戶端錯誤需要修正請求
內容過濾
模型拒絕生成的內容
配合路由使用#
回復機制可以和供應商路由組合:
程式碼
response = client.chat.completions.create(
model="openai/gpt-4o",
messages=[{"role": "user", "content": "你好"}],
extra_body={
"provider": {
"routing": "latency", # 延遲優先路由
"fallback": [ # 回退列表
"anthropic/claude-sonnet-4.6",
"google/gemini-pro-compatible-flash-lite-preview"
]
}
}
)推薦回復方案#
推薦模型請參考 模型廣場 。
最佳實踐#
- 選擇能力相近的備選模型 — 確保回復後輸出質量一致
- 跨廠商回復 — 避免同一廠商的模型同時不可用
- 設定 2-3 個備選 — 足以應對大部分故障場景
- 監控回復頻率 — 如果頻繁回復,可能需要更換主模型
最後更新於 2026 年 6 月 23 日