Адаптивное мышление — это рекомендуемый способ использования расширенного мышления с Claude Opus 4.6. Вместо того чтобы вручную устанавливать бюджет токенов мышления, адаптивное мышление позволяет Claude динамически решать, когда и сколько думать на основе сложности каждого запроса.
Адаптивное мышление надежно обеспечивает лучшую производительность, чем расширенное мышление с фиксированным budget_tokens, и мы рекомендуем перейти на адаптивное мышление, чтобы получить наиболее интеллектуальные ответы от Opus 4.6. Заголовок бета-версии не требуется.
Адаптивное мышление поддерживается на следующих моделях:
claude-opus-4-6)thinking.type: "enabled" и budget_tokens устарели на Opus 4.6 и будут удалены в будущем выпуске модели. Используйте thinking.type: "adaptive" с параметром effort вместо этого.
Более старые модели (Sonnet 4.5, Opus 4.5 и т. д.) не поддерживают адаптивное мышление и требуют thinking.type: "enabled" с budget_tokens.
В адаптивном режиме мышление является необязательным для модели. Claude оценивает сложность каждого запроса и решает, думать ли и сколько думать. На уровне усилий по умолчанию (high), Claude почти всегда будет думать. На более низких уровнях усилий Claude может пропустить мышление для более простых задач.
Адаптивное мышление также автоматически включает чередующееся мышление. Это означает, что Claude может думать между вызовами инструментов, что делает его особенно эффективным для рабочих процессов агентов.
Установите thinking.type на "adaptive" в вашем запросе API:
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-opus-4-6",
"max_tokens": 16000,
"thinking": {
"type": "adaptive"
},
"messages": [
{
"role": "user",
"content": "Explain why the sum of two even numbers is always even."
}
]
}'Вы можете объединить адаптивное мышление с параметром effort, чтобы направить, сколько Claude будет думать. Уровень усилий служит мягким руководством для распределения мышления Claude:
| Уровень усилий | Поведение мышления |
|---|---|
max | Claude всегда думает без ограничений на глубину мышления. Только Opus 4.6 — запросы, использующие max на других моделях, вернут ошибку. |
high (по умолчанию) | Claude всегда думает. Обеспечивает глубокое рассуждение на сложных задачах. |
medium | Claude использует умеренное мышление. Может пропустить мышление для очень простых запросов. |
low | Claude минимизирует мышление. Пропускает мышление для простых задач, где скорость имеет наибольшее значение. |
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-opus-4-6",
max_tokens=16000,
thinking={
"type": "adaptive"
},
output_config={
"effort": "medium"
},
messages=[{
"role": "user",
"content": "What is the capital of France?"
}]
)
print(response.content[0].text)Адаптивное мышление работает безупречно с потоковой передачей. Блоки мышления передаются через события thinking_delta так же, как в режиме ручного мышления:
import anthropic
client = anthropic.Anthropic()
with client.messages.stream(
model="claude-opus-4-6",
max_tokens=16000,
thinking={"type": "adaptive"},
messages=[{"role": "user", "content": "What is the greatest common divisor of 1071 and 462?"}],
) as stream:
for event in stream:
if event.type == "content_block_start":
print(f"\nStarting {event.content_block.type} block...")
elif event.type == "content_block_delta":
if event.delta.type == "thinking_delta":
print(event.delta.thinking, end="", flush=True)
elif event.delta.type == "text_delta":
print(event.delta.text, end="", flush=True)| Режим | Конфигурация | Доступность | Когда использовать |
|---|---|---|---|
| Адаптивное | thinking: {type: "adaptive"} | Opus 4.6 | Claude решает, когда и сколько думать. Используйте effort для руководства. |
| Ручное | thinking: {type: "enabled", budget_tokens: N} | Все модели. Устарело на Opus 4.6 — используйте адаптивный режим вместо этого. | Когда вам нужен точный контроль над расходом токенов мышления. |
| Отключено | Опустите параметр thinking | Все модели | Когда вам не нужно расширенное мышление и вы хотите минимальную задержку. |
Адаптивное мышление в настоящее время доступно на Opus 4.6. Более старые модели поддерживают только type: "enabled" с budget_tokens. На Opus 4.6 type: "enabled" с budget_tokens по-прежнему принимается, но устарело — мы рекомендуем использовать адаптивное мышление с параметром effort вместо этого.
При использовании адаптивного мышления предыдущие ходы ассистента не должны начинаться с блоков мышления. Это более гибко, чем ручной режим, где API требует, чтобы ходы с включенным мышлением начинались с блока мышления.
Последовательные запросы, использующие адаптивное мышление, сохраняют точки разрыва кэша подсказок. Однако переключение между режимами адаптивного и включенного/отключенного мышления нарушает точки разрыва кэша для сообщений. Системные подсказки и определения инструментов остаются кэшированными независимо от изменений режима.
Поведение срабатывания адаптивного мышления можно настроить через подсказку. Если Claude думает чаще или реже, чем вам хотелось бы, вы можете добавить руководство в вашу системную подсказку:
Extended thinking adds latency and should only be used when it
will meaningfully improve answer quality — typically for problems
that require multi-step reasoning. When in doubt, respond directly.Направление Claude думать реже может снизить качество на задачах, которые выигрывают от рассуждений. Измерьте влияние на ваши конкретные рабочие нагрузки перед развертыванием настройки на основе подсказок в производство. Рассмотрите возможность сначала протестировать с более низкими уровнями усилий.
Используйте max_tokens как жесткий лимит на общий результат (мышление + текст ответа). Параметр effort обеспечивает дополнительное мягкое руководство по тому, сколько мышления выделяет Claude. Вместе они дают вам эффективный контроль над затратами.
На уровнях усилий high и max Claude может думать более обширно и с большей вероятностью исчерпать бюджет max_tokens. Если вы наблюдаете stop_reason: "max_tokens" в ответах, рассмотрите возможность увеличения max_tokens, чтобы дать модели больше места, или снизьте уровень усилий.
Следующие концепции применяются ко всем моделям, поддерживающим расширенное мышление, независимо от того, используете ли вы адаптивный или ручной режим.
With extended thinking enabled, the Messages API for Claude 4 models returns a summary of Claude's full thinking process. Summarized thinking provides the full intelligence benefits of extended thinking, while preventing misuse.
Here are some important considerations for summarized thinking:
Claude Sonnet 3.7 continues to return full thinking output.
In rare cases where you need access to full thinking output for Claude 4 models, contact our sales team.
Full thinking content is encrypted and returned in the signature field. This field is used to verify that thinking blocks were generated by Claude when passed back to the API.
It is only strictly necessary to send back thinking blocks when using tools with extended thinking. Otherwise you can omit thinking blocks from previous turns, or let the API strip them for you if you pass them back.
If sending back thinking blocks, we recommend passing everything back as you received it for consistency and to avoid potential issues.
Here are some important considerations on thinking encryption:
signature_delta inside a content_block_delta event just before the content_block_stop event.signature values are significantly longer in Claude 4 models than in previous models.signature field is an opaque field and should not be interpreted or parsed - it exists solely for verification purposes.signature values are compatible across platforms (Claude APIs, Amazon Bedrock, and Vertex AI). Values generated on one platform will be compatible with another.Occasionally Claude's internal reasoning will be flagged by our safety systems. When this occurs, we encrypt some or all of the thinking block and return it to you as a redacted_thinking block. redacted_thinking blocks are decrypted when passed back to the API, allowing Claude to continue its response without losing context.
When building customer-facing applications that use extended thinking:
Here's an example showing both normal and redacted thinking blocks:
{
"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..."
}
]
}Seeing redacted thinking blocks in your output is expected behavior. The model can still use this redacted reasoning to inform its responses while maintaining safety guardrails.
If you need to test redacted thinking handling in your application, you can use this special test string as your prompt: ANTHROPIC_MAGIC_STRING_TRIGGER_REDACTED_THINKING_46C9A13E193C177646C7398A98432ECCCE4C1253D5E2D82641AC0E52CC2876CB
When passing thinking and redacted_thinking blocks back to the API in a multi-turn conversation, you must include the complete unmodified block back to the API for the last assistant turn. This is critical for maintaining the model's reasoning flow. We suggest always passing back all thinking blocks to the API. For more details, see the Preserving thinking blocks section.
For complete pricing information including base rates, cache writes, cache hits, and output tokens, see the pricing page.
The thinking process incurs charges for:
When extended thinking is enabled, a specialized system prompt is automatically included to support this feature.
When using summarized thinking:
The billed output token count will not match the visible token count in the response. You are billed for the full thinking process, not the summary you see.
Страница расширенного мышления охватывает несколько тем более подробно с примерами кода, специфичными для режима:
tool_choice при активном мышлении.adaptive и enabled/disabled нарушает точки разрыва кэша для сообщений (системные подсказки и определения инструментов остаются кэшированными).max_tokens и ограничениями размера контекстного окна.Узнайте больше о расширенном мышлении, включая ручной режим, использование инструментов и кэширование подсказок.
Контролируйте, насколько тщательно Claude отвечает, с помощью параметра effort.
Was this page helpful?