HappyHorse 1.0 ist jetzt liveJetzt ausprobieren
Model Not Found bei OpenAI-kompatiblen APIs: Ursachen, Lösungen und Debug-Checkliste
guide

Model Not Found bei OpenAI-kompatiblen APIs: Ursachen, Lösungen und Debug-Checkliste

EvoLink Team
EvoLink Team
Product Team
13. Mai 2026
8 Min. Lesezeit

Sie haben Ihre Base-URL auf einen OpenAI-kompatiblen Anbieter umgestellt, eine Anfrage gesendet und folgende Antwort erhalten:

{
  "error": {
    "message": "The model `gpt-4o` does not exist or you do not have access to it.",
    "type": "invalid_request_error",
    "code": "model_not_found"
  }
}

Dies ist einer der häufigsten Fehler beim Wechsel zwischen OpenAI-kompatiblen API-Anbietern. Das Anfrageformat ist kompatibel — aber die Model-ID ist es nicht.

„OpenAI-kompatibel" bedeutet, dass das Anfrageformat funktioniert. Es bedeutet nicht, dass jede Model-ID bei jedem Anbieter identisch ist.

Kurzfassung

  • „Model not found" bedeutet in der Regel, dass die gesendete Model-ID nicht mit der erwarteten ID des Anbieters übereinstimmt.
  • OpenAI-kompatibel ≠ gleiche Model-IDs. Jeder Anbieter hat seine eigene Benennung.
  • Prüfen Sie immer: (1) Base-URL, (2) Model-ID, (3) API-Key-Geltungsbereich, (4) Modellverfügbarkeit.
  • Nutzen Sie die folgende Debug-Matrix, um die Ursache in unter 5 Minuten einzugrenzen.

Warum dieser Fehler auftritt

„OpenAI-kompatibel" hat sich als Branchenkonvention etabliert. Viele Anbieter (OpenRouter, EvoLink, LiteLLM, Portkey, Together AI, Fireworks usw.) akzeptieren dasselbe POST /v1/chat/completions-Anfrageformat, das OpenAI verwendet.

Die Kompatibilität endet jedoch beim Anfrageformat. Die Model-IDs sind anbieterspezifisch:

AnbieterBeispiel-Model-ID für GPT-4oBeispiel-Model-ID für Claude Sonnet
OpenAIgpt-4oN/A (nicht verfügbar)
OpenRouteropenai/gpt-4oanthropic/claude-sonnet-4-20250514
EvoLinkgpt-4o oder openai/gpt-4oclaude-sonnet-4-20250514
Together AIN/A (nicht alle Modelle)N/A
LiteLLMopenai/gpt-4oanthropic/claude-sonnet-4-20250514
Wenn Sie die base_url wechseln, aber dieselbe Model-ID beibehalten, erkennt der neue Anbieter sie nicht — und gibt „model not found" zurück.

Debug-Matrix: Ursache in 5 Minuten eingrenzen

Arbeiten Sie diese Checkliste der Reihe nach ab. Stoppen Sie, sobald Sie die Abweichung gefunden haben.

PrüfpunktWas zu überprüfen istWie zu überprüfenHäufiger Fehler
1. Base-URLZeigt die Base-URL auf den richtigen Anbieter?base_url vor der Anfrage ausgeben oder loggenVergessen, die Base-URL zu ändern, oder eine veraltete Umgebungsvariable verwendet
2. Model-ID-FormatStimmt die Model-ID mit der Benennung des Anbieters überein?Modellliste oder Dokumentation des Anbieters prüfengpt-4o verwendet, obwohl der Anbieter openai/gpt-4o erwartet (oder umgekehrt)
3. ModellverfügbarkeitIst das Modell bei diesem Anbieter tatsächlich verfügbar?Modellkatalog des Anbieters prüfenAnnahme, dass alle Anbieter alle Modelle haben
4. API-Key-GeltungsbereichHat Ihr API-Key Zugriff auf dieses Modell?Ein bekanntermaßen funktionierendes Modell mit demselben Key testenKey ist gültig, aber auf bestimmte Modelle oder Tarife beschränkt
5. Modell-DeprecationIst die Model-ID noch aktiv?Changelog oder Ankündigungen des Anbieters prüfenModell wurde umbenannt, versioniert oder eingestellt
6. Tippfehler oder Groß-/KleinschreibungIst die Model-ID exakt richtig geschrieben?Zeichen für Zeichen vergleichengpt-4o vs. gpt4o vs. GPT-4o
7. Region oder TarifHat Ihr Konto/Ihre Region Zugriff?Dokumentation des Anbieters zur regionalen Verfügbarkeit prüfenModell in den USA verfügbar, aber nicht in Ihrer Region

Die häufigsten Abweichungen

Abweichung 1: Model-ID nach dem Wechsel der Base-URL nicht geändert

Dies ist die mit Abstand häufigste Ursache. Sie migrieren von OpenAI zu einem anderen Anbieter:

# Vorher: direkt OpenAI
client = OpenAI(api_key="sk-...")

# Nachher: zu einem anderen Anbieter gewechselt, aber dieselbe Model-ID beibehalten
client = OpenAI(
    api_key="your-provider-key",
    base_url="https://api.another-provider.com/v1"  # Geändert
)

response = client.chat.completions.create(
    model="gpt-4o",  # ← Diese Model-ID funktioniert möglicherweise nicht beim neuen Anbieter
    messages=[{"role": "user", "content": "Hello"}]
)
Lösung: Prüfen Sie die Modellliste des Anbieters und verwenden Sie dessen Model-ID-Format.

Abweichung 2: Anbieter verwendet Namespace-basierte Model-IDs

Einige Anbieter versehen Model-IDs mit dem ursprünglichen Herstellerpräfix:

# OpenAI direkt
model = "gpt-4o"

# OpenRouter
model = "openai/gpt-4o"

# Manche Anbieter verwenden eigene Aliase
model = "gpt-4o-2024-08-06"
Lösung: Prüfen Sie immer die Dokumentation des Anbieters auf die exakte Model-ID-Zeichenkette.

Abweichung 3: Modell bei diesem Anbieter nicht verfügbar

Nicht jeder OpenAI-kompatible Anbieter unterstützt jedes Modell:

  • Ein Anbieter unterstützt möglicherweise Claude, aber keine GPT-Modelle
  • Ein Anbieter unterstützt möglicherweise Textmodelle, aber keine Bild- oder Videomodelle
  • Ein neu veröffentlichtes Modell ist möglicherweise nicht überall am ersten Tag verfügbar
Lösung: Prüfen Sie den Modellkatalog des Anbieters vor dem Wechsel.

Abweichung 4: Modell eingestellt oder umbenannt

KI-Modelle werden häufig aktualisiert. Eine Model-ID, die letzten Monat funktioniert hat, kann eingestellt sein:

gpt-4-turbo → kann je nach Anbieter weiterleiten oder fehlschlagen
claude-3-opus-20240229 → ältere Version, möglicherweise ersetzt
Lösung: Prüfen Sie das Changelog des Anbieters und verwenden Sie die aktuelle Model-ID.

So überprüfen Sie die richtige Model-ID

Option A: Models-Endpunkt aufrufen

Die meisten OpenAI-kompatiblen Anbieter stellen einen GET /v1/models-Endpunkt bereit:
curl https://api.your-provider.com/v1/models \
  -H "Authorization: Bearer YOUR_API_KEY"

Dies gibt die Liste der für Ihr Konto verfügbaren Modelle zurück. Suchen Sie in der Antwort nach Ihrem Zielmodell.

Option B: Dokumentation des Anbieters prüfen

Jeder seriöse Anbieter hat eine Modelllistenseite. Überprüfen Sie vor dem Wechsel:

  1. Die exakte Model-ID-Zeichenkette
  2. Ob ein Namespace-Präfix erforderlich ist
  3. Ob das Modell in Ihrem Tarif verfügbar ist
  4. Ob das Modell in Ihrer Region verfügbar ist

Option C: Minimale Testanfrage senden

curl https://api.your-provider.com/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "your-model-id",
    "messages": [{"role": "user", "content": "test"}],
    "max_tokens": 5
  }'

Wenn eine gültige Antwort zurückkommt, ist Ihre Model-ID korrekt. Wenn „model not found" zurückgegeben wird, verwenden Sie die vom Anbieter empfohlene Model-ID.

Robuste Modellauswahl aufbauen

In Produktionssystemen sollten Model-ID-Abweichungen keine harten Fehler verursachen. Folgende Muster helfen:

Muster 1: Model-ID-Zuordnungsschicht

Pflegen Sie eine Zuordnung zwischen Ihren internen Modellnamen und anbieterspezifischen IDs:

MODEL_MAP = {
    "fast-chat": {
        "openai": "gpt-4o-mini",
        "openrouter": "openai/gpt-4o-mini",
        "evolink": "gpt-4o-mini",
    },
    "strong-chat": {
        "openai": "gpt-4o",
        "openrouter": "openai/gpt-4o",
        "evolink": "gpt-4o",
    },
    "reasoning": {
        "openai": "o3",
        "openrouter": "openai/o3",
        "evolink": "o3",
    }
}

def get_model_id(capability: str, provider: str) -> str:
    return MODEL_MAP[capability][provider]

Muster 2: Einheitliche API mit normalisierten Model-IDs verwenden

Anstatt eine eigene Zuordnungsschicht zu pflegen, können Sie ein Gateway verwenden, das standardisierte Model-IDs akzeptiert und das Provider-Routing intern übernimmt.

Mit EvoLink können Sie vertraute Model-IDs verwenden, ohne sich um anbieterspezifische Benennungen kümmern zu müssen:

from openai import OpenAI

client = OpenAI(
    api_key="your-evolink-key",
    base_url="https://api.evolink.ai/v1"
)

# Standard-Model-IDs verwenden — EvoLink übernimmt die Zuordnung
response = client.chat.completions.create(
    model="gpt-4o",
    messages=[{"role": "user", "content": "Hello"}]
)

Oder lassen Sie den Smart Router das beste Modell für Ihre Arbeitslast wählen:

response = client.chat.completions.create(
    model="evolink/auto",
    messages=[{"role": "user", "content": "Hello"}]
)
Damit entfällt das Model-ID-Zuordnungsproblem vollständig für unterstützte Modelle. Prüfen Sie den EvoLink-Modellkatalog für verfügbare Modelle.

Muster 3: Model-IDs beim Start validieren

Warten Sie nicht auf eine Benutzeranfrage, um zu entdecken, dass eine Model-ID falsch ist:

async def validate_models_on_startup(client, required_models: list[str]):
    """Ruft /v1/models beim Start auf und überprüft, ob alle erforderlichen Modelle existieren."""
    available = await client.models.list()
    available_ids = {m.id for m in available.data}

    for model in required_models:
        if model not in available_ids:
            raise RuntimeError(
                f"Model '{model}' not found on provider. "
                f"Available: {sorted(available_ids)}"
            )

Kurzreferenz: OpenAI-kompatibel heißt nicht identisch

Was kompatibel istWas NICHT garantiert identisch ist
Anfrageformat (/v1/chat/completions)Model-IDs
AntwortstrukturVerfügbare Modelle
Authentifizierungsmuster (Bearer-Token)Rate Limits und Kontingente
Streaming-Format (SSE)Fehlercodes und -meldungen
Grundlegende Parameter (messages, temperature)Erweiterte Parameter und Erweiterungen

Dieser Unterschied ist die Hauptursache der meisten „model not found"-Fehler beim Anbieterwechsel.

Verwandte Artikel

Browse EvoLink Model Catalog

FAQ

Warum funktioniert „gpt-4o" bei OpenAI, aber nicht bei meinem neuen Anbieter?

Weil sich „OpenAI-kompatibel" auf das Anfrageformat bezieht, nicht auf den Modellkatalog. Jeder Anbieter hat seine eigenen Model-IDs. Manche akzeptieren gpt-4o direkt, andere erfordern ein Präfix wie openai/gpt-4o, und einige bieten dieses Modell möglicherweise gar nicht an.

Wie finde ich die richtige Model-ID für meinen Anbieter?

Prüfen Sie die Modelllistenseite des Anbieters oder rufen Sie dessen GET /v1/models-Endpunkt auf. Die Model-ID muss exakt übereinstimmen — einschließlich Groß-/Kleinschreibung, Versionssuffixen und allen Namespace-Präfixen.

Kann ich dieselbe Model-ID bei allen OpenAI-kompatiblen Anbietern verwenden?

Nicht zuverlässig. Während einige Anbieter dieselben IDs wie OpenAI akzeptieren, verwenden viele andere Namenskonventionen. Pflegen Sie entweder eine Zuordnungsschicht oder verwenden Sie ein Gateway wie EvoLink, das Model-IDs für Sie normalisiert.

Was, wenn die Model-ID gestern noch funktioniert hat, aber heute nicht mehr?

Das Modell wurde möglicherweise eingestellt, umbenannt oder aus Ihrem Tarif entfernt. Prüfen Sie das Changelog und die Ankündigungen des Anbieters. Der Modell-Lebenszyklus ist bei KI schneller als bei herkömmlichen APIs.

Ist „model not found" immer ein Model-ID-Problem?

Meistens, aber nicht immer. Es kann auch bedeuten: (1) Ihr API-Key hat keinen Zugriff auf dieses Modell, (2) das Modell ist in Ihrer Region nicht verfügbar, oder (3) das Modell erfordert einen höheren Abonnementtarif.

Wie verhindere ich Model-Not-Found-Fehler in der Produktion?

Drei Strategien: (1) Model-IDs beim Anwendungsstart validieren, (2) eine Model-ID-Zuordnungsschicht pflegen oder ein normalisierendes Gateway verwenden, (3) Fallback-Logik implementieren, die ein alternatives Modell versucht, wenn das primäre „not found" zurückgibt.

Bereit, Ihre KI-Kosten um 89 % zu senken?

Starten Sie noch heute mit EvoLink und erleben Sie die Vorteile intelligenter API-Routing.