Responses API oder Chat Completions
Vergleichen Sie Anfrageformat, Streaming, Tools und Anbieterkompatibilität, bevor Sie sich für Responses API oder Chat Completions entscheiden.
Responses API und Chat Completions senden beide Eingaben an Sprachmodelle, strukturieren Eingabe, Ausgabe, Tools und Streaming jedoch unterschiedlich. Entscheidend ist der Vertrag zwischen Client und Modell – nicht die Annahme, der neuere Endpunkt funktioniere automatisch bei jedem Anbieter.
Als kurze Faustregel gilt:
- Verwenden Sie die Responses API für Coding-Agenten und Anwendungen, die bereits Responses-Items, Tool-Events und den Responses-Streaming-Ablauf erwarten.
- Verwenden Sie Chat Completions für breit kompatible Chat-Clients und Anbieterfamilien, deren OpenAI-Format als unverändertes Chat-Completions-Passthrough bereitsteht.
Prüfen Sie das unterstützte Format des Modells stets unter Modelle & Preise.
Protokolle im Vergleich
| Frage | Responses API | Chat Completions |
|---|---|---|
| Primäre Eingabe | input und typisierte Items | Ein messages-Array |
| Ausgabemodell | Typisierte Ausgabe-Items und Events | Assistant-Nachrichten, Choices und Deltas |
| Streaming | Responses-Eventstream | Chat-Completions-Chunks |
| Tool-Aktivität | Typisierte Tool-Call- und Tool-Output-Items | Tool-Aufrufe an Assistant-Nachrichten |
| Typischer Einsatz | Agenten, Coding-Tools und Responses-native Anwendungen | Chat-Clients und weit verbreitete OpenAI-kompatible Anbieter |
| Modellportabilität | Nur für Responses geprüfte Modelle | Nur für Chat Completions geprüfte Modelle |
Die Tabelle beschreibt den Wire-Vertrag. Sie besagt nicht, dass Modelflare jede Anbieterfunktion zwischen beiden Formaten umwandelt.
Wann die Responses API besser passt
Wählen Sie /v1/responses, wenn der Client einen Modelllauf als Folge typisierter Items behandelt und nicht als einzelne Assistant-Nachricht. Das ist bei Coding-Agenten üblich, die sichtbaren Text, Reasoning-Zusammenfassungen, Funktionsargumente, benutzerdefinierte Tool-Eingaben und weitere Events unterscheiden müssen.
Ein minimaler Aufruf:
curl -sS https://modelflare.dev/v1/responses \
-H "Authorization: Bearer $MODELFLARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.6-sol",
"input": "Nenne die drei Prüfungen vor einer API-Migration.",
"stream": true
}'
Validieren Sie Responses-Streaming durchgängig. Ein Client, der eine Verbindung aufbauen kann, aber nur Chat-Completions-Chunks versteht, kann erfolgreich verbinden und dennoch keine verwertbare Ausgabe anzeigen.
Wann Chat Completions die sicherere Wahl ist
Wählen Sie /v1/chat/completions, wenn die Anwendung auf system-, user-, assistant- und tool-Nachrichten basiert oder der Anbieter ausdrücklich einen OpenAI-kompatiblen Chat-Completions-Endpunkt dokumentiert.
curl -sS https://modelflare.dev/v1/chat/completions \
-H "Authorization: Bearer $MODELFLARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "YOUR_CHAT_MODEL",
"messages": [
{"role": "system", "content": "Antworte knapp."},
{"role": "user", "content": "Was sollte ein API-Health-Check prüfen?"}
],
"stream": true
}'
Für Nicht-OpenAI-Anbieter kann Modelflare Chat Completions unverändert durchreichen, damit private Felder wie anbieterspezifische Reasoning- oder Suchoptionen erhalten bleiben. Diese präzise Zusage ist bewusst enger als eine pauschale Responses-Kompatibilität.
Nicht allein nach dem Modellnamen entscheiden
Drei Prüfungen sind voneinander zu trennen:
- Der API-Schlüssel kann auf das Modell zugreifen. Das hängt vom Schlüssel und den verfügbaren Gruppen ab.
- Das Modell unterstützt den Endpunkt. Ein Eintrag unter /v1/models ist keine Freigabe für beide Formate.
- Der Client versteht den Stream. Responses-Events und Chat-Completions-Chunks sind unterschiedliche Client-Verträge.
Scheitert eine dieser Prüfungen, kann ein bloßer Pfadwechsel aus einem klaren Kompatibilitätsfehler eine leere oder unvollständig dargestellte Antwort machen.
Tools und strukturierte Ausgabe migrieren
Vor der Umstellung einer echten Integration:
- Tool-Definitionsschema des Clients vergleichen;
- Rückgabe von Tool-Call-IDs und Tool-Ergebnissen prüfen;
- explizite optionale Werte wie 0 oder false bewahren;
- private Anbieterfelder identifizieren, die unverändert passieren müssen;
- reine Tool-Antworten ohne sichtbaren Text testen;
- Abschluss- und Usage-Erkennung des Clients prüfen.
Ähnlicher Text auf denselben Prompt ist kein hinreichender Protokolltest. Ein sinnvoller Test muss die Funktionen ausüben, von denen die Anwendung tatsächlich abhängt.
Praktischer Auswahlablauf
- Modell und Gruppe unter Modelle & Preise auswählen.
- Unterstütztes API-Format bestätigen.
- Falls vorhanden, eine clientspezifische Anleitung in der Modelflare-Dokumentation verwenden.
- Eine Anfrage ohne Streaming senden.
- Eine Streaming-Anfrage senden.
- Tools oder strukturierte Ausgabe ausführen.
- Status, Zeiten, Token-Nutzung und Kosten im Nutzungsprotokoll prüfen.
Die Responses API ersetzt Chat Completions nicht pauschal, und Chat Completions ist nicht veraltet. Richtig ist das Format, das Client, Modell und Upstream-Vertrag gemeinsam unterstützen.