inference.eu

POST /v1/responses

API Responses : le format Responses d'OpenAI, traité dans l'UE

Le point de terminaison Responses est la plus récente des deux API de génération au format OpenAI. Il prend `instructions` et `input` au lieu d'une liste de messages, renvoie des éléments de sortie typés et c'est là que se configurent les outils intégrés : recherche web, exécution de code et serveurs MCP distants. Pour un nouveau projet ou des agents construits avec l'OpenAI Agents SDK, c'est en général le bon choix.

  1. 01Format d'API: OpenAI
  2. 02Centres de données dans l'UE
  3. 03Couvert par un seul DPA
POST /v1/responses
curl https://api.inference.eu/v1/responses \
  -H "Authorization: Bearer $INFERENCE_EU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-oss-120b",
    "instructions": "You are a support assistant for a Dutch logistics company. Answer in two short paragraphs.",
    "input": "A customer says their pallet was delivered to the wrong depot. What should I ask them first?",
    "max_output_tokens": 500,
    "reasoning": {"effort": "low"}
  }'

Ce que fait le point de terminaison

POST /v1/responses génère une réponse à partir d'input, qui peut être une simple chaîne ou une liste d'éléments : messages, images, sorties précédentes et résultats d'outils. instructions contient le prompt système, séparé du contenu de l'utilisateur, ce qui permet de le modifier sans reconstruire l'entrée.

La sortie n'est pas un message unique mais un tableau output. Une réponse simple contient un élément message, alors qu'une étape d'agent peut enchaîner raisonnement, appels de fonctions, recherches web et appels MCP dans l'ordre où ils ont eu lieu. Les SDK OpenAI regroupent le texte dans la propriété output_text.

Les champs essentiels de la requête

Seuls model et input sont obligatoires. max_output_tokens plafonne la réponse, tokens de raisonnement compris, et reasoning.effort (low, medium ou high) règle l'effort de réflexion d'un modèle de raisonnement. temperature et top_p fonctionnent comme avec chat completions.

tools accueille vos propres fonctions ainsi que les types intégrés web_search, code_interpreter et mcp. text.format demande un JSON conforme à un schéma. Avec stream: true, vous recevez des événements typés comme response.output_text.delta, et previous_response_id reprend un échange précédent sans renvoyer tout l'historique.

État de la conversation et stockage

Avec chat completions, votre code renvoie tout l'historique. Avec Responses, il suffit de passer previous_response_id : l'API reconstitue le contexte à partir de la réponse enregistrée. Les requêtes restent légères dans les longues boucles d'agents et les éléments de raisonnement sont conservés d'une étape à l'autre.

Les réponses enregistrées restent dans l'UE et ne servent jamais à l'entraînement. Si vous ne voulez rien conserver, passez store à false et envoyez l'entrée complète à chaque fois, comme avec chat completions. La durée de conservation dépend de votre contrat et nous la validons avec vous avant la mise en production.

Erreurs et cas particuliers

Vérifiez le champ status de chaque réponse. completed est le cas normal. incomplete signale un arrêt prématuré, et incomplete_details.reason précise si max_output_tokens a été atteint. Une réponse failed contient un objet error. Les erreurs HTTP suivent le format habituel : 400 pour une requête invalide, 401 pour une mauvaise clé, 404 pour un modèle ou un identifiant de réponse inconnu, 429 lorsqu'une limite de votre offre est atteinte.

Ne supposez pas que le premier élément est le texte. Les modèles de raisonnement placent d'abord un élément reasoning : parcourez output et filtrez par type, ou utilisez output_text dans le SDK.

Responses : questions fréquentes

Les questions que nous posent le plus les achats, les développeurs et les juristes. Il en manque une ? Posez-la-nous directement.

Poser une question

Faites passer vos charges IA sur une infrastructure européenne

Dites-nous quels modèles vous utilisez et votre volume approximatif. Nous répondons sous un jour ouvré avec un tarif et la suite.

  • Réponse sous un jour ouvré
  • Tarif adapté à votre volume
  • DPA prêt à signer