La réflexion étendue donne à Claude des capacités de raisonnement améliorées pour les tâches complexes, tout en fournissant différents niveaux de transparence dans son processus de réflexion étape par étape avant de livrer sa réponse finale.
La réflexion étendue donne à Claude des capacités de raisonnement améliorées pour les tâches complexes, tout en fournissant différents niveaux de transparence dans son processus de réflexion étape par étape avant de livrer sa réponse finale.
La réflexion étendue est supportée dans les modèles suivants :
claude-sonnet-4-5-20250929)claude-sonnet-4-20250514)claude-3-7-sonnet-20250219) (déprécié)claude-haiku-4-5-20251001)claude-opus-4-5-20251101)claude-opus-4-1-20250805)claude-opus-4-20250514)Le comportement de l'API diffère entre les modèles Claude Sonnet 3.7 et Claude 4, mais les formes d'API restent exactement les mêmes.
Pour plus d'informations, voir Différences de réflexion entre les versions de modèles.
La réflexion étendue donne à Claude des capacités de raisonnement améliorées pour les tâches complexes, tout en fournissant différents niveaux de transparence dans son processus de réflexion étape par étape avant de livrer sa réponse finale.
La réflexion étendue est supportée dans les modèles suivants :
claude-sonnet-4-5-20250929)claude-sonnet-4-20250514)claude-3-7-sonnet-20250219) (déprécié)claude-haiku-4-5-20251001)claude-opus-4-5-20251101)claude-opus-4-1-20250805)claude-opus-4-20250514)Le comportement de l'API diffère entre les modèles Claude Sonnet 3.7 et Claude 4, mais les formes d'API restent exactement les mêmes.
Pour plus d'informations, voir Différences de réflexion entre les versions de modèles.
Lorsque la réflexion étendue est activée, Claude crée des blocs de contenu thinking où il produit son raisonnement interne. Claude intègre les idées de ce raisonnement avant de formuler une réponse finale.
La réponse de l'API inclura des blocs de contenu thinking, suivis de blocs de contenu text.
Voici un exemple du format de réponse par défaut :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Pour plus d'informations sur le format de réponse de la réflexion étendue, voir la Référence de l'API Messages.
La réflexion étendue donne à Claude des capacités de raisonnement améliorées pour les tâches complexes, tout en fournissant différents niveaux de transparence dans son processus de réflexion étape par étape avant de livrer sa réponse finale.
La réflexion étendue est supportée dans les modèles suivants :
claude-sonnet-4-5-20250929)claude-sonnet-4-20250514)claude-3-7-sonnet-20250219) (déprécié)claude-haiku-4-5-20251001)claude-opus-4-5-20251101)claude-opus-4-1-20250805)claude-opus-4-20250514)Le comportement de l'API diffère entre les modèles Claude Sonnet 3.7 et Claude 4, mais les formes d'API restent exactement les mêmes.
Pour plus d'informations, voir Différences de réflexion entre les versions de modèles.
Lorsque la réflexion étendue est activée, Claude crée des blocs de contenu thinking où il produit son raisonnement interne. Claude intègre les idées de ce raisonnement avant de formuler une réponse finale.
La réponse de l'API inclura des blocs de contenu thinking, suivis de blocs de contenu text.
Voici un exemple du format de réponse par défaut :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Pour plus d'informations sur le format de réponse de la réflexion étendue, voir la Référence de l'API Messages.
Voici un exemple d'utilisation de la réflexion étendue dans l'API Messages :
Pour activer la réflexion étendue, ajoutez un objet thinking, avec le paramètre type défini sur enabled et budget_tokens défini sur un budget de jetons spécifié pour la réflexion étendue.
Le paramètre budget_tokens détermine le nombre maximum de jetons que Claude est autorisé à utiliser pour son processus de raisonnement interne. Dans les modèles Claude 4, cette limite s'applique aux jetons de réflexion complète, et non à la sortie résumée. Des budgets plus importants peuvent améliorer la qualité des réponses en permettant une analyse plus approfondie pour les problèmes complexes, bien que Claude ne puisse pas utiliser l'intégralité du budget alloué, en particulier pour les plages supérieures à 32k.
budget_tokens doit être défini sur une valeur inférieure à max_tokens. Cependant, lors de l'utilisation de la réflexion entrelacée avec des outils, vous pouvez dépasser cette limite car la limite de jetons devient votre fenêtre de contexte entière (200k jetons).
La réflexion étendue donne à Claude des capacités de raisonnement améliorées pour les tâches complexes, tout en fournissant différents niveaux de transparence dans son processus de réflexion étape par étape avant de livrer sa réponse finale.
La réflexion étendue est supportée dans les modèles suivants :
claude-sonnet-4-5-20250929)claude-sonnet-4-20250514)claude-3-7-sonnet-20250219) (déprécié)claude-haiku-4-5-20251001)claude-opus-4-5-20251101)claude-opus-4-1-20250805)claude-opus-4-20250514)Le comportement de l'API diffère entre les modèles Claude Sonnet 3.7 et Claude 4, mais les formes d'API restent exactement les mêmes.
Pour plus d'informations, voir Différences de réflexion entre les versions de modèles.
Lorsque la réflexion étendue est activée, Claude crée des blocs de contenu thinking où il produit son raisonnement interne. Claude intègre les idées de ce raisonnement avant de formuler une réponse finale.
La réponse de l'API inclura des blocs de contenu thinking, suivis de blocs de contenu text.
Voici un exemple du format de réponse par défaut :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Pour plus d'informations sur le format de réponse de la réflexion étendue, voir la Référence de l'API Messages.
Voici un exemple d'utilisation de la réflexion étendue dans l'API Messages :
Pour activer la réflexion étendue, ajoutez un objet thinking, avec le paramètre type défini sur enabled et budget_tokens défini sur un budget de jetons spécifié pour la réflexion étendue.
Le paramètre budget_tokens détermine le nombre maximum de jetons que Claude est autorisé à utiliser pour son processus de raisonnement interne. Dans les modèles Claude 4, cette limite s'applique aux jetons de réflexion complète, et non à la sortie résumée. Des budgets plus importants peuvent améliorer la qualité des réponses en permettant une analyse plus approfondie pour les problèmes complexes, bien que Claude ne puisse pas utiliser l'intégralité du budget alloué, en particulier pour les plages supérieures à 32k.
budget_tokens doit être défini sur une valeur inférieure à max_tokens. Cependant, lors de l'utilisation de la réflexion entrelacée avec des outils, vous pouvez dépasser cette limite car la limite de jetons devient votre fenêtre de contexte entière (200k jetons).
Avec la réflexion étendue activée, l'API Messages pour les modèles Claude 4 retourne un résumé du processus de réflexion complet de Claude. La réflexion résumée fournit tous les avantages en termes d'intelligence de la réflexion étendue, tout en prévenant les abus.
Voici quelques considérations importantes pour la réflexion résumée :
Claude Sonnet 3.7 continue de retourner la sortie de réflexion complète.
Dans les rares cas où vous avez besoin d'accès à la sortie de réflexion complète pour les modèles Claude 4, contactez notre équipe commerciale.
La réflexion étendue donne à Claude des capacités de raisonnement améliorées pour les tâches complexes, tout en fournissant différents niveaux de transparence dans son processus de réflexion étape par étape avant de livrer sa réponse finale.
La réflexion étendue est supportée dans les modèles suivants :
claude-sonnet-4-5-20250929)claude-sonnet-4-20250514)claude-3-7-sonnet-20250219) (déprécié)claude-haiku-4-5-20251001)claude-opus-4-5-20251101)claude-opus-4-1-20250805)claude-opus-4-20250514)Le comportement de l'API diffère entre les modèles Claude Sonnet 3.7 et Claude 4, mais les formes d'API restent exactement les mêmes.
Pour plus d'informations, voir Différences de réflexion entre les versions de modèles.
Lorsque la réflexion étendue est activée, Claude crée des blocs de contenu thinking où il produit son raisonnement interne. Claude intègre les idées de ce raisonnement avant de formuler une réponse finale.
La réponse de l'API inclura des blocs de contenu thinking, suivis de blocs de contenu text.
Voici un exemple du format de réponse par défaut :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Pour plus d'informations sur le format de réponse de la réflexion étendue, voir la Référence de l'API Messages.
Voici un exemple d'utilisation de la réflexion étendue dans l'API Messages :
Pour activer la réflexion étendue, ajoutez un objet thinking, avec le paramètre type défini sur enabled et budget_tokens défini sur un budget de jetons spécifié pour la réflexion étendue.
Le paramètre budget_tokens détermine le nombre maximum de jetons que Claude est autorisé à utiliser pour son processus de raisonnement interne. Dans les modèles Claude 4, cette limite s'applique aux jetons de réflexion complète, et non à la sortie résumée. Des budgets plus importants peuvent améliorer la qualité des réponses en permettant une analyse plus approfondie pour les problèmes complexes, bien que Claude ne puisse pas utiliser l'intégralité du budget alloué, en particulier pour les plages supérieures à 32k.
budget_tokens doit être défini sur une valeur inférieure à max_tokens. Cependant, lors de l'utilisation de la réflexion entrelacée avec des outils, vous pouvez dépasser cette limite car la limite de jetons devient votre fenêtre de contexte entière (200k jetons).
Avec la réflexion étendue activée, l'API Messages pour les modèles Claude 4 retourne un résumé du processus de réflexion complet de Claude. La réflexion résumée fournit tous les avantages en termes d'intelligence de la réflexion étendue, tout en prévenant les abus.
Voici quelques considérations importantes pour la réflexion résumée :
Claude Sonnet 3.7 continue de retourner la sortie de réflexion complète.
Dans les rares cas où vous avez besoin d'accès à la sortie de réflexion complète pour les modèles Claude 4, contactez notre équipe commerciale.
Vous pouvez diffuser les réponses de réflexion étendue en utilisant les événements envoyés par le serveur (SSE).
Lorsque la diffusion en continu est activée pour la réflexion étendue, vous recevez le contenu de réflexion via les événements thinking_delta.
Pour plus de documentation sur la diffusion en continu via l'API Messages, voir Diffusion en continu des Messages.
Voici comment gérer la diffusion en continu avec la réflexion :
Exemple de sortie de diffusion en continu :
event: message_start
data: {"type": "message_start", "message": {"id": "msg_01...", "type": "message", "role": "assistant", "content": [], "model": "claude-sonnet-4-5", "stop_reason": null, "stop_sequence": null}}
event: content_block_start
data: {"type": "content_block_start", "index": 0, "content_block": {"type": "thinking", "thinking": ""}}
event: content_block_delta
data: {"type": "content_block_delta", "index": 0, "delta": {"type": "thinking_delta", "thinking": "Let me solve this step by step:\n\n1. First break down 27 * 453"}}
event: content_block_delta
data: {"type": "content_block_delta", "index": 0, "delta": {"type": "thinking_delta", "thinking": "\n2. 453 = 400 + 50 + 3"}}
// Additional thinking deltas...
event: content_block_delta
data: {"type": "content_block_delta", "index": 0, "delta": {"type": "signature_delta", "signature": "EqQBCgIYAhIM1gbcDa9GJwZA2b3hGgxBdjrkzLoky3dl1pkiMOYds..."}}
event: content_block_stop
data: {"type": "content_block_stop", "index": 0}
event: content_block_start
data: {"type": "content_block_start", "index": 1, "content_block": {"type": "text", "text": ""}}
event: content_block_delta
data: {"type": "content_block_delta", "index": 1, "delta": {"type": "text_delta", "text": "27 * 453 = 12,231"}}
// Additional text deltas...
event: content_block_stop
data: {"type": "content_block_stop", "index": 1}
event: message_delta
data: {"type": "message_delta", "delta": {"stop_reason": "end_turn", "stop_sequence": null}}
event: message_stop
data: {"type": "message_stop"}Lors de l'utilisation de la diffusion en continu avec la réflexion activée, vous pourriez remarquer que le texte arrive parfois en blocs plus importants alternant avec une livraison plus petite, jeton par jeton. C'est un comportement attendu, en particulier pour le contenu de réflexion.
Le système de diffusion en continu doit traiter le contenu par lots pour des performances optimales, ce qui peut entraîner ce modèle de livraison « fragmenté », avec des délais possibles entre les événements de diffusion en continu. Nous travaillons continuellement à l'amélioration de cette expérience, avec des mises à jour futures axées sur la diffusion en continu plus fluide du contenu de réflexion.
La pensée étendue donne à Claude des capacités de raisonnement améliorées pour les tâches complexes, tout en fournissant différents niveaux de transparence dans son processus de réflexion étape par étape avant de livrer sa réponse finale.
La pensée étendue est supportée dans les modèles suivants :
claude-sonnet-4-5-20250929)claude-sonnet-4-20250514)claude-3-7-sonnet-20250219) (déprécié)claude-haiku-4-5-20251001)claude-opus-4-5-20251101)claude-opus-4-1-20250805)claude-opus-4-20250514)Le comportement de l'API diffère entre les modèles Claude Sonnet 3.7 et Claude 4, mais les formes d'API restent exactement les mêmes.
Pour plus d'informations, voir Différences de pensée entre les versions de modèles.
Lorsque la pensée étendue est activée, Claude crée des blocs de contenu thinking où il produit son raisonnement interne. Claude intègre les idées de ce raisonnement avant de formuler une réponse finale.
La réponse de l'API inclura des blocs de contenu thinking, suivis de blocs de contenu text.
Voici un exemple du format de réponse par défaut :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Pour plus d'informations sur le format de réponse de la pensée étendue, voir la Référence de l'API Messages.
Voici un exemple d'utilisation de la pensée étendue dans l'API Messages :
Pour activer la pensée étendue, ajoutez un objet thinking, avec le paramètre type défini sur enabled et le budget_tokens défini sur un budget de jetons spécifié pour la pensée étendue.
Le paramètre budget_tokens détermine le nombre maximum de jetons que Claude est autorisé à utiliser pour son processus de raisonnement interne. Dans les modèles Claude 4, cette limite s'applique aux jetons de pensée complète, et non à la sortie résumée. Des budgets plus importants peuvent améliorer la qualité des réponses en permettant une analyse plus approfondie pour les problèmes complexes, bien que Claude ne puisse pas utiliser l'intégralité du budget alloué, en particulier pour les plages supérieures à 32k.
budget_tokens doit être défini sur une valeur inférieure à max_tokens. Cependant, lors de l'utilisation de la pensée entrelacée avec des outils, vous pouvez dépasser cette limite car la limite de jetons devient votre fenêtre de contexte entière (200k jetons).
Avec la pensée étendue activée, l'API Messages pour les modèles Claude 4 retourne un résumé du processus de pensée complet de Claude. La pensée résumée fournit tous les avantages en intelligence de la pensée étendue, tout en prévenant les abus.
Voici quelques considérations importantes pour la pensée résumée :
Claude Sonnet 3.7 continue de retourner la sortie de pensée complète.
Dans les rares cas où vous avez besoin d'accès à la sortie de pensée complète pour les modèles Claude 4, contactez notre équipe commerciale.
Vous pouvez diffuser les réponses de pensée étendue en utilisant les événements envoyés par le serveur (SSE).
Lorsque la diffusion en continu est activée pour la pensée étendue, vous recevez le contenu de pensée via les événements thinking_delta.
Pour plus de documentation sur la diffusion en continu via l'API Messages, voir Diffusion en continu des Messages.
Voici comment gérer la diffusion en continu avec la pensée :
Exemple de sortie de diffusion en continu :
event: message_start
data: {"type": "message_start", "message": {"id": "msg_01...", "type": "message", "role": "assistant", "content": [], "model": "claude-sonnet-4-5", "stop_reason": null, "stop_sequence": null}}
event: content_block_start
data: {"type": "content_block_start", "index": 0, "content_block": {"type": "thinking", "thinking": ""}}
event: content_block_delta
data: {"type": "content_block_delta", "index": 0, "delta": {"type": "thinking_delta", "thinking": "Let me solve this step by step:\n\n1. First break down 27 * 453"}}
event: content_block_delta
data: {"type": "content_block_delta", "index": 0, "delta": {"type": "thinking_delta", "thinking": "\n2. 453 = 400 + 50 + 3"}}
// Additional thinking deltas...
event: content_block_delta
data: {"type": "content_block_delta", "index": 0, "delta": {"type": "signature_delta", "signature": "EqQBCgIYAhIM1gbcDa9GJwZA2b3hGgxBdjrkzLoky3dl1pkiMOYds..."}}
event: content_block_stop
data: {"type": "content_block_stop", "index": 0}
event: content_block_start
data: {"type": "content_block_start", "index": 1, "content_block": {"type": "text", "text": ""}}
event: content_block_delta
data: {"type": "content_block_delta", "index": 1, "delta": {"type": "text_delta", "text": "27 * 453 = 12,231"}}
// Additional text deltas...
event: content_block_stop
data: {"type": "content_block_stop", "index": 1}
event: message_delta
data: {"type": "message_delta", "delta": {"stop_reason": "end_turn", "stop_sequence": null}}
event: message_stop
data: {"type": "message_stop"}Lors de l'utilisation de la diffusion en continu avec la pensée activée, vous pourriez remarquer que le texte arrive parfois en plus gros morceaux alternant avec une livraison plus petite, jeton par jeton. C'est un comportement attendu, en particulier pour le contenu de pensée.
Le système de diffusion en continu doit traiter le contenu par lots pour des performances optimales, ce qui peut entraîner ce modèle de livraison « fragmentée », avec des délais possibles entre les événements de diffusion en continu. Nous travaillons continuellement à l'amélioration de cette expérience, avec des mises à jour futures axées sur la diffusion en continu plus fluide du contenu de pensée.
La pensée étendue peut être utilisée aux côtés de l'utilisation d'outils, permettant à Claude de raisonner sur la sélection d'outils et le traitement des résultats.
Lors de l'utilisation de la pensée étendue avec l'utilisation d'outils, soyez conscient des limitations suivantes :
Limitation du choix d'outil : L'utilisation d'outils avec la pensée ne supporte que tool_choice: {"type": "auto"} (la valeur par défaut) ou tool_choice: {"type": "none"}. L'utilisation de tool_choice: {"type": "any"} ou tool_choice: {"type": "tool", "name": "..."} entraînera une erreur car ces options forcent l'utilisation d'outils, ce qui est incompatible avec la pensée étendue.
Préservation des blocs de pensée : Lors de l'utilisation d'outils, vous devez repasser les blocs thinking à l'API pour le dernier message de l'assistant. Incluez le bloc complet non modifié à l'API pour maintenir la continuité du raisonnement.
Vous ne pouvez pas basculer la pensée au milieu d'un tour d'assistant, y compris pendant les boucles d'utilisation d'outils. Le tour d'assistant entier doit fonctionner dans un seul mode de pensée :
Du point de vue du modèle, les boucles d'utilisation d'outils font partie du tour d'assistant. Un tour d'assistant ne se termine pas jusqu'à ce que Claude termine sa réponse complète, qui peut inclure plusieurs appels d'outils et résultats.
Par exemple, cette séquence fait partie d'un seul tour d'assistant :
User: "What's the weather in Paris?"
Assistant: [thinking] + [tool_use: get_weather]
User: [tool_result: "20°C, sunny"]
Assistant: [text: "The weather in Paris is 20°C and sunny"]Bien qu'il y ait plusieurs messages d'API, la boucle d'utilisation d'outils fait conceptuellement partie d'une réponse d'assistant continue.
Vous pourriez rencontrer cette erreur :
Expected `thinking` or `redacted_thinking`, but found `tool_use`.
When `thinking` is enabled, a final `assistant` message must start
with a thinking block (preceding the lastmost set of `tool_use` and
`tool_result` blocks).Cela se produit généralement lorsque :
✗ Invalide : Basculer la pensée immédiatement après l'utilisation d'outils
User: "What's the weather?"
Assistant: [tool_use] (thinking disabled)
User: [tool_result]
// Cannot enable thinking here - still in the same assistant turn✓ Valide : Terminer d'abord le tour d'assistant
User: "What's the weather?"
Assistant: [tool_use] (thinking disabled)
User: [tool_result]
Assistant: [text: "It's sunny"]
User: "What about tomorrow?" (thinking disabled)
Assistant: [thinking] + [text: "..."] (thinking enabled - new turn)Meilleure pratique : Planifiez votre stratégie de pensée au début de chaque tour plutôt que d'essayer de basculer en milieu de tour.
Le basculement des modes de pensée invalide également la mise en cache des invites pour l'historique des messages. Pour plus de détails, voir la section Pensée étendue avec mise en cache des invites.
Vous ne pouvez pas basculer la réflexion au milieu d'un tour d'assistant, y compris pendant les boucles d'utilisation d'outils. Le tour d'assistant entier doit fonctionner dans un seul mode de réflexion :
Du point de vue du modèle, les boucles d'utilisation d'outils font partie du tour d'assistant. Un tour d'assistant ne se termine pas jusqu'à ce que Claude termine sa réponse complète, qui peut inclure plusieurs appels d'outils et résultats.
Par exemple, cette séquence fait partie d'un seul tour d'assistant :
User: "What's the weather in Paris?"
Assistant: [thinking] + [tool_use: get_weather]
User: [tool_result: "20°C, sunny"]
Assistant: [text: "The weather in Paris is 20°C and sunny"]Bien qu'il y ait plusieurs messages API, la boucle d'utilisation d'outils fait conceptuellement partie d'une seule réponse d'assistant continue.
Vous pourriez rencontrer cette erreur :
Expected `thinking` or `redacted_thinking`, but found `tool_use`.
When `thinking` is enabled, a final `assistant` message must start
with a thinking block (preceding the lastmost set of `tool_use` and
`tool_result` blocks).Cela se produit généralement lorsque :
✗ Invalide : Basculer la réflexion immédiatement après l'utilisation d'outils
User: "What's the weather?"
Assistant: [tool_use] (thinking disabled)
User: [tool_result]
// Cannot enable thinking here - still in the same assistant turn✓ Valide : Terminer d'abord le tour d'assistant
User: "What's the weather?"
Assistant: [tool_use] (thinking disabled)
User: [tool_result]
Assistant: [text: "It's sunny"]
User: "What about tomorrow?" (thinking disabled)
Assistant: [thinking] + [text: "..."] (thinking enabled - new turn)Meilleure pratique : Planifiez votre stratégie de réflexion au début de chaque tour plutôt que d'essayer de basculer en milieu de tour.
Basculer les modes de réflexion invalide également la mise en cache des invites pour l'historique des messages. Pour plus de détails, consultez la section Réflexion étendue avec mise en cache des invites.
Pendant l'utilisation d'outils, vous devez transmettre les blocs de thinking à l'API, et vous devez inclure le bloc complet non modifié à l'API. Ceci est critique pour maintenir le flux de raisonnement du modèle et l'intégrité de la conversation.
Bien que vous puissiez omettre les blocs de thinking des tours précédents du rôle assistant, nous suggérons de toujours transmettre tous les blocs de réflexion à l'API pour toute conversation multi-tours. L'API va :
Lorsque vous basculez les modes de réflexion pendant une conversation, n'oubliez pas que le tour d'assistant entier (y compris les boucles d'utilisation d'outils) doit fonctionner dans un seul mode de réflexion. Pour plus de détails, consultez Basculer les modes de réflexion dans les conversations.
Lorsque Claude invoque des outils, il met en pause la construction de sa réponse pour attendre des informations externes. Lorsque les résultats des outils sont retournés, Claude continuera à construire cette réponse existante. Cela nécessite de préserver les blocs de réflexion pendant l'utilisation d'outils, pour plusieurs raisons :
Continuité du raisonnement : Les blocs de réflexion capturent le raisonnement étape par étape de Claude qui a conduit aux demandes d'outils. Lorsque vous publiez les résultats des outils, inclure la réflexion originale garantit que Claude peut continuer son raisonnement à partir du point où il s'était arrêté.
Maintenance du contexte : Bien que les résultats des outils apparaissent comme des messages utilisateur dans la structure de l'API, ils font partie d'un flux de raisonnement continu. Préserver les blocs de réflexion maintient ce flux conceptuel à travers plusieurs appels API. Pour plus d'informations sur la gestion du contexte, consultez notre guide sur les fenêtres de contexte.
Important : Lorsque vous fournissez des blocs de thinking, la séquence entière de blocs de thinking consécutifs doit correspondre aux résultats générés par le modèle lors de la demande originale ; vous ne pouvez pas réorganiser ou modifier la séquence de ces blocs.
La pensée étendue avec utilisation d'outils dans les modèles Claude 4 prend en charge la pensée entrelacée, qui permet à Claude de réfléchir entre les appels d'outils et de faire un raisonnement plus sophistiqué après avoir reçu les résultats des outils.
Avec la pensée entrelacée, Claude peut :
Pour activer la pensée entrelacée, ajoutez l'en-tête bêta interleaved-thinking-2025-05-14 à votre demande d'API.
Voici quelques considérations importantes pour la pensée entrelacée :
budget_tokens peut dépasser le paramètre max_tokens, car il représente le budget total sur tous les blocs de pensée dans un tour d'assistant.interleaved-thinking-2025-05-14.interleaved-thinking-2025-05-14 dans les demandes à n'importe quel modèle, sans effet.interleaved-thinking-2025-05-14 à n'importe quel modèle autre que Claude Opus 4.5, Claude Opus 4.1, Opus 4 ou Sonnet 4, votre demande échouera.La mise en cache des invites avec pensée a plusieurs considérations importantes :
Les tâches de pensée étendue prennent souvent plus de 5 minutes pour se terminer. Envisagez d'utiliser la durée de cache d'une heure pour maintenir les accès au cache sur les sessions de pensée plus longues et les flux de travail multi-étapes.
Suppression du contexte des blocs de pensée
Modèles d'invalidation du cache
Bien que les blocs de pensée soient supprimés pour la mise en cache et les calculs de contexte, ils doivent être préservés lors de la continuation des conversations avec utilisation d'outils, en particulier avec pensée entrelacée.
Prompt caching avec thinking a plusieurs considérations importantes :
Les tâches extended thinking prennent souvent plus de 5 minutes pour se terminer. Envisagez d'utiliser la durée de cache d'1 heure pour maintenir les accès au cache lors de sessions de thinking plus longues et de workflows multi-étapes.
Suppression du contexte des blocs de thinking
Modèles d'invalidation du cache
Bien que les blocs de thinking soient supprimés pour la mise en cache et les calculs de contexte, ils doivent être préservés lors de la continuation de conversations avec utilisation d'outils, en particulier avec interleaved thinking.
Lors de l'utilisation de extended thinking avec utilisation d'outils, les blocs de thinking présentent un comportement de mise en cache spécifique qui affecte le comptage des jetons :
Comment cela fonctionne :
Flux d'exemple détaillé :
Requête 1 :
User: "What's the weather in Paris?"Réponse 1 :
[thinking_block_1] + [tool_use block 1]Requête 2 :
User: ["What's the weather in Paris?"],
Assistant: [thinking_block_1] + [tool_use block 1],
User: [tool_result_1, cache=True]Réponse 2 :
[thinking_block_2] + [text block 2]La requête 2 écrit un cache du contenu de la requête (pas la réponse). Le cache inclut le message utilisateur original, le premier bloc de thinking, le bloc d'utilisation d'outils et le résultat de l'outil.
Requête 3 :
User: ["What's the weather in Paris?"],
Assistant: [thinking_block_1] + [tool_use block 1],
User: [tool_result_1, cache=True],
Assistant: [thinking_block_2] + [text block 2],
User: [Text response, cache=True]Pour Claude Opus 4.5 et versions ultérieures, tous les blocs de thinking précédents sont conservés par défaut. Pour les modèles plus anciens, parce qu'un bloc utilisateur non-résultat d'outil a été inclus, tous les blocs de thinking précédents sont ignorés. Cette requête sera traitée de la même manière que :
User: ["What's the weather in Paris?"],
Assistant: [tool_use block 1],
User: [tool_result_1, cache=True],
Assistant: [text block 2],
User: [Text response, cache=True]Points clés :
cache_control explicitesDans les modèles Claude plus anciens (antérieurs à Claude Sonnet 3.7), si la somme des jetons d'invite et de max_tokens dépassait la fenêtre de contexte du modèle, le système ajusterait automatiquement max_tokens pour s'adapter à la limite de contexte. Cela signifiait que vous pouviez définir une grande valeur max_tokens et le système la réduirait silencieusement selon les besoins.
Avec les modèles Claude 3.7 et 4, max_tokens (qui inclut votre budget de thinking lorsque thinking est activé) est appliqué comme une limite stricte. Le système retournera maintenant une erreur de validation si les jetons d'invite + max_tokens dépassent la taille de la fenêtre de contexte.
Vous pouvez consulter notre guide sur les fenêtres de contexte pour une exploration plus approfondie.
Dans les modèles Claude plus anciens (antérieurs à Claude Sonnet 3.7), si la somme des jetons d'invite et de max_tokens dépassait la fenêtre de contexte du modèle, le système ajusterait automatiquement max_tokens pour s'adapter à la limite de contexte. Cela signifiait que vous pouviez définir une grande valeur max_tokens et le système la réduirait silencieusement selon les besoins.
Avec les modèles Claude 3.7 et 4, max_tokens (qui inclut votre budget de thinking lorsque thinking est activé) est appliqué comme une limite stricte. Le système retournera maintenant une erreur de validation si les jetons d'invite + max_tokens dépassent la taille de la fenêtre de contexte.
Vous pouvez consulter notre guide sur les fenêtres de contexte pour une exploration plus approfondie.
Lors du calcul de l'utilisation de la fenêtre de contexte avec thinking activé, il y a quelques considérations à connaître :
max_tokens pour ce tourLe diagramme ci-dessous démontre la gestion spécialisée des jetons lorsque extended thinking est activé :
La fenêtre de contexte effective est calculée comme :
context window =
(current input tokens - previous thinking tokens) +
(thinking tokens + encrypted thinking tokens + text output tokens)Nous recommandons d'utiliser l'API de comptage des jetons pour obtenir des comptages de jetons précis pour votre cas d'usage spécifique, en particulier lorsque vous travaillez avec des conversations multi-tours qui incluent thinking.
Dans les modèles Claude plus anciens (antérieurs à Claude Sonnet 3.7), si la somme des jetons d'invite et de max_tokens dépassait la fenêtre de contexte du modèle, le système ajusterait automatiquement max_tokens pour s'adapter à la limite de contexte. Cela signifiait que vous pouviez définir une grande valeur max_tokens et le système la réduirait silencieusement selon les besoins.
Avec les modèles Claude 3.7 et 4, max_tokens (qui inclut votre budget de thinking lorsque thinking est activé) est appliqué comme une limite stricte. Le système retournera maintenant une erreur de validation si les jetons d'invite + max_tokens dépassent la taille de la fenêtre de contexte.
Vous pouvez consulter notre guide sur les fenêtres de contexte pour une exploration plus approfondie.
Lors du calcul de l'utilisation de la fenêtre de contexte avec thinking activé, il y a quelques considérations à connaître :
max_tokens pour ce tourLe diagramme ci-dessous démontre la gestion spécialisée des jetons lorsque extended thinking est activé :
La fenêtre de contexte effective est calculée comme :
context window =
(current input tokens - previous thinking tokens) +
(thinking tokens + encrypted thinking tokens + text output tokens)Nous recommandons d'utiliser l'API de comptage des jetons pour obtenir des comptages de jetons précis pour votre cas d'usage spécifique, en particulier lorsque vous travaillez avec des conversations multi-tours qui incluent thinking.
Lors de l'utilisation de extended thinking avec utilisation d'outils, les blocs de thinking doivent être explicitement préservés et retournés avec les résultats des outils.
Le calcul de la fenêtre de contexte effective pour extended thinking avec utilisation d'outils devient :
context window =
(current input tokens + previous thinking tokens + tool use tokens) +
(thinking tokens + encrypted thinking tokens + text output tokens)Le diagramme ci-dessous illustre la gestion des jetons pour extended thinking avec utilisation d'outils :
Dans les modèles Claude plus anciens (antérieurs à Claude Sonnet 3.7), si la somme des jetons d'invite et de max_tokens dépassait la fenêtre de contexte du modèle, le système ajusterait automatiquement max_tokens pour s'adapter à la limite de contexte. Cela signifiait que vous pouviez définir une grande valeur max_tokens et le système la réduirait silencieusement selon les besoins.
Avec les modèles Claude 3.7 et 4, max_tokens (qui inclut votre budget de thinking lorsque thinking est activé) est appliqué comme une limite stricte. Le système retournera maintenant une erreur de validation si les jetons d'invite + max_tokens dépassent la taille de la fenêtre de contexte.
Vous pouvez consulter notre guide sur les fenêtres de contexte pour une exploration plus approfondie.
Lors du calcul de l'utilisation de la fenêtre de contexte avec thinking activé, il y a quelques considérations à connaître :
max_tokens pour ce tourLe diagramme ci-dessous démontre la gestion spécialisée des jetons lorsque extended thinking est activé :
La fenêtre de contexte effective est calculée comme :
context window =
(current input tokens - previous thinking tokens) +
(thinking tokens + encrypted thinking tokens + text output tokens)Nous recommandons d'utiliser l'API de comptage des jetons pour obtenir des comptages de jetons précis pour votre cas d'usage spécifique, en particulier lorsque vous travaillez avec des conversations multi-tours qui incluent thinking.
Lors de l'utilisation de extended thinking avec utilisation d'outils, les blocs de thinking doivent être explicitement préservés et retournés avec les résultats des outils.
Le calcul de la fenêtre de contexte effective pour extended thinking avec utilisation d'outils devient :
context window =
(current input tokens + previous thinking tokens + tool use tokens) +
(thinking tokens + encrypted thinking tokens + text output tokens)Le diagramme ci-dessous illustre la gestion des jetons pour extended thinking avec utilisation d'outils :
Compte tenu du comportement de la fenêtre de contexte et de max_tokens avec extended thinking pour les modèles Claude 3.7 et 4, vous devrez peut-être :
max_tokens à mesure que la longueur de votre invite changeCe changement a été apporté pour fournir un comportement plus prévisible et transparent, en particulier à mesure que les limites de jetons maximaux ont augmenté de manière significative.
Dans les anciens modèles Claude (antérieurs à Claude Sonnet 3.7), si la somme des jetons d'invite et de max_tokens dépassait la fenêtre de contexte du modèle, le système ajustait automatiquement max_tokens pour s'adapter à la limite de contexte. Cela signifiait que vous pouviez définir une grande valeur max_tokens et le système la réduirait silencieusement selon les besoins.
Avec les modèles Claude 3.7 et 4, max_tokens (qui inclut votre budget de réflexion lorsque la réflexion est activée) est appliqué comme une limite stricte. Le système retournera maintenant une erreur de validation si les jetons d'invite + max_tokens dépasse la taille de la fenêtre de contexte.
Vous pouvez consulter notre guide sur les fenêtres de contexte pour une plongée plus approfondie.
Lors du calcul de l'utilisation de la fenêtre de contexte avec la réflexion activée, il y a quelques considérations à connaître :
max_tokens pour ce tourLe diagramme ci-dessous illustre la gestion spécialisée des jetons lorsque la réflexion étendue est activée :
La fenêtre de contexte effective est calculée comme suit :
context window =
(current input tokens - previous thinking tokens) +
(thinking tokens + encrypted thinking tokens + text output tokens)Nous recommandons d'utiliser l'API de comptage des jetons pour obtenir des comptages de jetons précis pour votre cas d'usage spécifique, en particulier lorsque vous travaillez avec des conversations multi-tours qui incluent la réflexion.
Lors de l'utilisation de la réflexion étendue avec l'utilisation d'outils, les blocs de réflexion doivent être explicitement préservés et retournés avec les résultats des outils.
Le calcul de la fenêtre de contexte effective pour la réflexion étendue avec utilisation d'outils devient :
context window =
(current input tokens + previous thinking tokens + tool use tokens) +
(thinking tokens + encrypted thinking tokens + text output tokens)Le diagramme ci-dessous illustre la gestion des jetons pour la réflexion étendue avec utilisation d'outils :
Compte tenu du comportement de la fenêtre de contexte et de max_tokens avec la réflexion étendue pour les modèles Claude 3.7 et 4, vous devrez peut-être :
max_tokens à mesure que la longueur de votre invite changeCe changement a été apporté pour fournir un comportement plus prévisible et transparent, en particulier à mesure que les limites de jetons maximaux ont augmenté considérablement.
Le contenu complet de la réflexion est chiffré et retourné dans le champ signature. Ce champ est utilisé pour vérifier que les blocs de réflexion ont été générés par Claude lorsqu'ils sont renvoyés à l'API.
Il n'est strictement nécessaire de renvoyer les blocs de réflexion que lors de l'utilisation d'outils avec réflexion étendue. Sinon, vous pouvez omettre les blocs de réflexion des tours précédents, ou laisser l'API les supprimer pour vous si vous les renvoyez.
Si vous renvoyez des blocs de réflexion, nous recommandons de renvoyer tout tel que vous l'avez reçu pour la cohérence et pour éviter les problèmes potentiels.
Voici quelques considérations importantes sur le chiffrement de la réflexion :
signature_delta à l'intérieur d'un événement content_block_delta juste avant l'événement content_block_stop.signature sont considérablement plus longues dans les modèles Claude 4 que dans les modèles précédents.signature est un champ opaque et ne doit pas être interprété ou analysé - il existe uniquement à des fins de vérification.signature sont compatibles entre les plates-formes (APIs Claude, Amazon Bedrock, et Vertex AI). Les valeurs générées sur une plate-forme seront compatibles avec une autre.Occasionnellement, le raisonnement interne de Claude sera signalé par nos systèmes de sécurité. Lorsque cela se produit, nous chiffrons une partie ou la totalité du bloc thinking et le retournons sous la forme d'un bloc redacted_thinking. Les blocs redacted_thinking sont déchiffrés lorsqu'ils sont renvoyés à l'API, permettant à Claude de continuer sa réponse sans perdre le contexte.
Lors de la création d'applications orientées client qui utilisent la réflexion étendue :
Voici un exemple montrant à la fois les blocs de réflexion normaux et rédactés :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "redacted_thinking",
"data": "EmwKAhgBEgy3va3pzix/LafPsn4aDFIT2Xlxh0L5L8rLVyIwxtE3rAFBa8cr3qpPkNRj2YfWXGmKDxH4mPnZ5sQ7vB9URj2pLmN3kF8/dW5hR7xJ0aP1oLs9yTcMnKVf2wRpEGjH9XZaBt4UvDcPrQ..."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Voir des blocs de réflexion rédactés dans votre sortie est un comportement attendu. Le modèle peut toujours utiliser ce raisonnement rédacté pour informer ses réponses tout en maintenant les garde-fous de sécurité.
Si vous devez tester la gestion de la réflexion rédactée dans votre application, vous pouvez utiliser cette chaîne de test spéciale comme invite : ANTHROPIC_MAGIC_STRING_TRIGGER_REDACTED_THINKING_46C9A13E193C177646C7398A98432ECCCE4C1253D5E2D82641AC0E52CC2876CB
Lors du passage des blocs thinking et redacted_thinking à l'API dans une conversation multi-tours, vous devez inclure le bloc complet non modifié à l'API pour le dernier tour d'assistant. Ceci est critique pour maintenir le flux de raisonnement du modèle. Nous suggérons de toujours renvoyer tous les blocs de réflexion à l'API. Pour plus de détails, consultez la section Préservation des blocs de réflexion ci-dessus.
Occasionnellement, le raisonnement interne de Claude sera signalé par nos systèmes de sécurité. Lorsque cela se produit, nous chiffrons une partie ou la totalité du bloc thinking et le retournons sous la forme d'un bloc redacted_thinking. Les blocs redacted_thinking sont déchiffrés lorsqu'ils sont renvoyés à l'API, permettant à Claude de continuer sa réponse sans perdre le contexte.
Lors de la création d'applications orientées client qui utilisent la réflexion étendue :
Voici un exemple montrant à la fois les blocs de réflexion normaux et rédactés :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "redacted_thinking",
"data": "EmwKAhgBEgy3va3pzix/LafPsn4aDFIT2Xlxh0L5L8rLVyIwxtE3rAFBa8cr3qpPkNRj2YfWXGmKDxH4mPnZ5sQ7vB9URj2pLmN3kF8/dW5hR7xJ0aP1oLs9yTcMnKVf2wRpEGjH9XZaBt4UvDcPrQ..."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Voir des blocs de réflexion rédactés dans votre sortie est un comportement attendu. Le modèle peut toujours utiliser ce raisonnement rédacté pour informer ses réponses tout en maintenant les garde-fous de sécurité.
Si vous devez tester la gestion de la réflexion rédactée dans votre application, vous pouvez utiliser cette chaîne de test spéciale comme invite : ANTHROPIC_MAGIC_STRING_TRIGGER_REDACTED_THINKING_46C9A13E193C177646C7398A98432ECCCE4C1253D5E2D82641AC0E52CC2876CB
Lors du passage des blocs thinking et redacted_thinking à l'API dans une conversation multi-tours, vous devez inclure le bloc complet non modifié à l'API pour le dernier tour d'assistant. Ceci est critique pour maintenir le flux de raisonnement du modèle. Nous suggérons de toujours renvoyer tous les blocs de réflexion à l'API. Pour plus de détails, consultez la section Préservation des blocs de réflexion ci-dessus.
L'API Messages gère la réflexion différemment selon les modèles Claude Sonnet 3.7 et Claude 4, principalement dans le comportement de rédaction et de résumé.
Consultez le tableau ci-dessous pour une comparaison condensée :
| Fonctionnalité | Claude Sonnet 3.7 | Modèles Claude 4 (pré-Opus 4.5) | Claude Opus 4.5 et versions ultérieures |
|---|---|---|---|
| Sortie de réflexion | Retourne la sortie de réflexion complète | Retourne la réflexion résumée | Retourne la réflexion résumée |
| Réflexion entrelacée | Non supportée | Supportée avec l'en-tête bêta interleaved-thinking-2025-05-14 | Supportée avec l'en-tête bêta interleaved-thinking-2025-05-14 |
| Préservation des blocs de réflexion | Non préservée entre les tours | Non préservée entre les tours | Préservée par défaut (active l'optimisation du cache, les économies de jetons) |
Occasionnellement, le raisonnement interne de Claude sera signalé par nos systèmes de sécurité. Lorsque cela se produit, nous chiffrons une partie ou la totalité du bloc thinking et le retournons sous la forme d'un bloc redacted_thinking. Les blocs redacted_thinking sont déchiffrés lorsqu'ils sont renvoyés à l'API, permettant à Claude de continuer sa réponse sans perdre le contexte.
Lors de la création d'applications orientées client qui utilisent la réflexion étendue :
Voici un exemple montrant à la fois les blocs de réflexion normaux et rédactés :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "redacted_thinking",
"data": "EmwKAhgBEgy3va3pzix/LafPsn4aDFIT2Xlxh0L5L8rLVyIwxtE3rAFBa8cr3qpPkNRj2YfWXGmKDxH4mPnZ5sQ7vB9URj2pLmN3kF8/dW5hR7xJ0aP1oLs9yTcMnKVf2wRpEGjH9XZaBt4UvDcPrQ..."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Voir des blocs de réflexion rédactés dans votre sortie est un comportement attendu. Le modèle peut toujours utiliser ce raisonnement rédacté pour informer ses réponses tout en maintenant les garde-fous de sécurité.
Si vous devez tester la gestion de la réflexion rédactée dans votre application, vous pouvez utiliser cette chaîne de test spéciale comme invite : ANTHROPIC_MAGIC_STRING_TRIGGER_REDACTED_THINKING_46C9A13E193C177646C7398A98432ECCCE4C1253D5E2D82641AC0E52CC2876CB
Lors du passage des blocs thinking et redacted_thinking à l'API dans une conversation multi-tours, vous devez inclure le bloc complet non modifié à l'API pour le dernier tour d'assistant. Ceci est critique pour maintenir le flux de raisonnement du modèle. Nous suggérons de toujours renvoyer tous les blocs de réflexion à l'API. Pour plus de détails, consultez la section Préservation des blocs de réflexion ci-dessus.
L'API Messages gère la réflexion différemment selon les modèles Claude Sonnet 3.7 et Claude 4, principalement dans le comportement de rédaction et de résumé.
Consultez le tableau ci-dessous pour une comparaison condensée :
| Fonctionnalité | Claude Sonnet 3.7 | Modèles Claude 4 (pré-Opus 4.5) | Claude Opus 4.5 et versions ultérieures |
|---|---|---|---|
| Sortie de réflexion | Retourne la sortie de réflexion complète | Retourne la réflexion résumée | Retourne la réflexion résumée |
| Réflexion entrelacée | Non supportée | Supportée avec l'en-tête bêta interleaved-thinking-2025-05-14 | Supportée avec l'en-tête bêta interleaved-thinking-2025-05-14 |
| Préservation des blocs de réflexion | Non préservée entre les tours | Non préservée entre les tours | Préservée par défaut (active l'optimisation du cache, les économies de jetons) |
Claude Opus 4.5 introduit un nouveau comportement par défaut : les blocs de réflexion des tours d'assistant précédents sont préservés dans le contexte du modèle par défaut. Cela diffère des modèles antérieurs, qui supprimaient les blocs de réflexion des tours précédents.
Avantages de la préservation des blocs de réflexion :
Considérations importantes :
Pour les modèles antérieurs (Claude Sonnet 4.5, Opus 4.1, etc.), les blocs de réflexion des tours précédents continuent à être supprimés du contexte. Le comportement existant décrit dans la section Réflexion étendue avec mise en cache des invites s'applique à ces modèles.
Occasionnellement, le raisonnement interne de Claude sera signalé par nos systèmes de sécurité. Lorsque cela se produit, nous chiffrons une partie ou la totalité du bloc thinking et le renvoyons sous la forme d'un bloc redacted_thinking. Les blocs redacted_thinking sont déchiffrés lorsqu'ils sont renvoyés à l'API, permettant à Claude de continuer sa réponse sans perdre le contexte.
Lors de la création d'applications orientées client qui utilisent la réflexion étendue :
Voici un exemple montrant à la fois les blocs de réflexion normaux et rédactés :
{
"content": [
{
"type": "thinking",
"thinking": "Let me analyze this step by step...",
"signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
},
{
"type": "redacted_thinking",
"data": "EmwKAhgBEgy3va3pzix/LafPsn4aDFIT2Xlxh0L5L8rLVyIwxtE3rAFBa8cr3qpPkNRj2YfWXGmKDxH4mPnZ5sQ7vB9URj2pLmN3kF8/dW5hR7xJ0aP1oLs9yTcMnKVf2wRpEGjH9XZaBt4UvDcPrQ..."
},
{
"type": "text",
"text": "Based on my analysis..."
}
]
}Voir des blocs de réflexion rédactés dans votre sortie est un comportement attendu. Le modèle peut toujours utiliser ce raisonnement rédacté pour éclairer ses réponses tout en maintenant les garde-fous de sécurité.
Si vous devez tester la gestion de la réflexion rédactée dans votre application, vous pouvez utiliser cette chaîne de test spéciale comme invite : ANTHROPIC_MAGIC_STRING_TRIGGER_REDACTED_THINKING_46C9A13E193C177646C7398A98432ECCCE4C1253D5E2D82641AC0E52CC2876CB
Lors du passage des blocs thinking et redacted_thinking à l'API dans une conversation multi-tours, vous devez inclure le bloc complet et non modifié à l'API pour le dernier tour d'assistant. Ceci est critique pour maintenir le flux de raisonnement du modèle. Nous suggérons de toujours renvoyer tous les blocs de réflexion à l'API. Pour plus de détails, consultez la section Préservation des blocs de réflexion ci-dessus.
L'API Messages gère la réflexion différemment selon les modèles Claude Sonnet 3.7 et Claude 4, principalement dans le comportement de rédaction et de résumé.
Consultez le tableau ci-dessous pour une comparaison condensée :
| Fonctionnalité | Claude Sonnet 3.7 | Modèles Claude 4 (pré-Opus 4.5) | Claude Opus 4.5 et versions ultérieures |
|---|---|---|---|
| Sortie de réflexion | Retourne la sortie de réflexion complète | Retourne la réflexion résumée | Retourne la réflexion résumée |
| Réflexion entrelacée | Non pris en charge | Pris en charge avec l'en-tête bêta interleaved-thinking-2025-05-14 | Pris en charge avec l'en-tête bêta interleaved-thinking-2025-05-14 |
| Préservation du bloc de réflexion | Non préservé entre les tours | Non préservé entre les tours | Préservé par défaut (active l'optimisation du cache, économies de jetons) |
Claude Opus 4.5 introduit un nouveau comportement par défaut : les blocs de réflexion des tours d'assistant précédents sont préservés dans le contexte du modèle par défaut. Cela diffère des modèles antérieurs, qui suppriment les blocs de réflexion des tours précédents.
Avantages de la préservation des blocs de réflexion :
Considérations importantes :
Pour les modèles antérieurs (Claude Sonnet 4.5, Opus 4.1, etc.), les blocs de réflexion des tours précédents continuent d'être supprimés du contexte. Le comportement existant décrit dans la section Réflexion étendue avec mise en cache des invites s'applique à ces modèles.
Pour obtenir des informations complètes sur les tarifs, y compris les tarifs de base, les écritures en cache, les accès au cache et les jetons de sortie, consultez la page de tarification.
Le processus de réflexion entraîne des frais pour :
Lorsque la réflexion étendue est activée, une invite système spécialisée est automatiquement incluse pour prendre en charge cette fonctionnalité.
Lors de l'utilisation de la réflexion résumée :
Le nombre de jetons de sortie facturés ne correspondra pas au nombre de jetons visibles dans la réponse. Vous êtes facturé pour l'ensemble du processus de réflexion, pas le résumé que vous voyez.
max_tokens est supérieur à 21 333. Lors de la diffusion en continu, soyez préparé à gérer à la fois les blocs de contenu de réflexion et de texte à mesure qu'ils arrivent.temperature ou top_k ainsi qu'avec l'utilisation forcée d'outils.top_p sur des valeurs entre 1 et 0,95.max_tokens est supérieur à 21 333. Lors de la diffusion en continu, soyez préparé à gérer à la fois les blocs de contenu de réflexion et de texte à mesure qu'ils arrivent.temperature ou top_k ainsi qu'avec l'utilisation forcée d'outils.top_p sur des valeurs entre 1 et 0,95.max_tokens est supérieur à 21 333. Lors de la diffusion en continu, soyez préparé à gérer à la fois les blocs de contenu de réflexion et de texte à mesure qu'ils arrivent.temperature ou top_k ainsi qu'avec l'utilisation forcée d'outils.top_p sur des valeurs entre 1 et 0,95.curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"thinking": {
"type": "enabled",
"budget_tokens": 10000
},
"messages": [
{
"role": "user",
"content": "Are there an infinite number of prime numbers such that n mod 4 == 3?"
}
]
}'curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"thinking": {
"type": "enabled",
"budget_tokens": 10000
},
"messages": [
{
"role": "user",
"content": "Are there an infinite number of prime numbers such that n mod 4 == 3?"
}
]
}'curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"thinking": {
"type": "enabled",
"budget_tokens": 10000
},
"messages": [
{
"role": "user",
"content": "Are there an infinite number of prime numbers such that n mod 4 == 3?"
}
]
}'curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_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": 10000
},
"messages": [
{
"role": "user",
"content": "What is 27 * 453?"
}
]
}'curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data \
'{
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"thinking": {
"type": "enabled",
"budget_tokens": 10000
},
"messages": [
{
"role": "user",
"content": "Are there an infinite number of prime numbers such that n mod 4 == 3?"
}
]
}'curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_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": 10000
},
"messages": [
{
"role": "user",
"content": "What is 27 * 453?"
}
]
}'Explorez des exemples pratiques de réflexion dans notre livre de cuisine.