« Thinking mode » (également appelé extended thinking, thinking ou thinking blocks) dans Claude 4.5 est un mode de fonctionnement explicite et configurable qui indique au modèle de consacrer un nombre de tokens séparément budgété pour générer un raisonnement interne étape par étape (une « chaîne de pensée ») avant d’émettre la réponse finale. Il est conçu pour améliorer les performances sur le raisonnement multi-étapes, le codage complexe et les workflows agentiques, ainsi que les tâches de recherche, en échangeant latence et coût en tokens contre une délibération interne plus approfondie. Claude 4.5 expose cette capacité au niveau de l’API Messages avec des paramètres explicites (par ex., thinking / budget_tokens ou un en-tête effort/« interleaved-thinking »), conserve et chiffre éventuellement les blocs de réflexion pour une vérification ultérieure ou l’usage d’outils, et introduit des comportements de cache et de comptabilisation des tokens que vous devez gérer en production.
Qu’est-ce que Claude 4.5 ? (et quels modèles dois-je privilégier ?)
Claude 4.5 est la dernière série de modèles Claude d’Anthropic publiée sous forme de mises à jour incrémentales « 4.5 » (par exemple, Sonnet 4.5 et Opus 4.5). Sonnet 4.5 offre le meilleur équilibre entre intelligence, codage et performances agentiques pour la plupart des développeurs ; Opus 4.5 se concentre sur un raisonnement à effort très élevé et conserve les blocs de réflexion afin d’améliorer la continuité sur plusieurs tours. Les deux modèles prennent en charge les capacités de réflexion étendue de Claude, bien que certains comportements (par ex., réflexion résumée vs complète) diffèrent selon le modèle.
Les gains de performance dans Claude 4.5, en particulier dans Sonnet 4.5, sont les plus visibles sur le benchmark SWE-bench Verified, qui mesure la capacité d’une IA à résoudre de véritables issues GitHub.
| Modèle | Score SWE-bench Verified | OSWorld (Computer Use) |
|---|---|---|
| Claude 3.5 Sonnet | 49,0% | 42,2% |
| Claude 4.1 Opus | 67,6% | 55,0% |
| Claude 4.5 Sonnet (Thinking On) | 77,2% | 61,4% |
| GPT-5 (Medium Reasoning) | 65,0% | 52,0% |
Ces chiffres indiquent que Claude 4.5 n’est pas seulement meilleur pour écrire des extraits : il est nettement plus capable de naviguer dans des systèmes de fichiers entiers et d’exécuter des tâches autonomes sans intervention humaine.
Pourquoi c’est important
- Codage et agents : Sonnet 4.5 montre de fortes améliorations sur des tâches logicielles réelles et des travaux de codage de longue haleine — ce qui en fait un excellent choix pour la génération de code, l’édition de code et les flux agentiques autonomes.
- Réflexion étendue et contexte : les modèles de la famille Claude 4.5 sont conçus pour raisonner avec de très grands « brouillons » internes (des dizaines de milliers de tokens ou plus), permettant un raisonnement multi-étapes plus profond. Cela change la manière de concevoir vos prompts, budgets de tokens et interactions avec les outils.
Qu’est-ce que le mode de réflexion dans Claude 4.5 ?
Le mode de réflexion (officiellement appelé « Extended Thinking ») est une fonctionnalité qui permet au modèle de « montrer son travail » à lui-même avant de livrer un résultat final. Contrairement aux modèles standard qui s’engagent immédiatement sur une réponse, Claude 4.5 utilise un espace de raisonnement dédié pour explorer plusieurs hypothèses, identifier d’éventuelles erreurs logiques et affiner sa stratégie.
Anatomie d’une réponse
Dans une interaction standard, le modèle reçoit un prompt et commence à générer la réponse. En mode de réflexion, la réponse est scindée en deux blocs distincts :
| Type de bloc | Visibilité | Objectif |
|---|---|---|
| Bloc de réflexion | Caché (via l’API) ou réduit (UI) | Monologue interne du modèle, planification et auto-critique. |
| Bloc de texte | Visible | La réponse finale, affinée, fournie à l’utilisateur. |
Propriétés clés du mode de réflexion
- Activation sur demande : vous passez un objet
thinkingdans l’appel API tel que{"type":"enabled","budget_tokens":10000}pour l’activer et donner au modèle un budget interne de tokens pour le raisonnement. - Budgétisation :
budget_tokensplafonne les tokens de raisonnement internes du modèle. Plus de budget => un raisonnement plus profond mais un coût et une latence plus élevés. Dans les modèles Claude 4, les tokens de réflexion sont facturés même si vous ne recevez qu’une vue résumée. - Résumé et caviardage : pour de nombreux modèles Claude 4, l’utilisateur voit une version résumée du contenu de réflexion ; certains raisonnements internes peuvent être caviardés (chiffrés) par les systèmes de sécurité et renvoyés sous
redacted_thinking. - Signatures et vérification : les blocs de réflexion incluent une
signatureopaque utilisée pour la vérification lors du renvoi de blocs de réflexion à l’API (particulièrement nécessaire lors de l’utilisation d’outils). Traitez la signature comme opaque — n’essayez pas de l’analyser. - Réflexion entrelacée avec des outils : Claude 4 permet d’entrelacer des blocs de réflexion avec des exécutions d’outils (bêta et basée sur des flags dans certains cas). C’est puissant pour le travail agentique (exécuter un outil, réfléchir, exécuter un autre outil, etc.).
Pour des exemples pratiques et les paramètres les plus à jour, la documentation Messages/Extended Thinking d’Anthropic est la référence canonique.
Comment l’API Messages renvoie-t-elle le contenu de réflexion
Réflexion résumée vs complète ; chiffrement et signatures
Différentes versions des modèles Claude gèrent la réflexion différemment : les modèles Claude 4 plus récents (comme Sonnet/Opus 4.5) renvoient souvent une vue publique résumée du raisonnement interne tandis que le brouillon complet peut être chiffré et accessible uniquement via un champ signature (ou des blocs caviardés). Lors d’un usage d’outils (ou si vous devez préserver l’état interne entre des appels d’outils), vous devez renvoyer les blocs de réflexion à l’API ou utiliser le mécanisme de signature décrit par la documentation. Ce mécanisme aide à protéger le raisonnement interne sensible tout en permettant la poursuite sûre du processus de réflexion si nécessaire.
Schéma de manipulation pratique
- Usage d’outils / continuation : si votre prochaine requête doit continuer le même état interne (par ex., des outils ont été exécutés sur la base de la réflexion), incluez le bloc de réflexion renvoyé ou la signature lorsque vous appelez à nouveau l’API.
- Requête : envoyez
thinking: {type: "enabled", budget_tokens: N}. - Réponse : vous pouvez recevoir (a) une sortie publique résumée, (b) une
signaturechiffrée ou un blocredacted_thinking, ou (c) les deux.
CometAPI propose l’API Claude 4.5 à 20 % du prix officiel et peut également être appelée via les Anthropic Messages. Vous devrez obtenir une clé API avant de commencer.
Exemple 1 — simple curl (non streaming) avec réflexion activée
curl https://api.cometapi.com/v1/messages \
-H "x-api-key: $CometAPI_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"thinking": {
"type": "enabled",
"budget_tokens": 10000
},
"messages": [
{"role": "user", "content": "Conçois une stratégie robuste de validation des données pour les imports CSV, avec tests et code."}
]
}'
La réponse contiendra des blocs content. Inspectez chaque bloc et privilégiez les blocs text pour la sortie finale ; les blocs thinking contiennent le résumé de l’analyse interne du modèle.
Exemple 2 — Python : requête, parsing des blocs de réflexion et de texte
import os, requests
API_KEY = os.environ["CometAPI_API_KEY"]
URL = "https://api.cometapi.com/v1/messages"
HEADERS = {
"x-api-key": API_KEY,
"anthropic-version": "2023-06-01",
"content-type": "application/json"
}
payload = {
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"thinking": {"type": "enabled", "budget_tokens": 8000},
"messages": [{"role": "user", "content": "Explique comment faire des tests basés sur les propriétés en Python ; inclure du code d’exemple."}]
}
r = requests.post(URL, headers=HEADERS, json=payload)
r.raise_for_status()
resp = r.json()
# Analyser les blocs
for block in resp.get("content", []):
if block.get("type") == "thinking":
thinking_summary = block.get("thinking")
print("=== RÉFLEXION (résumé) ===")
print(thinking_summary[:1000]) # tronquer pour les logs
print("signature :", block.get("signature")[:64], "...")
elif block.get("type") == "text":
print("=== TEXTE FINAL ===")
print(block.get("text"))
Ce code extrait et affiche le résumé de la réflexion ainsi que la réponse finale. Si vous devez préserver la continuité dans des flux agentiques multi-tours, incluez les blocs de réflexion non modifiés dans le tableau messages de la requête suivante (voir l’exemple suivant).
Exemple 3 — réutiliser des blocs de réflexion dans un flux multi-tours (pseudo Python)
# Après la réponse initiale (resp ci-dessus) :
# Ajouter le message assistant incluant le bloc de réflexion dans la conversation
assistant_message = {
"role": "assistant",
"content": resp["content"] # inclure le tableau de contenu brut (contient des blocs de réflexion + texte)
}
# Tour utilisateur suivant : poser une question de suivi et inclure le message assistant précédent
payload2 = {
"model": "claude-opus-4-5", # Opus préserve mieux les blocs de réflexion d’un tour à l’autre
"max_tokens": 20000,
"thinking": {"type": "enabled", "budget_tokens": 12000},
"messages": [
{"role": "user", "content": "Adaptez maintenant la logique de validation pour un pipeline Avro."},
assistant_message
]
}
r2 = requests.post(URL, headers=HEADERS, json=payload2)
Préserver exactement les blocs de réflexion non modifiés est essentiel lors de workflows intégrant des outils ou pour des agents longue durée. Opus 4.5 dispose de meilleurs paramètres par défaut pour la préservation et la mise en cache des blocs de réflexion.
Comment diffuser en streaming les sorties de réflexion et afficher la progression dans une UI ?
Bonnes pratiques de streaming
- Utilisez les endpoints de streaming des SDK (les SDK Python/TypeScript fournissent des helpers). Pour les tâches de raisonnement longues ou à budget élevé, le streaming évite les timeouts HTTP et vous donne du texte partiel au fur et à mesure du calcul. Le code typique utilise un itérateur sur
text_stream(Python) ou un parsing d’événements (JS). - Attendez parfois des flux en deux phases : le modèle peut d’abord produire des fragments de raisonnement visibles, puis finaliser avec la réponse. Concevez votre UI pour gérer un contenu fragmenté et afficher des états « réflexion… » vs réponse finale.
- Si l’API renvoie un
signature_deltaoucontent_block_deltalors du streaming, capturez-le et attachez-le aux appels suivants comme l’exige la spécification.
Si vous devez afficher la progression du raisonnement intermédiaire dans une UI, streamez la réponse. Le serveur émettra des événements thinking_delta suivis d’événements text_delta.
curl https://api.cometapi.com/v1/messages \
--header "x-api-key: $CometAPI_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data '{
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"stream": true,
"thinking": { "type": "enabled", "budget_tokens": 8000 },
"messages": [ { "role": "user", "content": "Guide-moi dans le débogage de ce test unitaire en échec et propose des correctifs." } ]
}'
En streaming, traitez les événements content_block_start, content_block_delta (qui incluent thinking_delta et text_delta) et content_block_stop dans l’ordre. C’est ainsi que vous pouvez afficher le raisonnement pas à pas du modèle au fil de l’eau.
Comment Claude Code interagit-il avec le mode de réflexion ? (terminal + VS Code)
Claude Code est un terminal de codage interactif et agentique intégrant l’API Messages et des exécuteurs d’outils. L’expérience CLI/IDE expose la réflexion de deux manières :
- Paramètres globaux / par session : Claude Code propose un panneau de paramètres
/configpour ajuster le comportement (comment l’agent demande des permissions, s’il faut préserver les blocs de réflexion, etc.). Utilisez cette UI plutôt que de retaper du JSON brut si vous voulez un changement persistant. - Sélection du modèle et commandes CLI : vous pouvez choisir
claude-sonnet-4-5ouclaude-opus-4-5comme modèle actif dans le REPL ; les outils et le comportement de réflexion suivent alors la sémantique de l’API Messages. Le CHANGELOG et les notes de version indiquent que la réflexion est désormais activée par défaut pour certains déploiements Opus 4.5 et que la configuration de réflexion est exposée via/config.
Flux pratique dans Claude Code :
- Démarrez un projet dans le REPL.
- Utilisez
/configpour inspecter les flags liés à la réflexion (préservation, verbosité, etc.). - Demandez à l’agent d’exécuter une tâche longue — il produira du contenu de réflexion et, si nécessaire, demandera une permission pour certaines étapes bash. Préservez les blocs de réflexion lorsque vous avez besoin de vérifier ou de rejouer les décisions plus tard.
Installation et configuration
Claude Code requiert Node.js et peut être installé globalement.
# Installer le CLI Claude Code
npm install -g @anthropic/claude-code
# Authentification
claude-code --init
Activer la réflexion dans le terminal
Claude Code prend en charge divers flags et déclencheurs en langage naturel pour contrôler la profondeur du raisonnement.
| Commande/Déclencheur | Description |
|---|---|
| claude-code --think | Démarre une session avec la réflexion étendue activée par défaut. |
| claude-code --model sonnet-4.5 | Spécifie le dernier modèle de pointe. |
| /think | Une commande « slash » dans la CLI pour invoquer une tâche particulièrement gourmande en réflexion. |
| « ultrathink » | Un mot-clé en langage naturel qui indique à Claude d’utiliser le budget de raisonnement maximal. |
Conseils :
- Utilisez « think » / « think harder » lorsque vous souhaitez que l’agent explore des implémentations alternatives.
- Lorsque Claude Code effectue des appels d’outils (exécution de tests, opérations git), préservez les blocs de
thinkingsi la CLI/l’agent les renvoie ; sinon l’agent peut perdre le contexte entre les étapes.
Avantages de la réflexion entrelacée et de la préservation des blocs
Pour des workflows agentiques avancés, Claude 4.5 introduit deux fonctionnalités bêta qui améliorent significativement les interactions multi-tours et l’utilisation d’outils : la réflexion entrelacée et la préservation des blocs de réflexion.
Réflexion entrelacée (bêta)
Le raisonnement standard se produit une fois avant la sortie. La réflexion entrelacée (activée via l’en-tête interleaved-thinking-2025-05-14) permet à Claude de « réfléchir » entre les appels d’outils.
Imaginez que Claude débogue un serveur :
- Réfléchir : « Je devrais d’abord vérifier les logs. »
- Appel d’outil :
read_file(logs.txt) - Réfléchir : « Les logs indiquent un timeout base de données. Je dois maintenant vérifier les paramètres du pool de connexions. »
- Appel d’outil :
read_file(db_config.yml)
Cette « réflexion continue » garantit que le modèle adapte sa stratégie sur la base des données reçues des outils, plutôt que de suivre un plan rigide prédéfini.
Préservation des blocs de réflexion
Dans des conversations multi-tours, en particulier celles impliquant des outils, il est crucial de renvoyer les blocs thinking précédents à l’API.
- Continuité du raisonnement : en recevant ses réflexions antérieures, Claude maintient le contexte logique de son cheminement.
- Optimisation Opus 4.5 : dans Claude Opus 4.5, ce comportement est automatisé. Le modèle préserve par défaut tous les blocs de réflexion précédents dans son contexte, garantissant que, même lors de sessions de plus de 30 heures, il n’« oublie » pas pourquoi il a pris certaines décisions d’architecture dix tours plus tôt.
Bonnes pratiques pour utiliser le mode de réflexion avec Claude 4.5
Choisissez le bon modèle et le bon budget pour la tâche
Utilisez Sonnet 4.5 pour le codage et les workflows agentiques lorsque vous avez besoin du meilleur compromis entre vitesse, coût et fortes capacités de codage ; utilisez Opus 4.5 pour le raisonnement le plus profond et les plus grandes fenêtres de contexte ou lorsque vous prévoyez d’exécuter de longues sessions autonomes. Les deux prennent en charge la réflexion étendue. Choisissez budget_tokens proportionnellement à la complexité de la tâche (commencez petit pour l’expérimentation ; augmentez le budget uniquement si vous observez des améliorations de qualité significatives).
Surveillez et contrôlez le coût et la latence
Vous êtes facturé pour l’intégralité des tokens de réflexion produits par Claude, pas pour la sortie résumée que vous recevez. Cela signifie que de longues délibérations internes augmentent le coût même si vous ne voyez qu’un court résumé. Suivez l’utilisation des tokens et envisagez un réglage progressif (par exemple : 2k → 8k → 32k) lors du passage de l’exploration à la production.
Préservez les blocs de réflexion uniquement si nécessaire
Les blocs de réflexion peuvent être signés cryptographiquement et conservés pour une vérification ultérieure et pour un usage entrelacé avec des outils. Évitez de réinjecter les blocs de réflexion à chaque requête suivante, sauf si votre workflow exige que le modèle conserve ses délibérations internes (par exemple, lorsqu’un agent va relancer des étapes et a besoin des justifications préservées). Préserver en permanence la réflexion augmente le volume de contexte et peut compliquer la comptabilisation des tokens.
Quand diffuser la réflexion aux utilisateurs
Le streaming de la réflexion est excellent pour les outils développeur et les UI éducatives (afficher « travail en cours » pendant que le modèle délibère). Ne diffusez pas de réflexion brute aux utilisateurs finaux d’applications grand public sans considérer la sécurité et le caviardage : la réflexion résumée existe précisément pour cette raison. Si vous streamez, fournissez des éléments d’UI qui étiquettent le raisonnement interne (par ex., « Raisonnement de l’assistant — interne »), et contrôlez si l’utilisateur final voit le résumé ou la réflexion complète.
Utilisation d’outils et réflexion entrelacée
Lors de la combinaison de la réflexion avec des outils (exécution de code, récupération web, processus locaux), utilisez la conception de réflexion entrelacée lorsque vous avez besoin que le modèle sélectionne des outils, les exécute et raisonne sur les résultats dans le même tour. L’entrelacement augmente la complexité (et peut nécessiter des feature flags) mais est puissant pour l’automatisation agentique. Soyez explicite sur la réflexion que vous préservez et testez la manière dont le modèle sélectionne les outils lors d’une exécution avec réflexion activée.
Dépannage pratique et notes opérationnelles
Erreurs courantes et leur signification
- Réflexion invalide + choix d’outil forcé : si vous demandez la réflexion mais forcez également des modes d’utilisation d’outils incompatibles avec la réflexion, l’API renverra une erreur — n’associez pas un
tool_choice: {"type":"tool","name":"..."}forcé avec la réflexion. - Budget > max_tokens : pour les scénarios de réflexion entrelacée, les règles effectives sur les tokens diffèrent — la documentation de la plateforme explique quand
budget_tokenspeut dépassermax_tokens. Lisez attentivement la section « interleaved thinking » avant de tester de gros budgets. - Validation de signature : si vous préservez des blocs de réflexion pour des appels ultérieurs, incluez la
signaturerenvoyée afin que l’API puisse vérifier qu’ils proviennent de Claude ; cela empêche la falsification et maintient une chaîne vérifiable.
Observabilité et instrumentation
Journalisez : (1) la sélection du model, (2) thinking.budget_tokens, (3) la consommation réelle de tokens de réflexion (vous êtes facturé pour cela), (4) les latences de streaming (temps jusqu’au premier thinking_delta) et (5) les tokens du texte final. Utilisez ces métriques pour établir des budgets et des SLO pour les flux côté utilisateur.
Déploiement progressif et humain dans la boucle
Déployez les modèles avec réflexion activée derrière des feature flags. Commencez avec un pourcentage de trafic développeur ou interne, collectez les échecs ou caviardages, et itérez sur les prompts et les budgets. Pour les domaines sensibles, exigez un examen humain des sorties qui incluent un raisonnement interne substantiel avant diffusion.
Conseils de débogage
- Commencez petit : activez un
budget_tokensfaible et augmentez progressivement pour comprendre les améliorations incrémentales. - Activez le streaming et journalisez les événements
content_block_delta/ signature pour comprendre quand le modèle produit des blocs de réflexion. - Si vous utilisez Claude Code : vérifiez
/configet les paramètres au niveau du projet ; consultez le changelog de Claude Code si le comportement ne correspond pas aux valeurs par défaut attendues.
Conclusion :
Claude 4.5, combiné à la puissance de l’Extended Thinking et du CLI Claude Code, représente le bond le plus significatif en productivité développeur depuis l’invention de l’IDE. En permettant au modèle de « montrer son travail » et de délibérer sur des problèmes complexes, Anthropic dépasse l’ère du « chatbot » pour entrer dans l’ère « agentique ».
Que vous intégriez l’API Messages dans un outil développeur personnalisé ou que vous utilisiez Claude Code pour gérer vos PR quotidiennes, maîtriser le mode de réflexion est essentiel. Il fournit la transparence nécessaire à la confiance et la profondeur de raisonnement nécessaire à l’excellence.
Les développeurs peuvent accéder au modèle Claude 4.5 (Claude Sonnet 4.5, Claude Haiku 4.5, Claude Opus 4.5) via CometAPI. Pour commencer, explorez les capacités des modèles sur CometAPI dans le Playground et consultez le guide API pour des instructions détaillées. Avant d’y accéder, assurez-vous de vous être connecté à CometAPI et d’avoir obtenu la clé API. CometAPI propose un prix bien inférieur au tarif officiel pour vous aider à intégrer.
Prêt à démarrer ? → Essai gratuit de Claude 4.5 !
