İçeriğe geç

Chain-of-Thought (CoT): 'Adım Adım Düşün'den Fazlası

Modeli adım adım düşünmeye yönlendirme. Zero-shot CoT, manual CoT, scratchpad teknikleri. Hangi görevde CoT işe yarar, hangi görevde değil.

Şükrü Yusuf KAYA
13 dakikalık okuma
Orta

Chain-of-Thought (CoT) Prompting

Temel fikir: Modeli direkt cevaba zorlamak yerine, akıl yürütme adımlarını açıkça yazmasını iste.
2022'de bir Google paper'ı (Wei et al.) bu basit ekleme ile matematik benchmark'larında %17 → %57 iyileşme gösterdi. Bugün hâlâ en güçlü tekniklerden biri.

Direct (CoT'siz)#

Soru: Ali'nin 5 elması var. 3'ünü yiyor, sonra 2 alıyor. Şimdi kaç elması var? Cevap: 4
Bazen yanlış olur. Niçin yanlış?

CoT'li#

Soru: Ali'nin 5 elması var. 3'ünü yiyor, sonra 2 alıyor. Şimdi kaç elması var? Adım adım düşünelim: 1. Başlangıç: 5 elma 2. 3'ünü yedi: 5 - 3 = 2 elma 3. 2 daha aldı: 2 + 2 = 4 elma Cevap: 4
Doğruluk dramatik artar.

3 CoT Varyantı#

En basit: Prompt'a sadece "Adım adım düşün" ekle.
[Soru] Adım adım düşün, sonra final cevabı ver.
✅ Tek satır ekleme, dramatik fark.
İngilizce: "Let's think step by step." Türkçe: "Adım adım düşünelim."

CoT Hangi Görevlerde İşe Yarar?#

🟢 CoT İyi Çalışır#

  • Matematik problemleri
  • Çok adımlı mantık (silogizm)
  • Algoritmik düşünme
  • Kompleks sınıflandırma (5+ kural)
  • Yasal / mali analiz
  • Multi-hop QA (RAG)
  • Kod debugging

🟡 CoT Etkisi Az#

  • Basit faktüel sorular
  • Çeviri (bilgi tek adımlı)
  • Stil/tone üretimi
  • Kreatif yazım
  • Özetleme

🔴 CoT Bazen Zarar#

  • Çok basit task (overthinking)
  • Acil/düşük latans gerekli (CoT yavaş)
python
# Kendi gözünle CoT etkisini ölç
import os
from anthropic import Anthropic
from dotenv import load_dotenv
load_dotenv()
 
client = Anthropic(api_key=os.getenv("ANTHROPIC_API_KEY"))
 
# Klasik bir 'word problem' — model sıklıkla yanılır
WORD_PROBLEM = """Bir mağazada 23 kalem vardı. Müşteri 5 paketten 3'er
kalem aldı. Sonra mağaza 8 paket daha (her biri 4 kalem) sipariş etti.
Şu an mağazada kaç kalem var?"""
 
def ask(use_cot: bool):
suffix = "\n\nAdım adım düşün, sonra final cevabı ver." if use_cot else "\n\nSadece sayıyı ver."
r = client.messages.create(
model="claude-haiku-4-5-20251001",
max_tokens=400 if use_cot else 20,
temperature=0,
messages=[{"role": "user", "content": WORD_PROBLEM + suffix}],
)
return r.content[0].text.strip()
 
print("=== Direct ===")
print(ask(False))
print("\n=== CoT ===")
print(ask(True))
 
# Doğru cevap: 23 - 15 + 32 = 40
 
Direct vs CoT — aynı soruda performans farkı.
Reasoning modelleri (Claude thinking, o-series, DeepSeek R1) farklı: Bunlarda CoT modelin içinde otomatik. Manual "adım adım düşün" eklemek gereksiz veya zararlı. Sadece final talimat ver.

CoT Maliyeti#

CoT, output token sayısını 2-5x artırabilir. Maliyet ve latans yansımalarını hesaba kat.
text
Görev: Kompleks sınıflandırma
- Direct: 1.500 in + 50 out = $0.0023, 0.8s
- CoT: 1.500 in + 250 out = $0.0040, 2.1s
 
Aylık 1M çağrı:
- Direct: $2.300
- CoT: $4.000
 
ROI hesabı: CoT ile %15 daha doğru → ?
- Yanlış sınıflandırma maliyeti $5 → 5*150K = $750K tasarruf
- CoT toplam maliyet artışı: $1.7K
- Net: $748K kazanç
CoT'nin ROI hesabı

Yorumlar & Soru-Cevap

(0)
Yorum yazmak için giriş yap.
Yorumlar yükleniyor...

İlgili İçerikler

Bağlantılı Pillar Konular

Bu yazının bağlandığı pillar konular