速率限制

速率限制用于保护 API 并确保所有用户的公平使用。

处理速率限制

当您超出速率限制时,API 会返回 429 状态码和 rate_limit_error

{
    "error": {
        "code": 429,
        "message": "Rate limit exceeded",
        "type": "rate_limit_error",
        "fallback_suggestion": "retry after 60 seconds"
    }
}

推荐的重试策略

收到 429 响应时,建议实现指数退避重试:

import time
import requests

def make_request_with_retry(url, headers, payload, max_retries=3):
    for attempt in range(max_retries):
        response = requests.post(url, headers=headers, json=payload)

        if response.status_code == 429:
            wait_time = 2 ** attempt * 30  # 30s, 60s, 120s
            print(f"Rate limited. Retrying in {wait_time}s...")
            time.sleep(wait_time)
            continue

        return response

    raise Exception("Max retries exceeded")

最佳实践

  • 429 响应实现指数退避重试
  • 使用 callback_url(webhooks)代替频繁轮询,以减少请求量
  • 分散发送生成请求,避免集中突发
  • 通过 EvoLink 控制台 监控您的积分使用情况

需要更高的限额?

联系我们的销售团队,获取自定义速率限制和专属基础设施。

相关文档