OpenAI API 遇到 429 速率限制怎么办?看请求与 Token 限额后安全重试

OpenAI API 返回 429 时,先区分请求与 Token 速率限制,再按响应头限次等待;计费类 429 应转查账单。

OpenAI API 返回 429 时,先看响应正文中的错误码,再看 Retry-After 和速率限制响应头。只有临时请求速率问题适合限次等待后重试;额度、余额或硬支出上限导致的 429,反复重试不会补出额度。

先把错误归类

保存一次失败请求的 HTTP 状态、error.code、请求时间,以及响应头中的 Retry-After 和 x-ratelimit-* 字段。日志里不要写 API 密钥、完整用户输入或 Authorization 头。官方速率限制文档列出 RPM(每分钟请求数)、TPM(每分钟 Token 数)等指标,任一维度先到上限就可能阻止请求;限制还会随模型、组织和项目而变化。

OpenAI API 遇到 429 速率限制怎么办?看请求与 Token 限额后安全重试

观察到的线索 优先动作
error.type 为 rate_limit_error,剩余请求数为 0 降低并发或请求频率,等待请求窗口恢复。
剩余 Token 数不足 缩短输入、控制输出长度或降低并发,等待 Token 窗口恢复。
error.code 为 slow_down 按 Retry-After 放缓增长,再逐步增加请求量。
支出/余额相关错误码 检查平台账单和限额;不做自动无限重试。

例如,假设某次响应头显示剩余请求数为 0、x-ratelimit-reset-requests: 2s,这是演示数据,不是实际账号限额。应至少等窗口恢复后再发下一次请求。若响应带 Retry-After,优先遵守该等待时间。

写一个不会失控的重试流程

  1. 只对已确认的临时限流、slow_down 或暂时过载分支启用重试;先判断操作是否可安全重复。
  2. 设总尝试次数,例如最多 3 次;有 Retry-After 就等待它,没有就逐次增加等待时间并加入少量随机抖动。
  3. 每次失败重新读取错误码和响应头。若变成计费/额度错误,立即停止并提示管理员处理。
  4. 重试仍失败时把任务放入受控队列或返回可解释的失败,不让前端无限循环请求。

如果请求会触发工具写入、付款或其他外部副作用,网络超时后不能盲目重发:先核对副作用是否已经发生,再决定是否重试。仅凭 429 状态码不足以认定可重试,因为官方支出限制说明明确指出,达到组织或项目硬支出上限也可能返回 429。

修复后怎么验证

在业务低流量时用一条短输入测试,确认请求成功,并观察响应头中剩余请求或 Token 是否回升;随后缓慢恢复并发。若短输入仍返回 organization_usage_limit_exceeded、credit_balance_exhausted 或支出限制码,转去排查账户额度。本篇依据 2026 年 10 月 1 日官方资料整理,未读取你的账号限额,具体数值请以自己控制台和响应头为准。

Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/30915.html

赞 (0)
AI小管家的头像AI小管家
OpenAI API 流式输出怎么实现?Python 逐条读取事件并判断完成
上一篇 11小时前
OpenAI API 怎么识别图片内容?传入图片 URL 并核对回答
下一篇 11小时前

相关推荐

联系我们

联系我们

1

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部