Benutzerhandbuch

API-Protokolle

LMU AI unterstützt drei eingehende Protokolle — Anthropic, OpenAI-kompatibel und Gemini nativ. Eine Tabelle, um die richtige Base URL und den richtigen Endpunkt auszuwählen und Fehler zu vermeiden.

LMU AI unterstützt drei eingehende Protokolle: Anthropic, OpenAI-kompatibel und Gemini nativ v1beta. Jeder Endpunkt verwendet deinen LMU AI sk- API-Schlüssel, und die Modelle, die du tatsächlich aufrufen kannst, werden durch die Gruppe des Schlüssels bestimmt.

Zwei Dinge, die man zuerst auseinanderhalten muss

  • „Welches Protokoll" wird durch den Client, das SDK und den Anwendungsfall bestimmt. Das Anthropic SDK verwendet /v1/messages, das OpenAI SDK verwendet /v1/chat/completions oder /v1/responses, und native Gemini-Bildaufrufe verwenden /v1beta/models/{model}:generateContent.
  • „Welche Modelle du aufrufen kannst" wird durch die Gruppe deines API-Schlüssels bestimmt (das Upstream-Konto hinter deinem Abonnement / Aufladeplan), was eine separate Dimension vom eingehenden Protokoll ist.

Mit anderen Worten: Das falsche Protokoll gibt ein direktes 401 / 404; das richtige Protokoll mit einem Modell außerhalb des Bereichs deiner Gruppe gibt einen Fehler zurück, dass das Modell nicht verfügbar ist.

Der häufigste Fehler kommt vom falschen Protokoll

  • Die Base URL des Anthropic-Protokolls enthält nicht das /v1-Suffix
  • Die SDK-Base-URL des OpenAI-Protokolls enthält üblicherweise schon das /v1-Suffix
  • Das native Gemini-Protokoll verwendet https://api.lmuai.com als Host und ruft den vollständigen /v1beta/...-Pfad auf

Es falsch zu machen verursacht 400 / 401 / 404. Bevor du ein Werkzeug konfigurierst oder Code schreibst, bestätige, welches Protokoll der Client erwartet.


Wähle dein Protokoll auf einen Blick

ProtokollBase URLTypische Werkzeuge
Anthropic-Protokollhttps://api.lmuai.comClaude Code (CLI / Desktop / VS Code-Erweiterung), das offizielle anthropic SDK, Cherry Studio, Kilo Code mit Claude / chinesischen Modellen, jeder Anthropic-kompatible Client
OpenAI-kompatibelhttps://api.lmuai.com/v1Codex CLI, Codex App, Cursor / Cline / Roo Code / OpenCode, das offizielle openai SDK, VS Code-Erweiterungen mit GPT, jeder OpenAI-kompatible Client
Gemini nativ v1betahttps://api.lmuai.comNative Gemini SDK / HTTP-Clients, Gemini Text-zu-Bild und Bild-zu-Bild, Modellliste und generateContent

Alle drei Protokolle verwenden den LMU AI-Schlüssel, der mit sk- beginnt:

  • Anthropic-Protokoll: Authorization: Bearer <YOUR_API_KEY> oder x-api-key: <YOUR_API_KEY>
  • OpenAI-kompatibel: Authorization: Bearer <YOUR_API_KEY>
  • Gemini nativ: x-goog-api-key: <YOUR_API_KEY> empfohlen, Bearer wird ebenfalls akzeptiert

Anthropic-Protokoll

Base URL: https://api.lmuai.com (kein /v1)

Endpunkte:

  • POST /v1/messages — Nachrichtenkonversation
  • POST /v1/messages/count_tokens — Token-Zählung
  • GET /v1/models — Liste der verfügbaren Modelle

Python-SDK-Beispiel:

from anthropic import Anthropic

client = Anthropic(
    base_url="https://api.lmuai.com",
    api_key="sk-xxxxxxxx",
)

resp = client.messages.create(
    model="claude-sonnet-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Hello"}],
)
print(resp.content[0].text)

curl-Beispiel:

curl -X POST https://api.lmuai.com/v1/messages \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5",
    "max_tokens": 1024,
    "messages": [{"role":"user","content":"Hello"}]
  }'

Warum ist die SDK-base_url ohne /v1, aber curl mit /v1?

Die Konvention der base_url des offiziellen Anthropic SDK ist, /v1 wegzulassen; das SDK hängt intern Pfade wie /v1/messages an. Wenn du curl von Hand schreibst, schreibst du den vollständigen Pfad /v1/messages. Beide zeigen auf denselben Endpunkt.


OpenAI-Protokoll

Base URL: https://api.lmuai.com/v1 (mit /v1)

Endpunkte:

  • POST /chat/completions — Standard Chat Completions API
  • POST /responses — OpenAI Responses API (einschließlich der /responses/{id}-Unterpfade)
  • POST /images/generations, POST /images/edits — Bildgenerierung / -bearbeitung

Python-SDK-Beispiel:

from openai import OpenAI

client = OpenAI(
    base_url="https://api.lmuai.com/v1",
    api_key="sk-xxxxxxxx",
)

resp = client.chat.completions.create(
    model="gpt-5.6-sol",
    messages=[{"role": "user", "content": "Hello"}],
)
print(resp.choices[0].message.content)

curl-Beispiel:

curl -X POST https://api.lmuai.com/v1/chat/completions \
  -H "Authorization: Bearer sk-xxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.6-sol",
    "messages": [{"role":"user","content":"Hello"}]
  }'

Natives Gemini-Protokoll

Base URL: https://api.lmuai.com

Haupt-Endpunkte:

  • GET /v1beta/models — native Gemini-Modelle auflisten
  • GET /v1beta/models/{model} — ein bestimmtes Modell abfragen
  • POST /v1beta/models/{model}:generateContent — Textgenerierung, Text-zu-Bild und Bild-zu-Bild
  • POST /v1beta/models/{model}:streamGenerateContent?alt=sse — Streaming-Generierung

Authentifizierung:

x-goog-api-key: YOUR_API_KEY

Minimales Text-zu-Bild-Beispiel:

curl --request POST \
  'https://api.lmuai.com/v1beta/models/gemini-3.1-flash-image:generateContent' \
  -H 'x-goog-api-key: YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{
    "contents": [{
      "role": "user",
      "parts": [{"text": "an orange cat wearing an astronaut helmet"}]
    }],
    "generationConfig": {
      "responseModalities": ["TEXT", "IMAGE"],
      "imageConfig": {"aspectRatio": "1:1", "imageSize": "1K"}
    }
  }'

Der Gemini-Bildendpunkt ist nicht /v1/chat/completions

Gemini-Bildmodelle verwenden das native generateContent. Für vollständige Details zu Text-zu-Bild, Bild-zu-Bild, 1K / 2K / 4K und Base64-Parsing siehe die Gemini Image API.

Für GPT-Bildmodelle siehe die GPT Image API, und für Grok-Bildmodelle siehe die Grok Image API. Für große Offline-Gemini-Aufträge siehe die Gemini Batch Image API.


Protokoll und verfügbare Modelle sind zwei verschiedene Dinge

Welche Modelle dein Schlüssel aufrufen kann, wird vollständig durch das auf seiner Gruppe eingehängte Upstream-Konto bestimmt, unabhängig davon, mit welchem Protokoll du aufrufst:

Der Upstream auf deiner GruppeDie Modelle, die du tatsächlich aufrufen kannst
Nur OpenAI-Kontonur GPT-Serie
Nur Claude-Kontonur Claude-Serie (selbst wenn du mit dem OpenAI-Protokoll aufrufst, übersetzt das Backend das Protokoll, aber der Modellbereich bleibt unverändert)
Nur Upstream für chinesische Modelle (z. B. GLM / Kimi)nur die entsprechenden chinesischen Modelle
Im Backend konfiguriertes Modell-Routing (Multi-Upstream-Gruppe)nach Modellname an verschiedene Upstreams geroutet, kann marken­übergreifend sein — der genaue Bereich hängt von der Gruppenkonfiguration ab

Also:

  • Die Wahl des Anthropic-, OpenAI-kompatiblen oder nativen Gemini-Protokolls bestimmt das eingehende Anforderungsformat; der tatsächliche Modellbereich wird weiterhin durch die Gruppe des API-Schlüssels bestimmt.
  • Um zu sehen, welche Modelle dein aktueller Schlüssel aufrufen kann, prüfe die Modellliste der Gruppe auf der Detailseite API Keys oder auf der Seite Verfügbare Modelle in der Konsole.

Über die Claude Max-Gruppe

Die Claude Max-Gruppe unterstützt nur das Anthropic-Protokoll

Die Claude Max-Gruppe ist nur für Claude Code, daher kann sie nur das Anthropic-Protokoll verwenden (https://api.lmuai.com).

Wenn du einen Schlüssel aus einer Gruppe des Claude Max-Plans verwendest:

  • ✅ Er funktioniert in Claude Code (CLI / Desktop / VS Code-Erweiterung)
  • ❌ Er kann nicht mit Codex CLI, Cursor, Cherry Studio oder einem anderen Werkzeug verwendet werden, das das OpenAI-Protokoll verwendet
  • ❌ Er kann nicht als https://api.lmuai.com/v1 eingegeben werden

Um ein Werkzeug des OpenAI-Protokolls zu verwenden, wechsle zu einem Schlüssel aus einer Pay-as-you-go-/regulären Abonnementgruppe (die genau verfügbaren Modelle hängen weiterhin von der gekauften Plangruppe ab).


Fehlerbehebung

SymptomÜbliche UrsacheWas zu tun ist
401 UnauthorizedBase URL verwendet das falsche Protokoll / Tippfehler im Schlüssel / IDE nicht neu gestartetPrüfe, ob die Base URL zum Protokoll des Werkzeugs passt; starte die IDE neu, um die Konfiguration neu zu laden
404 Not FoundURL des OpenAI-Protokolls ohne /v1, Anthropic-URL fälschlicherweise mit /v1 oder Gemini-Pfad ohne /v1beta/models/...Prüfe die Base URL und den vollständigen Endpunkt erneut anhand der obigen Tabelle
Modell nicht verfügbar / No available accountsEin Modell außerhalb des Bereichs deiner Gruppe aufgerufen (z. B. GPT mit einer Claude Max-Gruppe aufrufen)Bestätige die Modelle, die deine Gruppe tatsächlich enthält, auf der Seite Verfügbare Modelle, oder wechsle zu einer Gruppe, die das Zielmodell enthält
429 Too Many RequestsTägliches Kontingent erschöpftSiehe die FAQ

Für weitere Fehlerbehebung siehe die FAQ.


Nächste Schritte

Sobald du das Protokoll und die Base URL richtig hast, wähle das gewünschte Werkzeug:

Zuletzt aktualisiert:

Auf dieser Seite