Responses
MarkdownDas neue OpenAI-Format: eine Eingabe, typisierte Ausgabe, Tools und Reasoning. Es wird von Codex CLI verwendet.
Vollständiger Leitfaden
https://api.ailoot.ai/v1/responsescurl https://api.ailoot.ai/v1/responses \
-H "Authorization: Bearer $AILOOT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-6.1-sol",
"instructions": "Antworte kurz.",
"input": "Was unterscheidet TCP von UDP?"
}' from openai import OpenAI
import os
client = OpenAI(max_retries=0, base_url="https://api.ailoot.ai/v1", api_key=os.environ["AILOOT_API_KEY"])
resp = client.responses.create(
model="gpt-6.1-sol",
instructions="Antworte kurz.",
input="Was unterscheidet TCP von UDP?",
)
print(resp.output_text)import OpenAI from "openai";
const client = new OpenAI({ maxRetries: 0, baseURL: "https://api.ailoot.ai/v1", apiKey: process.env.AILOOT_API_KEY });
const resp = await client.responses.create({
model: "gpt-6.1-sol",
instructions: "Antworte kurz.",
input: "Was unterscheidet TCP von UDP?",
});
console.log(resp.output_text);{
"id": "resp_67f1…",
"object": "response",
"status": "completed",
"model": "gpt-6.1-sol",
"output": [
{
"type": "message",
"role": "assistant",
"content": [
{ "type": "output_text", "text": "TCP garantiert die Zustellung und Reihenfolge, UDP nicht, ist dafür aber schneller…" }
]
}
],
"usage": { "input_tokens": 24, "output_tokens": 61, "total_tokens": 85 }
}Authentifizierung
- Authorizationheadererforderlich
Schlüssel im Format
Bearer sk-…. Alternativ eignen sich die Headerx-api-keyoderx-goog-api-key.
Anfrageinhalt
- modelstringerforderlich
ID eines Modells mit Responses-Format. Davon stehen 53 im Katalog: GPT, Claude, DeepSeek, Qwen, Kimi, GLM, MiniMax, Grok. Gemini-Modelle sind in diesem Format nicht verfügbar.
- inputstring | arrayerforderlich
Anfragetext oder Array aus Nachrichten und Teilen (Text, Bilder).
- instructionsstringoptional
Systemanweisung.
- streambooleanoptional
SSE-Ereignisstream; das letzte Ereignis ist
response.completed. Kostenpflichtiger Text wird nach der Kostenberechnung als ein Block geliefert. - max_output_tokensintegeroptional
Maximale Anzahl an Antworttokens einschließlich Reasoning. Wenn nicht angegeben, setzt Ailoot 4096 ein (oder weniger, wenn das Antwortlimit des Modells niedriger ist). Geben Sie für lange Antworten ausdrücklich ein Limit an. Anfragen mit
previous_response_idund integrierten Toolsweb_searchodercode_interpreterberücksichtigen bei neuen Textanfragen separate Schätzungen für den gespeicherten Kontext und die Tool-Nutzung; sie gehen nicht automatisch zu den Kosten des gesamten Eingabefensters über. Früher akzeptierte Reservierungen behalten ihre ursprünglichen Bedingungen. Für Bilder, Video und Audio als Ausgabe werden die vollständigen Ergebniskosten reserviert. Wenn die berechnete Reservierung nicht in das verfügbare Guthaben oder das Schlüssellimit passt, kann Ailoot bei einem unterstützten Modell und einer unterstützten Methodemax_tokens(max_output_tokensbei Responses) auf ein finanzierbares Volumen senken, jedoch nicht unter 256 Tokens oder ein höheres Minimum dieser Methode, und meldet dies im HeaderX-Ailoot-Max-Tokens-Capped. Ob das Limit gesenkt werden kann, wird für das konkrete Textmodell und die Methode geprüft. Dies gilt für unterstützte Gemini-Textrouten im nativen Gemini-Format und im Format Anthropic Messages;deepseek-ai/deepseek-v4.1-flash,meta/llama-3.2-11b-vision-instruct,meta/muse-glimmer-30b,nvidia/ising-calibration-1.5-31b,nvidia/nemotron-3-nano-omni-30b-a3b-reasoning,nvidia/nemotron-3-super-120b-a12b,nvidia/nemotron-3-ultra-550b-a55b,nvidia/nemotron-3.5-content-safety,nvidia/nemotron-3.5-lightning-30b-a3b,nvidia/riva-translate-4b-instruct-v1.1,nvidia/riva-translate-4b-instruct-v2,poolside/laguna-xs-2.1,z-ai/glm-5.3-flashin den Formaten Chat Completions und Messages, soweit das Modell diese unterstützt. Ausgabe wird für die Reservierung einer neuen Textanfrage anhand einer typischen Antwortlänge und der akzeptierten Bedingungen geschätzt. Das angeforderte Limit wird übermax_tokens(max_output_tokensbei Responses) angegeben. Das angeforderte Limit entspricht nicht automatisch der Tokenzahl, auf deren Grundlage die Reservierung berechnet wird, und garantiert bei einem Modell ohne verlässliche Begrenzung keine tatsächliche Antwortlänge. Der Ausgangswert 4096 gilt nur für die entsprechenden Routen; die konkrete Regel hängt vom Modell und der Methode ab. - reasoningobjectoptional
{"effort": "low" | "medium" | "high"}für Reasoning-Modelle. - toolsarrayoptional
Funktionen, die das Modell aufrufen kann.
- textobjectoptional
Antwortformat, zum Beispiel
{"format": {"type": "json_schema", ...}}. - temperaturenumberoptional
Zufälligkeit der Antwort, sofern das Modell sie unterstützt.
Antwort
- outputarray
Antwortelemente: Nachrichten (
message), Reasoning und Funktionsaufrufe. Im SDK nutzen Sie bequemoutput_text. - statusstring
completed,incomplete(das Limit wurde erreicht) oderfailed. - usageobject
input_tokens,output_tokens,total_tokens.