Extended thinking
Extended thinking
Bu modül için tahmini süre: 7 dakika
Genel bakış
Extended thinking, Claude’a karmaşık problemleri çözmeden önce düşünmesi için zaman tanıyan gelişmiş bir reasoning feature’ıdır. Bu derste extended thinking’in nasıl çalıştığını, response yapısını, redacted thinking’i ve implementasyonu öğreneceksin.
Önemli not: Extended Thinking bazı diğer feature’larla, özellikle message pre-filling ve temperature ile, uyumlu değildir. Tüm kısıtlamaların listesi için: https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking#feature-compatibility
Extended thinking, Claude’un karmaşık problemleri çözmek için son yanıtını üretmeden önce çalışmasına izin veren gelişmiş reasoning feature’ıdır. Onu Claude’un “scratch paper”ı olarak düşün — cevaba götüren reasoning sürecini görebilirsin. Bu hem transparency sağlar hem de çoğunlukla daha kaliteli yanıtlarla sonuçlanır.
Extended thinking nasıl çalışır
Extended thinking etkinleştirildiğinde, Claude’un response’u basit bir text block’tan iki parçadan oluşan yapılandırılmış bir response’a dönüşür:

Thinking etkin olduğunda, hem reasoning sürecini hem de final yanıtı alırsın:

Temel faydalar:
- Karmaşık task’lar için daha iyi reasoning kapasitesi
- Zor problemlerde daha yüksek doğruluk
- Claude’un düşünce sürecine transparency
Ancak önemli trade-off’lar vardır:
- Daha yüksek cost (thinking token’ları için ödeme yaparsın)
- Artan latency (thinking zaman alır)
- Code’da daha karmaşık response handling
Extended thinking ne zaman kullanılır
Karar basittir: prompt evaluation’larını kullan. Önce prompt’larını thinking olmadan çalıştır; prompt’unu zaten optimize ettikten sonra doğruluk gereksinimini karşılamıyorsa, o zaman extended thinking’i etkinleştirmeyi düşün. Standard prompting yetersiz kaldığında devreye giren bir tool’dur.
Response yapısı ve güvenlik
Extended thinking response’ları güvenlik için özel bir signature sistemi içerir:

Signature, thinking text’ini değiştirmediğini garanti eden bir cryptographic token’dır. Bu, developer’ların Claude’un reasoning sürecini kurcalamasını engeller — aksi halde model güvensiz yönlere çekilebilirdi.
Redacted thinking
Bazen okunabilir reasoning text yerine redacted thinking block alırsın:

Bu, Claude’un thinking süreci internal safety system’leri tarafından flag’lendiğinde olur. Redacted içerik, gerçek thinking’i encrypted formda barındırır; böylece context’i kaybetmeden tam mesajı gelecekteki conversation’larda Claude’a geri gönderebilirsin.
Implementasyon
Code’unda extended thinking’i etkinleştirmek için chat function’una iki parametre eklemen gerekir:
def chat(
messages,
system=None,
temperature=1.0,
stop_sequences=[],
tools=None,
thinking=False,
thinking_budget=1024
):
Thinking budget, Claude’un reasoning için kullanabileceği maksimum token sayısını belirler. Minimum değer 1024 token’dır ve max_tokens parametren thinking budget’tan büyük olmalıdır.
API parametrelerine thinking konfigürasyonunu ekle:
if thinking:
params["thinking"] = {
"type": "enabled",
"budget": thinking_budget
}
Sonra thinking etkin haliyle çağır:
chat(messages, thinking=True)
Redacted response’ları test etmek
Test amaçlı, özel bir trigger string göndererek Claude’u redacted thinking block döndürmeye zorlayabilirsin. Bu, uygulamanın redacted response’ları crash olmadan zarifçe ele aldığından emin olmana yardım eder.
Extended thinking, Claude’un karmaşık reasoning task’larını ele alması gerektiğinde güçlü bir feature’dır, ama cost ve latency etkilerini düşünerek dikkatli kullan. Standard prompting ile başla, iyice optimize et, sonra ekstra reasoning kapasitesine ihtiyacın olduğunda thinking ekle.
Temel çıkarımlar
- Extended thinking, response’u thinking + final answer şeklinde iki parçaya böler
- Faydalar: daha iyi reasoning, daha yüksek doğruluk, sürece transparency
- Trade-off’lar: daha yüksek cost, daha fazla latency, daha karmaşık response handling
- Signature mekanizması thinking içeriğinin manipüle edilmediğini garanti eder
- Redacted thinking, internal safety flag’i tetiklenince ortaya çıkar; encrypted thinking’i taşır
- Önce prompt’u standart yoldan optimize et; ancak gerektiğinde extended thinking’e geç