错误处理

SilvaMux 的错误格式取决于接口类型。本页介绍通用错误格式与重试建议,各模块的具体错误码见:

Gateway API 错误(模型调用)

对话、图片、视频等模型调用接口的错误格式由模型协议决定,分 OpenAI / Anthropic / Gemini / Volcengine 四种渲染形状,code 字符串统一。

{
  "error": {
    "message": "具体错误信息",
    "type": "gateway_error",
    "code": "ERROR_CODE"
  }
}

模型侧返回 4xx/5xx 时,SilvaMux 会脱敏后透传错误响应,HTTP 状态码保持一致,此时不会产生扣费。

Billing / Business API 错误(管理接口)

账户、计费、自有素材等管理接口使用 RFC 7807 风格:

{
  "status": 400,
  "detail": "具体错误信息",
  "type": "tag:hub,2026-03:ERROR_CODE"
}

验证错误包含 errors 数组:

{
  "status": 422,
  "detail": "validation failed",
  "type": "tag:hub,2026-03:VALIDATION_FAILED",
  "errors": [{"location": "body.email", "message": "required"}]
}

重试建议

HTTP 状态码 建议
400 不要重试,修正请求参数
401 不要重试,检查认证信息
402 不要重试,充值后再试
403 不要重试,联系管理员
429 等待后重试,建议指数退避
500 可以重试,建议间隔 1-5 秒
502 可以重试,模型侧暂时不可用

请求 ID

每个请求返回 X-Request-Id header(格式 REQ-xxxx)。排查问题时提供此 ID。你也可以在请求中自行设置 X-Request-Id,系统会沿用。