Fehler 429: was tun, wenn claude-sonnet-4-5-20250929 fehlschlägt
Ein 429 bedeutet, dass eine Ratenbegrenzung gegriffen hat: Die Anzahl der Anfragen oder Tokens pro Zeitfenster hat das Kontingent Ihres Tarifs überschritten.
429 Too Many Requests ist eine Drosselungsantwort, kein Fehler. Die Anfrage selbst ist gültig, überschreitet aber die für Ihren Tarif erlaubte Anfragerate oder Parallelität. Wiederholen Sie mit Wartezeit im vom Antwortheader vorgegebenen Fenster; der Request-Body muss nicht geändert werden.
claude-sonnet-4-5-20250929 wird von Anthropic bereitgestellt. Alles auf dieser Seite — Ursachen, Lösungen und gemessene Daten — basiert auf dem tatsächlichen Laufzeitverhalten dieses Modells auf der Gatewayschicht.
An diesem Gateway ist die häufigste Ursache: Zu viele parallele Anfragen. Empfohlene erste Maßnahme: Parallelität begrenzen und mit exponentiellem Backoff wiederholen.
Häufige Ursachen
- Zu viele parallele Anfragen
- Kontingent des aktuellen Tarifs erschöpft
- Wiederholung ohne Pause
So beheben Sie es
- Parallelität begrenzen und mit exponentiellem Backoff wiederholen
- Zu einem Tarif mit größerem Kontingent wechseln
- Wiederholte Anfragen zwischenspeichern
Wiederholung mit exponentiellem Backoff
Der folgende Code wiederholt den Aufruf, wenn claude-sonnet-4-5-20250929 429 liefert: bis zu 5 Versuche, mit wachsender Wartezeit und zufälligem Jitter, damit parallele Anfragen nicht gleichzeitig wiederholen. Base-URL und API-Key werden aus Umgebungsvariablen gelesen — nicht hart codieren.
import os, time, random
import requests
BASE = os.getenv("OPENAI_BASE_URL") # e.g. https://<your-gateway>/v1
KEY = os.getenv("OPENAI_API_KEY")
MODEL = 'claude-sonnet-4-5-20250929'
def chat(messages, retries=5):
"""Retry with exponential backoff + jitter."""
for i in range(retries):
try:
r = requests.post(
BASE + "/chat/completions",
headers={"Authorization": "Bearer " + KEY},
json={"model": MODEL, "messages": messages, "stream": True},
timeout=60,
)
if r.status_code == 429 or r.status_code >= 500:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
continue
r.raise_for_status()
return r.json()
except requests.exceptions.Timeout:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
raise RuntimeError("gave up after " + str(retries) + " retries")
print(chat([{"role": "user", "content": "hello"}]))Wichtige Daten zu diesem Modell
| API-Endpunkt | https://api.airai.cc/v1 |
|---|---|
| OpenAI-kompatibel | OpenAI-compatible |
| Anbieter | Anthropic |
|---|---|
| Kontext | 1M |
| Funktionen | Reasoning, Tools, Files, Vision |
| API-Formate | openai, openai-response, openai-response-compact, anthropic, gemini, openai-alpha-search |
| Abrechnungsformel | p * 3 + cr * 0.3 + cc * 3.75 + cc1h * 6 + c * 15 |
Häufige Fragen
Sollte ich bei 429 auf ein Ausweichmodell fallen?
Halten Sie zusätzlich ein Ausweichmodell bereit. Ein Fallback in der Architektur ist verlässlicher als jede Fehlermeldung einzeln zu flicken. Dieses Modell von Anthropic hat mehrere Upstream-Knoten, zwischen denen das Gateway wechseln kann. Halten Sie ein leichteres Ersatzmodell bereit, damit der Hauptfluss nicht abbricht. Legen Sie den Modellnamen in die Konfiguration, dann braucht ein Upstream-Wechsel keine Codeänderung.
Hängt 429 mit der Abrechnung von claude-sonnet-4-5-20250929 zusammen?
Keine Berechnung: Nur tatsächlich erzeugter Output zählt zum Verbrauch. Berechnet wird nur der bereits erzeugte Output, der fehlgeschlagene Teil nicht. Der Eingabepreis liegt bei etwa $3.00 pro Million Tokens. Bei Abrechnung nach p * 3 + cr * 0.3 + cc * 3.75 + cc1h * 6 + c * 15 stammen die Kosten langer Ausgaben vor allem aus Output-Tokens. Prüfen Sie zuerst Guthaben und Rate-Limits in der Konsole, dann den Code. Wenn Sie Kosten nach p * 3 + cr * 0.3 + cc * 3.75 + cc1h * 6 + c * 15 schätzen, rechnen Sie das Retry-Budget mit ein.
Staging ist okay, Produktion liefert 429 — woran kann das liegen?
Tritt es nur in Produktion auf, ist es meist eine Umgebungsdifferenz, kein Modellfehler. Das Modell wird von Anthropic bereitgestellt, der Upstream-Status richtet sich nach den Ankündigungen des Anbieters. Protokollieren Sie bei jedem Fehler die Request-ID — sie hilft mehr als der Statuscode.
Wie viele Retry-Versuche sind sinnvoll?
Business-Code muss meist nicht geändert werden, nur der Aufruftakt. Bei der Abrechnung p * 3 + cr * 0.3 + cc * 3.75 + cc1h * 6 + c * 15 werden fehlgeschlagene Anfragen nicht angerechnet. Setzen Sie die Obergrenze auf 3–5 Versuche und ergänzen Sie Jitter. Wiederholbare Fehler mit exponentiellem Backoff, der Rest sofort als Fehler zurückgeben.
Weitere Fehler bei diesem Modell
- claude-sonnet-4-5-20250929: Fehler timeout — Ursachen und Lösungen
- claude-sonnet-4-5-20250929: Fehler 500 — Ursachen und Lösungen
- claude-sonnet-4-5-20250929: Fehler 502 — Ursachen und Lösungen
- claude-sonnet-4-5-20250929: Fehler 503 — Ursachen und Lösungen
- claude-sonnet-4-5-20250929: Fehler 504 — Ursachen und Lösungen
- claude-sonnet-4-5-20250929: Fehler 401 — Ursachen und Lösungen
- claude-sonnet-4-5-20250929: Fehler 403 — Ursachen und Lösungen
- claude-sonnet-4-5-20250929: Fehler 400 — Ursachen und Lösungen
Andere Modelle mit demselben Fehler
- gpt-5
- claude-opus-5
- gemini-2.5-pro
- deepseek-v4-pro
- grok-4.3
- llama-3.3-70b-instruct
- qvq-max
- qwq-32b
- glm-5
- MiniMax-M3
- kimi-k3
- hy3
- doubao-seed-evolving
- mimo-v2.5
- gpt-4o
- claude-opus-4-6
Daten aktualisiert: 2026-10-10 15:45