先讀懂 429 響應頭

標準實現會在響應頭裏給出 retry-after(建議等待秒數)與 x-ratelimit-remaining(剩餘額度)。看到 429 先看這兩個頭,大部分問題不用改代碼。

增長趨勢
增長趨勢 · 琥珀 AI 情報局配圖

重試要用指數退避

最差的做法是立即原樣重發——只會把限流窗口越撞越死。正確做法:指數退避 + 抖動,比如第 1 次等 1 秒、第 2 次 2 秒、第 3 次 4 秒,每次疊加隨機偏移,重試上限 3-5 次。主流 SDK 打開 max_retries 即可。

並發是隱形殺手

單條請求沒問題、批量跑就 429,多半是並發太高。用信號量或隊列把並發壓到中轉站配額之內(新手建議從 3-5 並發起步),批處理場景再加任務間隔。

還是不行?按這個順序查

  • 是否免費額度耗盡:控制臺看餘額與用量明細
  • 是否該模型單獨限流:換個便宜模型試試,能通就是模型級配額問題
  • 是否 IP 被限:換網絡出口復測

照這個順序排,95% 的 429 都能定位到原因。