← Blogs A KETSU-style illustration of the cafe, taken in front of the Ayisigi Cafe in Ordu Province
BlogTürkçe12 Eki 2026 English →

Düşünce cevabı
yedi

Bir reasoning model tüm çıktı bütçesini düşünerek harcayabilir ve sana hiçbir şey vermeden bitirebilir. Çözüm daha büyük bir bütçe değil. Metni beklemeyi bırakmak.

01 · kesilme

Düşünce cevabı yedi

Çoğu sağlayıcıda reasoning token'ları, görünür cevapla aynı çıktı bütçesinden düşer. Model bütçenin hepsini düşünerek harcarsa karşına bir HTTP 200, boş bir content ve finish_reason: "length" çıkar; üstüne modelin düşündüğü her token için bir fatura.

co-maintainer'ı geliştirirken yakaladığım gerçek bir review isteği: 128.000 token üretildi, hiçbiri görünür değil, yaklaşık beş dakika sürdü ve tam faturalandı.

Şekil 01Tek bir çıktı bütçesi. Reasoning hepsini doldurur, cevaba hiçbir şey kalmaz.
Model yavaş değildi. Düşünüyordu ve düşünce cevabın bütçesini yiyordu.
02 · fikir

Metni beklemeyi bırak

Cevap content içinde yaşıyorsa akışın en sonuna kadar hayatta kalmak zorundadır ve akışın sonu tam olarak bütçenin tükendiği yerdir. Bu yüzden modele tek bir tool ver, resolve, ve cevabı o tool üzerinden döndürmesini iste. Cevap artık düz bir mesaj metni değil, resolve çağrısının argümanlarıdır.

Bu iki şeyi değiştirir. Çağrı, model hâlâ reasoning yaparken bile gelebilir ve her şeyi o çağrı bitirir: cevap artık elindedir ve akışı okumayı bırakırsın. Akışta sonradan gelen hiçbir şey onu geri alamaz.

03 · iki hamle

Akışın ortasında al, ya da sonraki chunk'ta zorla

A · resolve, reasoning akarken gelir

Akışı senin kodun okur. Bir resolve çağrısı belirirse cevap tam orada alınır. Modelin düşüncesini hiçbir zaman bitirememiş olacak olması önemli değildir.

B · hiç gelmez

Reasoning akarken token'ları say. Yumuşak bir bütçeyi aştığında (co-maintainer'da 30.000 token) sağlayıcının kendi sınırına gelmeden bağlantıyı kes. Düşünce çöp değil, emektir; bu yüzden sonraki chunk onu yeniden gönderir: kesilen turun reasoning_details'i değiştirilmeden geri yollanır, yanında tek bir talimat vardır: “şimdi bitir, baştan başlama.” Bu talimat modeli bir tool çağrısı yapmaya zorlar.

Hangi yoldan gidilirse gidilsin cevabı bir resolve çağrısıyla almış olursun. Akış sonradan finish_reason: "length" ile kesilmiş olabilir; önemi yok, çünkü cevap çoktan resolve çağrısının argümanlarında kayıtlı.

Şekil 02Tur 1 bütçede kesilir, düşüncesi tur 2'ye taşınır ve tek bir resolve çağrısı işi bitirir.
04 · kanıt

Yeniden oynatılınca maliyeti

Yakaladığım kontrolsüz düşünce döngüsünü bu basamaklardan geçirerek yeniden oynattım; ilk bütçe 30.000 token, ikincisi 15.000 token:

Segment 1yaklaşık 30.002 reasoning token'da kesildi, içerik yok146 sn
Segment 2yaklaşık 1.632 reasoning token, finish_reason: "tool_calls"11 sn
Toplamyaklaşık 31.634 reasoning token, $0.0100157 sn

Yerine geçtiği kontrolsüz döngü $0.15 veya daha fazlaya ve beş dakikaya mal oluyordu, hem de hiç cevap vermeden. Aynı istek şimdi 157 saniye ve $0.01 tutuyor: yaklaşık 2× hızlı ve 15× ucuz, üstelik bir cevapla bitiyor.

05 · sınırlar

Nerede işe yaramaz

  • Reasoning'i kapatamayan modellerde son çare basamağı yoktur. İlk iki hamle yine geçerlidir.
  • Kesilen bir akış son usage chunk'ını hiç almaz; bu yüzden iptal edilen bir segmentin maliyeti yanlış bir alt sınır olarak değil, bilinmiyor olarak raporlanır.
Model hiç bitirmeyebilir. resolve çağrıldığı an bunun önemi kalmaz.