Aller au contenu principal

API Responses

Le point de terminaison avec état (stateful) de nouvelle génération d'OpenAI, avec prise en charge intégrée des outils, de la recherche web, de la recherche de fichiers et des tâches multi-étapes — il remplace progressivement Chat Completions.

Créer une réponse​

POST /v1/responses
RequestREQUEST
POSThttps://test.kailin.com.cn/v1/responses
ResponseRESPONSE
Fill in the request and hit Send — the response shows up here

Requête​

curl https://test.kailin.com.cn/v1/responses \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-token" \
-d '{
"model": "gpt-4o-mini",
"input": "Describe the Responses API in one sentence"
}'

Corps de la requête​

ParamètreTypeObligatoireDescription
modelstringOuiNom du modèle
inputstring / arrayOuiTexte d'entrée, ou tableau de messages/parties de contenu
streambooleanNonSortie en streaming (types d'événements plus riches)
instructionsstringNonInstructions au niveau système
previous_response_idstringNonPassez l'ID de la Response précédente pour une continuité multi-tours sans renvoyer l'historique
toolsarrayNonOutils : function, web_search_preview, etc.
temperature / top_pnumberNonParamètres d'échantillonnage
max_output_tokensnumberNonNombre maximal de tokens en sortie
metadataobjectNonPaires clé-valeur personnalisées (jusqu'à 16)
storebooleanNonIndique si le résultat est conservé pour référence via previous_response_id

Exemple avec un input sous forme de tableau (incluant une image) :

{
"model": "gpt-4o-mini",
"input": [
{
"role": "user",
"content": [
{ "type": "input_text", "text": "Describe this image" },
{ "type": "input_image", "image_url": "https://example.com/cat.jpg" }
]
}
]
}

Réponse​

{
"id": "resp_abc123",
"object": "response",
"created_at": 1730000000,
"status": "completed",
"model": "gpt-4o-mini",
"output": [
{
"type": "message",
"id": "msg_abc123",
"role": "assistant",
"status": "completed",
"content": [
{
"type": "output_text",
"text": "The Responses API is OpenAI's next-generation stateful endpoint…",
"annotations": []
}
]
}
],
"usage": {
"input_tokens": 12,
"output_tokens": 30,
"total_tokens": 42
}
}

Pour extraire le texte, parcourez les éléments output de type: "message" et lisez content[].text ; le SDK propose également le raccourci resp.output_text.

Récupérer une réponse​

GET /v1/responses/{response_id}
curl https://test.kailin.com.cn/v1/responses/resp_abc123 \
-H "Authorization: Bearer sk-your-token"

Renvoie l'objet Response complet. Les réponses créées avec store: false ne peuvent pas être récupérées.

Compactage du contexte​

POST /v1/responses/compact

Compacte une longue conversation en un résumé — utile pour les agents de longue durée afin de réduire la consommation de tokens sur les requêtes suivantes :

curl https://test.kailin.com.cn/v1/responses/compact \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-your-token" \
-d '{
"model": "gpt-4o-mini",
"input": [ ...long message array... ]
}'
ParamètreTypeObligatoireDescription
modelstringOuiModèle utilisé pour le compactage
inputarrayOuiTableau de messages à compacter
instructionsstringNonInstructions personnalisées pour le résumé

Renvoie l'objet résumé compacté, qui peut être placé dans le input de la requête suivante.

Remarque

L'accès via WebSocket (wss://.../v1/responses avec des événements response.create) dépend de la prise en charge du passthrough WS par la passerelle — REST + SSE reste la voie d'intégration client principale et n'est pas couvert ici.