AI AI Club
← 返回文章列表

报错 429 Too Many Requests 怎么彻底解决?指数退避重试算法实现

高频提问接口瞬间报 429 崩溃?详细教学在 Python/Node.js 中编写 Exponential Backoff 指数退避重试逻辑,优雅化解流量高峰。

一、429 报错的触发机理

HTTP 429 明确告知客户端当前请求已经突破了配置的 RPM(每分钟请求数)或 TPM 阈值。
如果在收到 429 时简单粗暴地立即死循环重试,只会加剧服务器的拒绝程度。

二、标准指数退避重试(Exponential Backoff)Python 代码

import time, random
def call_gemini_with_retry(prompt, max_retries=5):
for i in range(max_retries):
try:
return model.generate_content(prompt)
except Exception as e:
if "429" in str(e) and i < max_retries - 1:
sleep_time = (2 i) + random.uniform(0, 1)
time.sleep(sleep_time)
else:
raise e
通过动态增加重试等待间隔,能平滑吸收瞬时突发流量,使业务调用成功率直达 99.9%。

联系我们

会员开通、订单问题或合作咨询,欢迎联系。

QQ1192214187
邮箱winky20000401@gmail.com