Skip to main content

錯誤回應格式

Chat Completions、Responses、Messages 與 Gemini 是公開協議邊界,不是 Web API。原生協議錯誤不會包成 Web 的 { success, data, error } envelope。以下範例只適用於 Chat 與 Responses 的 OpenAI 相容 gateway 錯誤:
OpenAI 相容 gateway 錯誤會包含 messagetypecodeparam 和提示擴充是選填。Messages 與 Gemini 使用各自的原生錯誤格式。可安全回傳的 upstream validation 錯誤會原樣保留;確定性的 400/422 不切換 channel,交付第一個 byte 後也不重試。

HTTP 狀態碼

錯誤類型

身份驗證錯誤 (401)

付款錯誤 (402)

存取錯誤 (403)

驗證錯誤 (400)

公開路由在回應主體中不會區分拼字錯誤、隱藏、延後啟用或非公開的模型狀態。如果模型目前無法透過模型詳情取得,TokenLab 會回傳 model_not_found

速率限制錯誤 (429)

當您超過速率限制時:
包含的標頭:
Retry-After 標頭與 retry_after 欄位皆表示在重新嘗試前需等待的確切秒數。

載荷過大 (413)

當輸入或檔案大小超過限制時:
常見原因:
  • 圖像檔案過大(最大 20MB)
  • 音訊檔案過大(最大 25MB)
  • 輸入文字超過模型的上下文長度

上游錯誤 (502, 503)

當所有通道皆失敗時,回應會包含替代模型:

在 Python 中處理錯誤

在 JavaScript 中處理錯誤

最佳實踐

當被限制速率時,在重試之間逐步增加等待時間:
始終設定合理的逾時以避免請求掛起:
記錄完整的錯誤回應(包含 request ID)以便支援:
某些模型有特定要求(例如 max tokens、圖像格式)。 在發出請求前驗證輸入。