Durma koşulları ve bütçe
Bir loop'un üç çıkışı olmalı: kanıt olarak yazılmış bir durma koşulu, kanıt hiç gelmezse sert bir sınır ve tekrarlayan başarısızlık için bir kural. Gerçek koşuların maliyet rakamları sınırların neden şart olduğunu gösteriyor.
Üç çıkış
Tek çıkışı olan loop, er ya da geç sonsuza kadar çalışacak loop'tur. Loop tasarımı üzerine araştırmalar üç çıkışta birleşiyor.
- Kanıtla dur. Koşul gözlemlenebilir bir şeyi adlandırır: testler geçti, skor en az 90, doğrulayıcı onayladı.
- Sert bir sınır. Tur, süre, token ya da maliyet üzerinde bir üst sınır; kanıtın hiç gelmediği gün için.
- Tekrarlanan başarısızlıkta dur. Aynı kontrol aynı sebeple iki kez başarısız olursa loop üçüncü kez denemez, durur ve açıklar.
Marek Kaput başıboş loop'lar için dördüncüsünü ekliyor: sürprizler bir insana yükseltilir. Alakasız bir dosyanın değişmesi ya da çalışmayan bir doğrulayıcı, loop'un tek başına karar vereceği şeyler değil.
Koşulu kanıt olarak yazmak
İki durma koşulunu karşılaştırın.
- "İyi göründüğünde dur."
- "
npm test0 koduyla bittiğinde ve Lighthouse skoru en az 90 olduğunda dur."
Birincisi ajanın kendi işi hakkındaki görüşü ve modeller bu konuda cömert. İkincisini bir program kontrol edebilir. Kaput'un kuralı keskin: belirli kanıtla dur, asla "iyi görünene kadar" değil.
Claude Code ekibinin örneği iki yarıyı tek satırda gösteriyor: en az 90 Lighthouse skoru, en fazla 5 deneme. Kanıt mutlu yolu bitiriyor. Sınır diğerlerini.
$ claude> Make the dashboard pass the audit. Stop when the score is 90 or more, or after 5 tries, or if the same failure repeats twice.✻ Deneme 1: skor 71, görsel boyutlarını değiştirir✻ Deneme 2: skor 84, bir script'i erteler✻ Deneme 3: skor 84, aynı başarısız denetim maddesi✻ Deneme 4: aynı madde, aynı sebep, yine başarısız# Beşinci kez denemek yerine durur ve açıklar.
Hangi durma koşulu kanıt olarak yazılmış?
Sınır neden şart
Sınır, kazanılamayacak bir görevde mükemmel çalışan bir loop'tan sizi korur. Aşağıda araştırmadaki maliyet rakamları ve her birinin neyi ölçtüğü var.
- C derleyicisi koşusu. Yaklaşık 2.000 oturum, yaklaşık 2 milyar girdi ve 140 milyon çıktı token'ı, 20.000 doların biraz altı. Sonuç, Linux 6.9'u x86, ARM ve RISC-V üzerinde derleyen yaklaşık 100.000 satır Rust. Para iyi harcandı, ama yalnızca planlı olduğu için.
- Retro oyun yapıcı. Ajan tek başına 20 dakika ve 9 dolar harcadı, ortaya bozuk bir şey çıktı. Tam harness 6 saat ve 200 dolar harcadı, ortaya oynanabilir bir şey çıktı. Bu yirmi kattan fazla maliyet.
- Müzik iş istasyonu koşusu, daha yeni bir model ve daha yalın bir harness ile: yaklaşık 3 saat 50 dakika ve 124,70 dolar.
- Çok ajanlı araştırma. Bir ajan için sohbetin yaklaşık 4 katı, çok ajanlı sistem için yaklaşık 15 katı token.
Bunların hiçbiri loop'lara karşı bir uyarı değil. Bunlar ölçek referansı, sınırınız sürpriz değil, sizin seçtiğiniz bir sayı olsun diye.
Faturayı dürüst tutmak
Claude Code ekibinin maliyet tavsiyesi kısa bir listeye sığıyor.
- Mümkünse en basit aracı ve daha ucuz bir modeli kullanın. Model ve effort en büyük kaldıraçlar.
- Büyük koşuları önce küçük pilotlayın, çünkü dinamik iş akışları yüzlerce ajan başlatabilir.
- Deterministik adımları bir modele ödeme yapmak yerine script'lere koyun.
- Bir routine'in aralığını, izlediği şeyin değişme hızına uydurun. Günde bir değişen şeye dakikada bir bakmak israf.
/usage,/goalve/workflowsçıktılarını izleyin.
Alt ajanlar token'ı çoğalttığı için Addy Osmani onları yalnızca ikinci bir görüşün karşılığını verdiği yerde öneriyor.
Aynı kontrol aynı sebeple iki kez başarısız oluyor. Loop ne yapmalı?
- Designing Loops (Marek Kaput, Software Mansion)
- Loop engineering: Getting started with loops (Delba de Oliveira, Michael Segner)
- Building a C compiler with a team of parallel Claudes (Nicholas Carlini)
- Harness design for long-running application development (Prithvi Rajasekaran)
- How we built our multi-agent research system (Hadfield et al.)
- Run prompts on a schedule (Claude Code docs)
Bölüm tamamlandı
Loop engineering kursunun 6 bölümünden 5. bölümü bitirdiniz.
Saatlerce çalışan bir loop oturumlar arasında her şeyi unutur, bu yüzden hafızası dosyalarda durmalı. İlerleme kayıtları, ajanın yalnızca çevirebildiği bir özellik listesi, bir başlangıç rutini ve model değiştikçe her parçayı yeniden test etme alışkanlığı.
Sonraki bölüm