Skip to content

错误处理

错误使用 OpenAI 兼容结构。客户端应以 HTTP 状态码、error.typeerror.code 和请求 ID作为判断依据,不解析自然语言消息。

json
{
  "error": {
    "message": "The request could not be completed.",
    "type": "upstream_error",
    "code": "media_generation_failed",
    "request_id": "req_xxx"
  }
}

常见状态码

状态码含义客户端处理
400参数或模型能力不匹配修正请求,不自动重试
401API Key 无效或缺失检查并轮换密钥
403分组、模型或任务无权限检查账号权限,不自动重试
404任务或资源不存在检查任务 ID和所有者
409任务状态冲突重新查询任务状态
429额度或请求频率限制Retry-After 退避
500服务内部错误有限次数指数退避
502 / 503 / 504上游或网络暂时不可用有限次数指数退避

重试建议

  • 只重试幂等查询、资源下载以及明确返回可重试错误的提交请求。
  • 生成请求在网络中断时结果可能未知。没有幂等键前,不要无限自动重放,以免重复计费。
  • 429 优先读取 Retry-After;否则采用带抖动的指数退避。
  • 单次请求设置连接超时,异步任务设置独立的整体截止时间。

支持信息

反馈问题时提供:SourcesData 请求 ID、时间、公开任务 ID、模型和 HTTP 状态码。不要提交完整 API Key、上游信息、用户输入素材或下载 token。

Sources Dance · Gateway v0.1.1-private.15