コアガイド
レート制限
レート制限
既定の毎分リクエスト数は User 1,000、Partner 10,000、VIP 10,000 ですが、設定は変更される場合があります。認証が必要なリクエストには API キー単位でこの制限が適用されます。GET /v1/models などの公開エンドポイントには別の制限があります。表のコピーではなく、429 の X-RateLimit-Limit と Retry-After を確認してください。
429 / Retry-After
{
"error": {
"message": "Rate limit exceeded. Please retry later.",
"type": "rate_limit_exceeded",
"code": "rate_limit_exceeded",
"retryable": true,
"retry_after": 8
}
}Retry-After: 8Retry-After の秒数を待ち、なければランダムな揺らぎを含む指数バックオフを使います。次の例は最大 4 回で、SDK の自動再試行を無効にし、指定されたモデルを維持します。
import random
import time
from openai import RateLimitError
def chat_with_rate_limit_retry(client, model, messages, attempts=4):
for attempt in range(attempts):
try:
return client.with_options(max_retries=0).chat.completions.create(
model=model,
messages=messages,
)
except RateLimitError as exc:
if attempt == attempts - 1:
raise
header = exc.response.headers.get("Retry-After")
wait = float(header) if header else min(30, 2 ** attempt + random.random())
time.sleep(wait)同時実行を制限し、集中する要求をキューに入れ、安全に再利用できる結果だけをキャッシュします。認証、権限、残高、検証エラーは再試行しません。高速なモデルでも要求上限は増えません。変更の相談はアカウント、想定量、用途を添えて support@tokenlab.sh へ。