Pemikiran adaptif adalah cara yang direkomendasikan untuk menggunakan extended thinking dengan Claude Opus 4.6. Alih-alih menetapkan anggaran token pemikiran secara manual, pemikiran adaptif memungkinkan Claude secara dinamis memutuskan kapan dan berapa banyak untuk berpikir berdasarkan kompleksitas setiap permintaan.
Pemikiran adaptif secara andal mendorong kinerja yang lebih baik daripada extended thinking dengan budget_tokens tetap, dan kami merekomendasikan untuk beralih ke pemikiran adaptif untuk mendapatkan respons paling cerdas dari Opus 4.6. Tidak ada header beta yang diperlukan.
Pemikiran adaptif didukung pada model berikut:
claude-opus-4-6)thinking.type: "enabled" dan budget_tokens adalah deprecated pada Opus 4.6 dan akan dihapus dalam rilis model di masa depan. Gunakan thinking.type: "adaptive" dengan parameter effort sebagai gantinya.
Model yang lebih lama (Sonnet 4.5, Opus 4.5, dll.) tidak mendukung pemikiran adaptif dan memerlukan thinking.type: "enabled" dengan budget_tokens.
Dalam mode adaptif, pemikiran bersifat opsional untuk model. Claude mengevaluasi kompleksitas setiap permintaan dan memutuskan apakah dan berapa banyak untuk berpikir. Pada tingkat effort default (high), Claude hampir selalu akan berpikir. Pada tingkat effort yang lebih rendah, Claude dapat melewati pemikiran untuk masalah yang lebih sederhana.
Pemikiran adaptif juga secara otomatis mengaktifkan interleaved thinking. Ini berarti Claude dapat berpikir di antara panggilan alat, menjadikannya sangat efektif untuk alur kerja agentic.
Atur thinking.type ke "adaptive" dalam permintaan API Anda:
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."
}
]
}'Anda dapat menggabungkan pemikiran adaptif dengan parameter effort untuk memandu berapa banyak Claude berpikir. Tingkat effort bertindak sebagai panduan lembut untuk alokasi pemikiran Claude:
| Tingkat effort | Perilaku pemikiran |
|---|---|
max | Claude selalu berpikir tanpa batasan pada kedalaman pemikiran. Hanya Opus 4.6 — permintaan menggunakan max pada model lain akan mengembalikan kesalahan. |
high (default) | Claude selalu berpikir. Memberikan penalaran mendalam pada tugas kompleks. |
medium | Claude menggunakan pemikiran moderat. Dapat melewati pemikiran untuk kueri yang sangat sederhana. |
low | Claude meminimalkan pemikiran. Melewati pemikiran untuk tugas sederhana di mana kecepatan paling penting. |
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)Pemikiran adaptif bekerja dengan mulus dengan streaming. Blok pemikiran di-stream melalui acara thinking_delta seperti mode pemikiran manual:
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)| Mode | Config | Ketersediaan | Kapan digunakan |
|---|---|---|---|
| Adaptif | thinking: {type: "adaptive"} | Opus 4.6 | Claude memutuskan kapan dan berapa banyak untuk berpikir. Gunakan effort untuk memandu. |
| Manual | thinking: {type: "enabled", budget_tokens: N} | Semua model. Deprecated pada Opus 4.6 — gunakan mode adaptif sebagai gantinya. | Ketika Anda memerlukan kontrol presisi atas pengeluaran token pemikiran. |
| Disabled | Hilangkan parameter thinking | Semua model | Ketika Anda tidak memerlukan extended thinking dan menginginkan latensi terendah. |
Pemikiran adaptif saat ini tersedia pada Opus 4.6. Model yang lebih lama hanya mendukung type: "enabled" dengan budget_tokens. Pada Opus 4.6, type: "enabled" dengan budget_tokens masih diterima tetapi deprecated — kami merekomendasikan menggunakan pemikiran adaptif dengan parameter effort sebagai gantinya.
Ketika menggunakan pemikiran adaptif, giliran asisten sebelumnya tidak perlu dimulai dengan blok pemikiran. Ini lebih fleksibel daripada mode manual, di mana API memberlakukan bahwa giliran yang diaktifkan pemikiran dimulai dengan blok pemikiran.
Permintaan berturut-turut menggunakan pemikiran adaptive mempertahankan titik henti prompt cache. Namun, beralih antara mode pemikiran adaptive dan enabled/disabled memecah titik henti cache untuk pesan. Prompt sistem dan definisi alat tetap di-cache terlepas dari perubahan mode.
Perilaku pemicu pemikiran adaptif dapat dipromptkan. Jika Claude berpikir lebih atau kurang sering daripada yang Anda inginkan, Anda dapat menambahkan panduan ke prompt sistem Anda:
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.Mengarahkan Claude untuk berpikir lebih jarang dapat mengurangi kualitas pada tugas yang mendapat manfaat dari penalaran. Ukur dampak pada beban kerja spesifik Anda sebelum menerapkan tuning berbasis prompt ke produksi. Pertimbangkan pengujian dengan tingkat effort yang lebih rendah terlebih dahulu.
Gunakan max_tokens sebagai batas keras pada total output (pemikiran + teks respons). Parameter effort memberikan panduan lembut tambahan tentang berapa banyak pemikiran yang Claude alokasikan. Bersama-sama, ini memberi Anda kontrol efektif atas biaya.
Pada tingkat effort high dan max, Claude dapat berpikir lebih ekstensif dan lebih mungkin untuk menghabiskan anggaran max_tokens. Jika Anda mengamati stop_reason: "max_tokens" dalam respons, pertimbangkan untuk meningkatkan max_tokens untuk memberikan lebih banyak ruang kepada model, atau menurunkan tingkat effort.
Konsep berikut berlaku untuk semua model yang mendukung extended thinking, terlepas dari apakah Anda menggunakan mode adaptif atau manual.
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.
Halaman extended thinking mencakup beberapa topik secara lebih detail dengan contoh kode khusus mode:
tool_choice ketika pemikiran aktif.adaptive dan enabled/disabled memecah titik henti cache untuk pesan (prompt sistem dan definisi alat tetap di-cache).max_tokens dan batas jendela konteks.Pelajari lebih lanjut tentang extended thinking, termasuk mode manual, penggunaan alat, dan prompt caching.
Kontrol seberapa menyeluruh Claude merespons dengan parameter effort.
Was this page helpful?