Kernleitfäden
Ratenbegrenzung
Ratenbegrenzung
Standardmäßig gelten pro Minute User 1.000, Partner 10.000 und VIP 10.000 Anfragen; die aktuelle Konfiguration kann abweichen. Bei authentifizierten Anfragen gelten diese Limits pro API-Schlüssel. Für öffentliche Endpunkte wie GET /v1/models gelten eigene Limits. Verwenden Sie bei 429 X-RateLimit-Limit und Retry-After statt einer kopierten Tabelle.
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: 8Warten Sie die Sekunden aus Retry-After; fehlt der Header, verwenden Sie exponentiellen Backoff mit Zufallsanteil. Das Beispiel versucht es höchstens viermal, deaktiviert SDK-Wiederholungen und behält das gewählte Modell bei.
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)Begrenzen Sie Parallelität, puffern Sie Lastspitzen und cachen Sie nur sicher wiederverwendbare Ergebnisse. Wiederholen Sie keine Validierungs-, Authentifizierungs-, Berechtigungs- oder Guthabenfehler. Schnellere Modelle erhöhen das Limit nicht. Für Anpassungen senden Sie Konto, erwartetes Volumen und Anwendungsfall an support@tokenlab.sh.