错误响应格式
所有错误返回一致的 JSON 格式,并可选包含 Agent-First hints:message, type)始终存在;code 和 param 是可选字段,仅在适用时返回。提示字段(did_you_mean, suggestions, hint, retryable, retry_after, balance_usd, estimated_cost_usd)是用于 AI agent 自我纠正的可选扩展。详情见 Agent-First API guide。
兼容 OpenAI 的端点使用 TokenLab 的稳定网关错误类型。兼容 Anthropic 和 Gemini 的端点使用它们各自原生的错误类别和响应格式。
HTTP 状态码
错误类型
认证错误 (401)
支付错误 (402)
访问错误 (403)
验证错误 (400)
model_not_found。
速率限制错误 (429)
当超过速率限制时:Retry-After 头和 retry_after 字段都指示在重试前应等待的确切秒数。
负载过大 (413)
当输入或文件大小超过限制时:- 图像文件过大(最大 20MB)
- 音频文件过大(最大 25MB)
- 输入文本超过模型上下文长度
上游错误 (502, 503)
当所有通道都失败时,响应会包含备选模型:
在 Python 中处理错误
在 JavaScript 中处理错误
最佳实践
实现指数退避
实现指数退避
当受到速率限制时,在重试之间逐步延长等待时间:
设置超时
设置超时
始终设置合理的超时时间以避免请求挂起:
记录错误以便调试
记录错误以便调试
记录完整的错误响应,包括请求 ID 以便支持:
处理模型特定错误
处理模型特定错误
一些模型有特定要求(例如,最大 tokens、图像格式)。在发起请求前验证输入。