Skip to Content

Fallback

provider.fallback listet Ersatzmodelle auf, die der Reihe nach versucht werden, wenn das Hauptmodell upstream scheitert.

Konfiguration

fallback erwartet ein Array von Modell-IDs und steht auf derselben Ebene wie type unter provider. Höchstens 3 Modelle; darüber hinaus liefert die Anfrage 400.

Terminal
curl https://api.ofox.run/v1/chat/completions \ -H "Authorization: Bearer $OFOX_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "anthropic/claude-sonnet-5", "messages": [{ "role": "user", "content": "..." }], "extra_body": { "provider": { "fallback": ["openai/gpt-5.5", "google/gemini-2.5-pro"] } } }'

Bei den offiziellen OpenAI-SDKs muss extra_body als wörtlicher Schlüssel im Request-Body vorhanden sein. Das TypeScript-SDK sendet es so, wie es im Parameterobjekt steht. Das Argument extra_body= des Python-SDK verschmilzt seinen Inhalt mit der obersten Ebene des Bodys; der Schlüssel muss dort also eine Ebene tiefer verschachtelt oder stattdessen als Request-Header übergeben werden.

Was einen Fallback auslöst

Ein Fallback deckt nur Fehler ab, die auftreten, nachdem das Routing einen Kanal gewählt hat:

SituationVerhalten
Der Upstream-Anbieter liefert einen FehlerFallback — die gelisteten Modelle werden der Reihe nach versucht, der erste Erfolg wird zurückgegeben
Das Routing selbst scheitert (Modell existiert nicht, oder der festgelegte Anbieter stellt es nicht bereit)Kein Fallback — die Anfrage endet sofort

Die zweite Zeile sollte man deutlich aussprechen: provider.type auf einen Anbieter zu setzen, der das Modell nicht bereitstellt, liefert 400 provider_type_unavailable, und ein nicht existierendes Modell liefert 404 model_not_found. Beides erreicht die Fallback-Liste nicht. Welche Upstream-Fehler tatsächlich einen Fallback auslösen, richtet sich nach dem Verhalten des Gateways und nicht nach einer festen Liste.

Kombination mit einem festgelegten Anbieter

fallback und type lassen sich gemeinsam senden: type schränkt ein, wo das Hauptmodell läuft, fallback deckt ab, was passiert, wenn es scheitert:

{ "model": "anthropic/claude-sonnet-5", "messages": [{ "role": "user", "content": "..." }], "extra_body": { "provider": { "type": "bedrock", "fallback": ["openai/gpt-5.5"] } } }

Vollständige Feldreferenz unter Provider-Routing.

Häufige Fehler

error.typeAuslöser
invalid_request_errorDie fallback-Liste enthält mehr als 3 Modelle.

Best Practices

  1. Ersatzmodelle mit vergleichbarer Leistungsfähigkeit wählen — damit die Ausgabequalität nach einem Fallback gleich bleibt.
  2. Herstellerübergreifend wählen — Modelle eines Herstellers fallen häufig gemeinsam aus.
  3. Die Häufigkeit beobachten — häufige Fallbacks sind ein Zeichen, das Hauptmodell zu wechseln.
Last updated on