/v1/responses, wenn dein Client bereits das Format der OpenAI Responses API
spricht oder wenn du Responses-native Funktionen wie Reasoning-Steuerung,
Websuche-Tools und offizielle Responses-Server-Sent-Events benötigst.
Reasoning-Steuerung
gpt-5.5 und gpt-5.4 akzeptieren Responses-Reasoning-Steuerung. Verwende
reasoning.effort, um die Reasoning-Stärke festzulegen:
gpt-5.5 und gpt-5.4 unterstützen none, low, medium, high und xhigh, aber weder minimal noch max. reasoning_effort auf oberster Ebene wird als Alias akzeptiert. Sind beide Formen vorhanden, müssen ihre Werte übereinstimmen; Konflikte ergeben 400.
Die unterstützten Werte hängen vom Modell ab. Ohne Angabe bleibt das Standardverhalten erhalten. Siehe modellabhängige Reasoning-Steuerung.
Welche Efforts ein Modell akzeptiert, welcher Standard gilt und ob Reasoning deaktiviert werden kann, steht für jedes Modell in GET /v1/models unter capability_metadata.reasoning; so lässt sich ein Modell konfigurieren, ohne eine Tabelle fest zu verdrahten.
Ausgabelimits wie max_completion_tokens, max_output_tokens und native Entsprechungen zählen Reasoning- und Antwort-Tokens gemeinsam. Effort ist kein Ausgabetokenlimit. Das Budget kann weiterhin erschöpft werden (finish_reason: "length" in Chat Completions), sodass die endgültige Antwort unvollständig oder leer bleibt.
Websuche
Übergib OpenAI-Responses-Tools direkt. Für webbasierte Antworten füge ein Websuche-Tool intools ein:
Streaming
Setzestream: true, um den Responses-SSE-Eventstream zu empfangen. Die Events folgen
dem OpenAI-Responses-Format, etwa response.created,
response.output_text.delta, Tool-Events und response.completed.
Hinweise
- Das
modelist eine öffentliche APIAny.AI-Modell-ID. max_output_tokensist das Responses-typische Limit für Ausgabe-Tokens.- Responses-native Felder wie
reasoning,text,tools,tool_choice,include,previous_response_idundstorewerden weitergeleitet, wenn das ausgewählte Modell sie unterstützt.
GPT-6-Ausgabe und Stream-Abschluss
Beigpt-6-astra werden erkennbare führende Denkblöcke von der endgültigen Antwort getrennt. Die Antwort steht in content / output_text, der Denktext in separaten Reasoning-Feldern oder Summary-Ereignissen. Explizite Tag-Beispiele und mehrdeutige Markierungen bleiben erhalten. Reasoning-Effort und Token-Limits ändern sich dadurch nicht.
HTTP 200 bei einem Stream garantiert keinen Erfolg. Behandeln Sie Fehlerereignisse und kennzeichnen Sie Teilantworten als unvollständig. Lesen Sie bei Chat den letzten usage-Block vor [DONE]; unterscheiden Sie bei Responses zwischen response.completed, response.incomplete und response.failed / error.