Skip to content

错误码

出错时,接口返回标准 OpenAI 错误结构:

json
{
  "error": {
    "message": "具体的错误描述信息",
    "type": "invalid_request_error",
    "code": "model_not_found"
  }
}

HTTP 状态码

HTTP 状态码含义常见原因与处理方式
400请求无效参数缺失、JSON 格式错误或参数超出模型限制,按 message 字段描述修正请求体
401未授权令牌缺失、错误或已被禁用,检查 Authorization 请求头
403无权限 / 额度不足令牌额度耗尽、模型不在可用分组或 IP 不在白名单,到控制台检查令牌设置与余额
404未找到模型名拼写错误或接口路径不存在,用 /v1/models 核对模型 ID
422参数校验失败请求体格式正确但参数值不合法,按 message 调整参数
429请求过快触发速率限制,按指数退避策略重试
500服务端错误平台内部异常,稍后重试;持续出现请联系客服
503上游服务不可用上游模型渠道波动,稍后重试;如持续建议切换模型

错误类型(type)

type说明
invalid_request_error请求参数有误
authentication_error鉴权失败
permission_error无权限访问该资源
not_found_error资源不存在
rate_limit_error速率限制
api_errorAPI 内部错误
overloaded_error服务过载

常见错误代码(code)

code说明
invalid_api_keyAPI Key 无效
model_not_found模型不存在或无权访问
context_length_exceeded输入超出模型最大上下文长度
max_tokens_exceededmax_tokens 超出模型限制
insufficient_quota账户余额不足
rate_limit_exceeded请求频率过高
content_filter内容被安全过滤器拦截

重试建议

对于 4295xx 错误,推荐使用指数退避重试:

python
import time
import httpx

def chat_with_retry(client, max_retries=3, **kwargs):
    for attempt in range(max_retries):
        try:
            return client.chat.completions.create(**kwargs)
        except Exception as e:
            if attempt == max_retries - 1:
                raise
            wait = 2 ** attempt  # 1s, 2s, 4s
            print(f"请求失败,{wait}s 后重试... ({e})")
            time.sleep(wait)

WARNING

对于 400401403404 这类客户端错误,重试没有意义,应直接检查请求参数或令牌配置。

基于 OpenAI 兼容协议 · 多模态算力网关