首页 / 错误码查询

DeepSeek API 错误码查询

按状态码查原因与解法。官方共 7 个错误码,下方全部收录。

400 Invalid Format 请求体格式错误

原因:请求体不是合法的 JSON,或缺少必填字段、字段类型不对。

解法:按错误信息提示检查请求体。常见原因:JSON 括号不匹配、messages 不是数组、role 拼错、content 不是字符串。

常见触发:

  • 用 requests 直接传 dict 忘了 json= 参数
  • messages 里混入了非 dict 元素
401 Authentication Fails 认证失败

原因:API Key 错误、缺失、已删除或已失效。

解法:检查 Authorization 头是否为 Bearer 格式,Key 与账号是否匹配,是否已在该账号下创建后又删除。

常见触发:

  • 把 Key 写进了 URL 而不是 header
  • 复制时多了空格或换行
  • Key 属于另一个账号
402 Insufficient Balance 余额不足

原因:账户余额(含赠送额度)已用完。

解法:到官方控制台查看余额并充值。注意赠送额度有有效期。

常见触发:

  • 跑批任务把余额一次性用光
  • 赠送额度到期未察觉
422 Invalid Parameters 参数错误

原因:请求体是合法 JSON,但参数值不合法:模型名不存在、temperature 越界、max_tokens 过大、消息角色不合法。

解法:核对模型名称拼写与取值范围。max_tokens 不能超过模型输出上限。

常见触发:

  • 模型名写成 deepseek-chat 等旧名
  • max_tokens 超过 384K
  • temperature 填了 3
429 Rate Limit Reached 触发限流

原因:请求发送过快,或超过并发/QPS 限制。也可能是账户余额临界或触发风控。

解法:降低发送速率,加指数退避重试。并发上限按模型不同(Flash 2500、V4 Pro 500)。

常见触发:

  • 并发请求数超过账号上限
  • 短时间重试风暴
  • 多实例共用一个 Key
500 Server Error 服务端错误

原因:服务端内部异常,与请求内容无关。

解法:稍候重试;持续出现时联系官方支持。建议在客户端做重试机制。

常见触发:

  • 偶发的内部异常
  • 上游依赖故障
503 Server Overloaded 服务过载

原因:流量高峰导致服务端过载,无法处理请求。

解法:稍候重试。避开高峰时段(北京时间 09:00-12:00、14:00-18:00)可显著降低遇到 503 的概率。

常见触发:

  • 工作时段高并发时段
  • 免费额度集中使用时段

哪些错误该重试,哪些不该

错误是否重试原因
400 / 422不重试请求本身有问题,重试也不会成功,必须改代码
401不重试Key 有问题,修好再用
402不重试余额不足,充值后继续
429退避重试限流,指数退避通常能过
500 / 503退避重试服务端问题,等的价值大于改代码

429 与 503 的实际区别

429 是你的问题:并发超限或发送过快。Flash 并发上限 2500、V4 Pro 500,多实例共用一个 Key 时最容易撞上。做法是在客户端加全局并发控制,而不是让每个实例自己重试。

503 跟你无关:服务端过载。避开高峰时段(北京时间 09:00-12:00、14:00-18:00)能显著降低遇到概率——这也是 离峰省钱 的附带好处。

退避重试的实现要点

指数退避:第一次等 1 秒,之后 2、4、8、16 秒,最多重试 4-5 次。加随机抖动(±20%)避免多个客户端同时重试造成二次风暴。只对 429/500/503 重试,400/401/402/422 重试没有意义。

相关

价格表 · 成本计算器 · 常见问题