Passer au contenu principal
POST
/
v1
/
chat
/
completions
curl --request POST \ --url https://direct.evolink.ai/v1/chat/completions \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data ' { "model": "glm-5.2", "messages": [ { "role": "user", "content": "Veuillez vous présenter" } ] } '
{
  "id": "chatcmpl-a6613b56-c61c-94ba-9a9f-43d4cdc7d77a",
  "object": "chat.completion",
  "request_id": "req-7f3a2c1e8b9d4f0a",
  "created": 1777021417,
  "model": "glm-5.2",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Bonjour ! Je suis GLM-5.2, et je peux vous aider à réaliser diverses tâches comme la conversation, le raisonnement, la rédaction, le code, etc.",
        "reasoning_content": "Laissez-moi d'abord analyser ce problème...",
        "tool_calls": [
          {
            "id": "<string>",
            "function": {
              "name": "<string>",
              "arguments": "<string>"
            },
            "mcp": {
              "id": "<string>",
              "server_label": "<string>",
              "error": "<string>"
            }
          }
        ]
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 24,
    "completion_tokens": 346,
    "total_tokens": 370,
    "prompt_tokens_details": {
      "cached_tokens": 0
    },
    "completion_tokens_details": {
      "reasoning_tokens": 321
    }
  },
  "web_search": [
    {
      "icon": "<string>",
      "title": "<string>",
      "link": "<string>",
      "media": "<string>",
      "publish_date": "<string>",
      "content": "<string>",
      "refer": "<string>"
    }
  ],
  "content_filter": [
    {
      "level": 1
    }
  ]
}
BaseURL : la BaseURL par défaut est https://direct.evolink.ai, qui offre une meilleure prise en charge des modèles textuels et des connexions de longue durée. https://api.evolink.ai est le point de terminaison principal pour les services multimodaux et sert d’adresse de repli pour les modèles textuels.

Autorisations

Authorization
string
header
requis

##Toutes les API nécessitent une authentification par Bearer Token##

Obtenir une clé API :

Visitez la page de gestion des clés API pour obtenir votre clé API

Ajouter à l'en-tête de requête :

Authorization: Bearer YOUR_API_KEY

Corps

application/json
model
enum<string>
défaut:glm-5.2
requis

Code du modèle à appeler

  • glm-5.2 : tout dernier modèle phare, offrant un raisonnement complexe, un contexte ultra-long et une vitesse d'inférence extrême
Options disponibles:
glm-5.2
Exemple:

"glm-5.2"

messages
(System Message · object | User Message · object | Assistant Message · object | Tool Message · object)[]
requis

Liste des messages de la conversation, contenant l'intégralité du contexte de la conversation en cours

Prend en charge quatre rôles : system, user, assistant, tool. Les messages de rôles différents ont des structures de champs différentes ; sélectionnez le rôle correspondant pour le consulter. Doit contenir au moins 1 message, et ne peut pas contenir uniquement des messages système ou des messages de l'assistant.

Minimum array length: 1
stream
boolean
défaut:false

Indique s'il faut activer le mode de sortie en streaming

  • false : le modèle génère la réponse complète puis la renvoie en une seule fois (par défaut), adapté aux textes courts et au traitement par lots
  • true : renvoie le contenu en temps réel bloc par bloc via Server-Sent Events (SSE), adapté au chat et aux textes longs ; data: [DONE] est renvoyé à la fin du flux
Exemple:

false

thinking
object

Contrôle l'activation de la chaîne de pensée (Chain of Thought)

reasoning_effort
enum<string>
défaut:max

Contrôle le degré de raisonnement du modèle (capacité exclusive à GLM-5.2)

Remarques :

  • N'a d'effet que lorsque thinking est activé, par défaut max
  • Valeurs du plus fort au plus faible : max > xhigh > high > medium > low > minimal > none

Règles de correspondance GLM-5.2 (pour la compatibilité avec d'autres protocoles) :

  • xhigh → équivalent à max
  • low / medium → équivalent à high
  • none / minimal → abandon de la réflexion (pas de raisonnement approfondi)
Options disponibles:
max,
xhigh,
high,
medium,
low,
minimal,
none
Exemple:

"max"

do_sample
boolean
défaut:true

Indique s'il faut activer la stratégie d'échantillonnage

  • true (par défaut) : utilise temperature / top_p pour un échantillonnage aléatoire, sortie plus variée
  • false : sélectionne toujours le mot le plus probable (décodage glouton), sortie plus déterministe ; dans ce cas, temperature et top_p sont ignorés

Pour les tâches nécessitant cohérence et reproductibilité (comme la génération de code, la traduction), il est recommandé de définir cette valeur sur false

Exemple:

true

temperature
number<float>
défaut:1

Température d'échantillonnage, contrôle le caractère aléatoire et la créativité de la sortie

Remarques :

  • Plage : [0.0, 1.0], limitée à deux décimales
  • Valeurs plus élevées (par ex. 0.8) : plus aléatoire et plus créatif, adapté à l'écriture créative
  • Valeurs plus basses (par ex. 0.2) : plus stable et plus déterministe, adapté aux questions factuelles et à la génération de code
  • Valeur par défaut de GLM-5.2 : 1.0

Recommandation : n'ajustez pas simultanément temperature et top_p

Plage requise: 0 <= x <= 1
Exemple:

1

top_p
number<float>
défaut:0.95

Paramètre d'échantillonnage par noyau (Nucleus Sampling), une méthode alternative à l'échantillonnage par temperature

Remarques :

  • Plage : [0.01, 1.0], limitée à deux décimales
  • Le modèle ne considère que les mots candidats dont la probabilité cumulée atteint top_p ; par exemple, 0.1 signifie ne considérer que les 10 % de mots les plus probables
  • Des valeurs plus petites produisent une sortie plus ciblée et plus cohérente ; des valeurs plus grandes augmentent la diversité
  • Valeur par défaut de GLM-5.2 : 0.95

Recommandation : n'ajustez pas simultanément temperature et top_p

Plage requise: 0.01 <= x <= 1
Exemple:

0.95

max_tokens
integer

Limite du nombre maximal de tokens en sortie du modèle

Remarques :

  • GLM-5.2 prend en charge une longueur de sortie maximale de 131 072 tokens (128K), il est recommandé de définir une valeur d'au moins 1024
  • Lorsque thinking est activé, les tokens de la chaîne de pensée sont également comptabilisés dans cette limite
  • Si la génération est interrompue pour cause de length, essayez d'augmenter cette valeur
Plage requise: 1 <= x <= 131072
Exemple:

1024

tools
(Outil Function · object | Outil Retrieval (recherche dans une base de connaissances) · object | Outil Web Search (recherche web) · object | Outil MCP · object)[]

Liste des outils que le modèle peut appeler

Remarques :

  • Prend en charge l'appel de fonction (function), la recherche dans une base de connaissances (retrieval), la recherche web (web_search) et le MCP (mcp)
  • Prend en charge jusqu'à 128 fonctions
Maximum array length: 128
tool_choice
enum<string>
défaut:auto

Contrôle la manière dont le modèle choisit quelle fonction appeler

Remarques : n'a d'effet que lorsque le type d'outil est function, par défaut et uniquement auto est pris en charge (le modèle décide automatiquement s'il faut appeler un outil)

Options disponibles:
auto
Exemple:

"auto"

stop
string[]

Liste des mots d'arrêt

Remarques :

  • Lorsque le texte généré par le modèle rencontre la chaîne spécifiée, la génération s'arrête immédiatement (le mot d'arrêt lui-même n'est pas inclus dans le texte renvoyé)
  • Actuellement, un seul mot d'arrêt est pris en charge, au format ["stop_word1"], par exemple ["Human:"]
Maximum array length: 4
Exemple:
["Human:"]
response_format
object

Spécifie le format de sortie de la réponse du modèle, par défaut text

Remarques :

  • { "type": "json_object" } active le mode JSON, le modèle renvoie des données au format JSON valide, adapté aux scénarios d'extraction de données structurées, etc.
  • Lors de l'utilisation du mode JSON, il est recommandé de demander explicitement une sortie JSON dans le message system ou user
request_id
string

Identifiant unique de la requête

Remarques :

  • Transmis par le client, longueur de 6 à 64 caractères, il est recommandé d'utiliser le format UUID pour garantir l'unicité
  • S'il n'est pas fourni, la plateforme le génère automatiquement
Required string length: 6 - 64
Exemple:

"req-7f3a2c1e8b9d4f0a"

user_id
string

Identifiant unique de l'utilisateur final

Remarques : longueur de 6 à 128 caractères, il est recommandé d'utiliser un identifiant unique ne contenant pas d'informations sensibles ; cela peut aider la plateforme à surveiller et détecter les comportements abusifs

Required string length: 6 - 128
Exemple:

"user-abc123456"

Réponse

Génération de conversation réussie

id
string

ID de la tâche

Exemple:

"chatcmpl-a6613b56-c61c-94ba-9a9f-43d4cdc7d77a"

object
enum<string>

Type de réponse

Options disponibles:
chat.completion
Exemple:

"chat.completion"

request_id
string

ID de la requête (retransmis lorsque request_id est fourni dans la requête)

Exemple:

"req-7f3a2c1e8b9d4f0a"

created
integer

Heure de création de la requête, horodatage Unix (secondes)

Exemple:

1777021417

model
string

Nom du modèle

Exemple:

"glm-5.2"

choices
object[]

Liste des réponses du modèle

usage
object

Statistiques d'utilisation des tokens renvoyées à la fin de l'appel

Informations relatives à la recherche web, renvoyées lors de l'utilisation de l'outil web_search et qu'une recherche est effectuée

content_filter
object[]

Informations relatives à la sécurité du contenu