Aller au contenu principal
Leçon 8 sur 12 · Modèles de raisonnement Grok

Comptage des tokens de raisonnement

Leçon 8 sur 12 Mis à jour le 3 novembre 2026 Développeur
Sur cette page
  1. Comprendre les tokens de raisonnement
  2. L’objet usage en Chat Completions
  3. Accéder aux tokens de raisonnement en code
  4. Facturation au tarif de sortie
  5. Le rôle de max_completion_tokens
  6. Points clés à retenir

Leçon réécrite le 3 novembre 2026 d’après la référence de l’API xAI (Chat Completions et Responses), le guide Reasoning et l’exemple Reasoning Effort Evals du cookbook : chez xAI, completion_tokens (ou output_tokens) ne compte que la réponse visible, le raisonnement est compté à part et le total additionne les trois ; le plafond de sortie ne limite pas le raisonnement. L’ancienne version affirmait l’inverse, utilisait des champs de Chat Completions sur une réponse de la Responses API, réglait un effort sur grok-4.20-0309-reasoning qui n’en accepte pas, et montrait une capture d’écran qui ne correspondait pas à l’API ; ces éléments sont corrigés ou retirés. Sources : Chat Completions · Responses · Reasoning Effort Evals.

Comprendre les tokens de raisonnement

Les modèles de raisonnement produisent deux sortes de tokens : ceux de la réponse visible, et ceux de la réflexion interne du modèle. Comprendre comment xAI les compte est essentiel pour maîtriser vos coûts et lire correctement vos tableaux de bord.

Sortie
Facturés au tarif de sortie
usage
Objet de suivi détaillé
À part
Raisonnement compté hors réponse
Effort
Le levier sur le raisonnement

L’objet usage en Chat Completions

Chaque réponse inclut un objet usage qui détaille la consommation. Voici l’exemple de la référence de l’API Chat Completions de xAI :

{
  "usage": {
    "prompt_tokens": 32,
    "completion_tokens": 9,
    "total_tokens": 135,
    "completion_tokens_details": {
      "reasoning_tokens": 94
    }
  }
}

Dans cet exemple :

  • prompt_tokens (32) : tokens du message d’entrée
  • completion_tokens (9) : tokens de la réponse visible
  • reasoning_tokens (94) : tokens consacrés au raisonnement interne
  • total_tokens (135) : la somme des trois, 32 + 9 + 94

Le raisonnement n’est donc pas inclus dans completion_tokens : il s’y ajoute. Attention si vous venez d’une autre API où la convention diffère, ou si votre tableau de bord calcule la réponse visible par soustraction.

Accéder aux tokens de raisonnement en code

Dans la Responses API, les mêmes informations portent d’autres noms : input_tokens, output_tokens pour la réponse visible, et output_tokens_details.reasoning_tokens pour le raisonnement.

response = client.responses.create(
    model="grok-4.7",
    input="Résolvez l'intégrale de x^2 * e^x dx.",
    reasoning={"effort": "high"},
)

reponse_visible = response.usage.output_tokens
raisonnement = response.usage.output_tokens_details.reasoning_tokens
sortie_facturee = reponse_visible + raisonnement

print(f"Tokens de raisonnement : {raisonnement}")
print(f"Tokens de réponse : {reponse_visible}")
print(f"Part du raisonnement : {raisonnement / sortie_facturee * 100:.0f} %")

L’effort se règle sur grok-4.7, grok-4.6 et grok-4.5 ; grok-4.20-0309-reasoning raisonne toujours, sans paramètre d’effort.

Facturation au tarif de sortie

Les tokens de raisonnement sont facturés au tarif des tokens de sortie, comme le rappelle l’exemple Reasoning Effort Evals du cookbook de xAI. Pour grok-4.7 à 6 $ par million de tokens en sortie (prompt sous 200 000 tokens), chaque token de raisonnement coûte le même prix qu’un token de réponse.

L’effort pèse donc sur la facture, mais pas toujours autant qu’on l’imagine. Dans ce même exemple, sur trente tickets de support courts traités par grok-4.7, les efforts medium, high et xhigh ont consommé à peu près autant de raisonnement — environ 600 tokens par réponse —, tandis que low en consommait environ 140 et coûtait deux fois moins cher, pour des scores tous compris entre 87 et 93 %. Mesurez sur vos propres données avant de choisir.

Exemple de calcul de coût

# grok-4.7 : 6.00 $/M tokens de sortie (prompt < 200k)
cout_par_token = 6.00 / 1_000_000

raisonnement = 600
reponse_visible = 350
sortie_facturee = raisonnement + reponse_visible  # 950

cout = sortie_facturee * cout_par_token
print(f"Coût sortie : ${cout:.4f}")  # $0.0057

Le rôle de max_completion_tokens

Le plafond de sortie — max_completion_tokens en Chat Completions, max_output_tokens dans la Responses API — ne s’applique qu’à la réponse visible : d’après la référence de l’API, les tokens de raisonnement et d’appels de fonction n’y comptent pas. Sans valeur, il vaut 128 000 tokens. Pour limiter le raisonnement, c’est l’effort qu’il faut régler (leçon 10).

{
  "model": "grok-4.7",
  "messages": [
    {"role": "user", "content": "Expliquez la relativité restreinte."}
  ],
  "reasoning_effort": "medium",
  "max_completion_tokens": 2000
}

Tarifs vérifiés le 3 novembre 2026 — les prix évoluent régulièrement : avant tout calcul de budget, vérifiez la grille en vigueur sur la page officielle des modèles et tarifs xAI.

Points clés à retenir

  • Les tokens de raisonnement sont dans usage.completion_tokens_details.reasoning_tokens (Chat Completions) ou usage.output_tokens_details.reasoning_tokens (Responses)
  • Chez xAI, completion_tokens et output_tokens ne comptent que la réponse visible ; le total additionne entrée, réponse et raisonnement
  • Les tokens de raisonnement sont facturés au tarif de sortie
  • Le plafond de sortie ne limite que la réponse visible ; l’effort règle le raisonnement
  • L’écart de coût entre efforts dépend de la tâche : mesurez-le sur vos propres données