logo

错误处理

了解如何处理 API 调用中的常见错误和解决方案

1. 错误定位基本步骤

1.1 获取 HTTP 错误代码

在代码中,尽量把错误码和报错信息(message)打印出来,利用这些信息,可以定位大部分问题。

示例响应:

HTTP/1.1 400 Bad Request
Date: Thu, 19 Dec 2024 08:39:19 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 87
Connection: keep-alive

{
  "code": 20012,
  "message": "Model does not exist. Please check it carefully.",
  "data": null
}

1.2 常见错误代码及原因

错误码原因解决方案
400参数不正确参考报错信息(message)修正不合法的请求参数
401API Key 设置错误检查 API Key 是否正确设置
403权限不足常见原因是模型需要实名认证,具体参考报错信息(message)
429触发限流参考报错信息判断触发的具体限流类型(RPM/RPD/TPM/TPD/IPM/IPD),查看 Rate Limits 了解具体策略
504/503服务负载高1. 稍后重试
2. 对于对话和文本转语音请求,可尝试使用流式输出("stream": true)
500服务未知错误联系相关人员进行排查

1.3 使用 curl 命令调试

如果客户端没有输出相应的信息,可以考虑在命令行下运行 curl 命令(以 LLM 模型为例):

curl --request POST \
  --url https://api.openapi.cn/v1/chat/completions \
  --header 'accept: application/json' \
  --header 'authorization: Bearer 改成你的apikey' \
  --header 'content-type: application/json' \
  --data '{
  "model": "记得改模型",
  "messages": [
    {
      "role": "user",
      "content": "你好"
    }
  ],
  "max_tokens": 128
}' -i

2. 其他故障排查建议

  1. 尝试更换模型,验证问题是否依然存在
  2. 如果开启了代理,可以尝试关闭代理后再次访问

3. 问题反馈

如遇其他问题,请点击布尔算力OpenAPI线上需求收集表反馈。