文档 / 帮助 / 错误码
错误码
API 错误以 JSON 形式返回,并带有标准的 HTTP 状态码。error.message 字段包含可据以处理的详细信息。
#错误响应格式
error.jsonjson
{
"error": {
"message": "The API key provided is invalid or has been revoked.",
"type": "authentication_error"
}
}#HTTP 状态码
| 状态码 | 含义 |
|---|---|
400 | 请求错误:缺少必填参数或请求体格式不正确 |
401 | API 密钥无效、缺失或已被吊销 |
403 | 配额或权限问题:余额不足,或该密钥无权使用此模型 |
404 | 未知的模型 ID、未知的任务 ID,或端点路径错误 |
429 | 超出速率限制:请降低频率并采用退避策略重试 |
5xx | 上游或网关错误:通常是暂时性的,请采用退避策略重试 |
#常见错误与解决方法
401:API 密钥无效
请确认密钥以 bearer token 形式传递,且未在控制台中被删除:
Authorization: Bearer YOUR_API_KEY403:配额或权限
你的余额可能不足以支付该请求,或该密钥无权访问所请求的模型。请充值,或通过 GET /v1/models 查看该密钥的模型列表。
404:未知的模型或任务
model 取值或任务 ID 不存在。模型 ID 必须与 GET /v1/models 返回的列表完全一致。
429:超出速率限制
请降低请求频率,并在延迟一段时间后重试:
import time, requests
resp = requests.post(url, headers=headers, json=body)
if resp.status_code == 429:
time.sleep(5)
resp = requests.post(url, headers=headers, json=body)5xx:上游错误
请采用指数退避重试;大多数暂时性的供应商错误会在几秒内自动恢复。失败的请求不会计费:
import time, requests
def post_with_retry(url, headers, body, max_retries=3):
for attempt in range(max_retries):
resp = requests.post(url, headers=headers, json=body)
if resp.status_code < 500:
return resp
time.sleep(2 ** attempt)
return resp如果错误持续出现,请联系 support@relaydance.com,并附上时间戳与请求详情。