Aller au contenu principal

Chat Completions et Responses dans les batchs

Les deux endpoints texte en mode batch

Les endpoints /v1/chat/completions et /v1/responses sont les plus utilises dans les batchs. Ils permettent de traiter des milliers de requetes texte avec une reduction de 50 % sur les tokens. Cette lecon detaille leurs specificites respectives et comment les utiliser efficacement dans un contexte batch.

Chat Completions dans un batch

L’endpoint Chat Completions en mode batch accepte exactement les memes parametres qu’en mode synchrone. La seule difference est l’enveloppe JSONL :

{"custom_id": "sum-1", "method": "POST", "url": "/v1/chat/completions", "body": {"model": "grok-3", "messages": [{"role": "system", "content": "Vous etes un expert en synthese."}, {"role": "user", "content": "Resumez ce rapport financier en 5 points cles."}], "temperature": 0.3, "max_tokens": 500}}

Tous les parametres habituels sont disponibles :

  • temperature : controlez la creativite (0 pour du deterministe, 1 pour du creatif)
  • max_tokens : limitez la longueur de la reponse pour maitriser les couts
  • top_p : alternative a temperature pour le sampling
  • stop : sequences d’arret personnalisees

Cas d’usage typiques

  • Classification de textes (sentiment, categorie, urgence)
  • Extraction d’informations structurees (entites, dates, montants)
  • Generation de resumes ou de reformulations
  • Traduction en masse

Responses API dans un batch

L’API Responses offre des fonctionnalites supplementaires. En mode batch, elle permet d’utiliser les outils integres de Grok :

{"custom_id": "research-1", "method": "POST", "url": "/v1/responses", "body": {"model": "grok-3", "input": "Quelles sont les dernieres tendances en IA generative ?", "tools": [{"type": "web_search"}]}}

Les outils disponibles dans les batchs Responses API incluent la recherche web, l’execution de code, et les serveurs MCP. Ces outils sont traites cote serveur par Grok pendant le traitement du batch.

Differences avec Chat Completions en batch

CaracteristiqueChat CompletionsResponses API
Format d’entreemessages (array)input (string ou array)
Outils serveurNonOui (web search, code, MCP)
Function callingOuiOui
Structured outputsOuiOui
Reduction 50 %OuiOui

Parametres avances communs

Certains parametres meritent une attention particuliere en mode batch :

temperature: 0 est recommande pour les taches de classification ou d’extraction. En mode batch, la reproductibilite est importante : vous voulez des resultats coherents sur tout le lot.

max_tokens doit etre defini explicitement. Sans limite, une requete peut generer une reponse tres longue et consommer des tokens inutilement. Pour un resume, 200 a 500 tokens suffisent generalement.

response_format permet de forcer un format JSON structure dans la reponse, utile quand vous traitez les resultats de maniere programmatique :

{"custom_id": "classify-1", "method": "POST", "url": "/v1/chat/completions", "body": {"model": "grok-3", "messages": [{"role": "user", "content": "Classifie : positif, neutre, negatif"}], "response_format": {"type": "json_object"}}}

Mixer les deux endpoints

Vous pouvez combiner Chat Completions et Responses API dans le meme batch. Chaque requete specifie son endpoint dans le champ url :

{"custom_id": "simple-1", "method": "POST", "url": "/v1/chat/completions", "body": {"model": "grok-3", "messages": [{"role": "user", "content": "Resume en une phrase."}]}}
{"custom_id": "search-1", "method": "POST", "url": "/v1/responses", "body": {"model": "grok-3", "input": "Actualites IA cette semaine", "tools": [{"type": "web_search"}]}}

Cette flexibilite permet de creer des pipelines ou certaines requetes necessitent des outils (recherche web pour enrichir des donnees) tandis que d’autres sont purement textuelles.

Points cles a retenir

  • Chat Completions et Responses API beneficient tous deux de la reduction de 50 %
  • Chat Completions est ideal pour les taches textuelles simples et la compatibilite SDK
  • Responses API est necessaire pour les outils integres (web search, code, MCP)
  • Utilisez temperature: 0 et max_tokens pour des resultats reproductibles et economes
  • Les deux endpoints peuvent coexister dans un meme batch