Skip to content

Conventions

Base de format

Les endpoints de chat consomment et renvoient du JSON. En mode streaming, la reponse est diffusee en text/event-stream.

Champ model

Le champ model est obligatoire et doit suivre ce format:

text
group:<uuid>

Exemple:

text
group:123e4567-e89b-12d3-a456-426614174000

Messages

La requete attend un tableau messages.

Roles acceptes:

  • system
  • user
  • assistant
  • tool

Regle importante:

  • le tableau doit contenir au moins un message user
  • le dernier message user porte la demande en cours

Formats de contenu

Le champ content d’un message peut etre:

  • une chaine
  • null
  • un tableau de blocs contenant des proprietes comme type et text

Streaming

Si stream vaut true, l’API renvoie des evenements SSE.

Le flux suit en pratique cette logique:

  1. un premier chunk initialise la reponse assistant
  2. des chunks ajoutent du texte dans choices[0].delta.content
  3. un chunk final ferme la reponse
  4. le flux se termine avec data: [DONE]

metadata

Le champ metadata est optionnel. Il est utile notamment pour:

  • fournir un identifiant request_id
  • indiquer un mode via metadata.mode

Valeurs de metadata.mode prises en charge:

  • auto
  • normal
  • orch
  • synth

Limites de saisie utiles

  • messages: entre 1 et 500 elements
  • temperature: entre 0 et 2
  • max_tokens: entre 1 et 200000
  • max_completion_tokens: entre 1 et 200000

Si max_tokens et max_completion_tokens sont fournis ensemble, preferez max_completion_tokens pour exprimer clairement la limite souhaitee.