Ratenlimits
Die Ratenlimits von OfoxAI gewährleisten die Plattformstabilität. Hier erfahren Sie die Limitregeln und wie Sie Ihre Aufrufstrategie optimieren.
Standardlimits
OfoxAI rechnet nutzungsbasiert ab. Alle Benutzer teilen einheitliche Ratenlimits:
| Limit | Kontingent |
|---|---|
| RPM (Anfragen/Minute) | 200 |
| TPM (Token/Minute) | Unbegrenzt |
Für ein höheres RPM-Kontingent wenden Sie sich bitte an den OfoxAI-Support .
Rate Limit Header
Jede API-Antwort enthält Ratenlimit-Informationen:
x-ratelimit-limit-requests: 200
x-ratelimit-remaining-requests: 195
x-ratelimit-reset-requests: 12s| Header | Beschreibung |
|---|---|
x-ratelimit-limit-requests | RPM-Limit |
x-ratelimit-remaining-requests | Verbleibende Anfragen |
x-ratelimit-reset-requests | Zeit bis zum Zurücksetzen des Limits |
429-Fehlerbehandlung
Beim Erreichen des Ratenlimits gibt die API 429 Too Many Requests zurück:
from openai import RateLimitError
import time
try:
response = client.chat.completions.create(...)
except RateLimitError as e:
retry_after = float(e.response.headers.get("retry-after", 1))
print(f"Ratenlimit erreicht, warte {retry_after}s...")
time.sleep(retry_after)Optimierungsstrategien
1. Prompt Caching verwenden
Für wiederkehrende System-Prompts kann Caching den Token-Verbrauch reduzieren:
response = client.chat.completions.create(
model="openai/gpt-4o",
messages=[
# Längere System-Prompts werden automatisch gecacht
{"role": "system", "content": "Sie sind ein professioneller... (langer Text hier ausgelassen)"},
{"role": "user", "content": "Benutzerfrage"}
]
)Weitere Informationen unter Prompt-Caching.
2. Batch-Verarbeitung
Fassen Sie mehrere kurze Anfragen zu einer zusammen:
# ❌ Nicht empfohlen: Separate Anfrage für jede Frage
for question in questions:
client.chat.completions.create(messages=[{"role": "user", "content": question}])
# ✅ Empfohlen: Zu einer Anfrage zusammenfassen
combined = "\n".join(f"{i+1}. {q}" for i, q in enumerate(questions))
client.chat.completions.create(
messages=[{"role": "user", "content": f"Bitte beantworten Sie die folgenden Fragen der Reihe nach:\n{combined}"}]
)3. Geeignetes Modell wählen
| Szenario | Empfohlenes Modell | Begründung |
|---|---|---|
| Einfache Dialoge | openai/gpt-4o-mini | Schnell, Token-sparend |
| Komplexes Reasoning | openai/gpt-4o | Hochwertige Ausgabe |
| Codegenerierung | anthropic/claude-sonnet-4.5 | Starke Codefähigkeiten |
| Lange Texte | google/gemini-3-flash-preview | Großes Kontextfenster, gutes Preis-Leistungs-Verhältnis |
4. max_tokens steuern
Setzen Sie ein sinnvolles max_tokens-Limit, um unnötigen Token-Verbrauch zu vermeiden:
response = client.chat.completions.create(
model="openai/gpt-4o",
messages=[{"role": "user", "content": "Fassen Sie es in einem Satz zusammen"}],
max_tokens=100 # Ausgabelänge begrenzen
)5. Modell-Fallback nutzen
Bei Erreichen des Limits für das primäre Modell automatisch auf Alternativen wechseln:
response = client.chat.completions.create(
model="openai/gpt-4o",
messages=[...],
extra_body={
"provider": {
"fallback": ["anthropic/claude-sonnet-4.5", "google/gemini-3-flash-preview"]
}
}
)Weitere Informationen unter Failover.