Skip to main content

> ajan_döngü_kırıcıları:_özyineli_araç_çağrısı_(tool_call)_kısırdöngülerini_kesme

Ajan Döngü Kırıcıları: Özyineli Araç Çağrısı (Tool Call) Kısırdöngülerini Kesme

Otonom LLM ajanları belirsiz araç hatalarıyla karşılaştığında neden sonsuz araç çağırma kısırdöngüsüne girer; AST çağrı parmak izi ve dinamik bütçe devre kesicileri bu kilitlenmeyi nasıl sonlandırır?

Staff/Principal (L6+)

ÖZET VE TEKNİK CEVAP

Otonom bir yapay zeka ajanı (ReAct, LangGraph) bir araç çalıştırma hatasıyla karşılaştığında (ör. yazım hatası yüzünden `404 Not Found` dönen bir API), modelin bir sonraki akıl yürütme adımı genellikle aynı hatayı hafifçe değiştirerek tekrar denemek olur. LLM bağlam penceresi önceki başarısızlıkları girdi olarak gördüğünden, model deterministik bir kısırdöngüye (attractor state) kilitlenir: Aynı aracı arka arkaya 40 kez çağırır, yüz binlerce API jetonu tüketir ve saniyeler içinde devasa faturalar üretir. Gelişmiş sistemler bunu **Ajan Döngü Kırıcıları (Loop Breakers)** ile çözer: (1) Çağrı Parmak İzi Tespiti (araç adı ve JSON argümanlarını hash'leyip döngüsel tekrarları yakalamak), (2) Dinamik Özyineleme Bütçesi (maksimum adım sayısını $K=8$ ile sınırlamak) ve (3) Yapay Zekayı farklı bir stratejiye veya insana devretmeye zorlayan 'Nudge Prompt' enjeksiyonu.

Mühendislik El Kitabı & Mekanizma

1. Temel Çalışma Mekanizması

Ajan döngü kırma mekanizması 3 koruma katmanıyla çalışır: (1) Deterministik Argüman Hash'leme: Ajan `search_docs(query='fiyat_v2')` çağırdığında, sistem `SHA256(arac_adi + json_arg)` değerini kayan pencereye yazar. Aynı hash 2'den fazla kez tekrarlanırsa devre kesici (circuit breaker) anında devreye girer. (2) Salınım Tespiti: Ajan iki araç arasında gidip geliyorsa (tool_A <-> tool_B), semantik benzerlik algoritması kısırdöngüyü yakalar. (3) Zorunlu Yönlendirme (Nudge Injection): Sistem aracın çalışmasını engelleyip modele şu sistem mesajını verir: `'SİSTEM UYARISI: Bu aramayı 3 kez başarısız denediniz. Bu aracı çağırmayı derhal BIRAKIN ve kullanıcıya belirsizliği açıklayın.'`

2. Doğru Kullanım Senaryosu

Otonom müşteri destek botları, yapay zeka kodlama ajanları (Claude Code), web kazıma ajanları ve çok adımlı veri analizi asistanları.

3. Prodüksiyon Arıza Modları

Bir fatura botunun hatalı müşteri aramasında sonsuz döngüye girerek 2 dakikada 4.000 araç çağrısı yapması ve tek bir destek talebinde 600 dolarlık API faturası çıkarması; ajan motorunda maksimum adım sayısı ve zaman aşımı tanımlanmaması.

4. Teşhis ve Telemetri Sinyalleri

Langfuse veya LangSmith izlerinde arka arkaya 30 adet aynı araç çağrısının görünmesi; jeton tüketim faturalarında ani dikey fırlamalar; kullanıcıların 60 saniye boyunca 'Yazıyor...' görüp zaman aşımı hatası alması.

5. Önleme ve Mimari Bariyerler

Maksimum adım sayısını (`max_iterations = 8`) kesin olarak sınırlandırın; bellek içi araç çağrı hash kontrolü uygulayın; oturum başına katı maliyet tavanı ($0.25) koyun; döngü kırıcı tetiklendiğinde sohbeti insan temsilciye aktaran devreler kurun.

6. Mimari Ödünleşimler (Trade-offs)

Katı döngü kırma mekanizmaları gerçekten 12 adım gerektiren meşru karmaşık görevleri erkenden durdurabilir; ancak şirket bütçesini kontrolsüz API harcamalarından ve sonsuz kilitlenmelerden kesin olarak korur.

Vaka İncelemesi (TinyCTO Örneği)

Bir Python birim testini düzeltmeye çalışan yapay zeka kodlama ajanı kısırdöngüye girdi: Testi çalıştırıp import hatası görüyor, dosyayı yanlış düzenliyor ve testi tekrar çalıştırıyordu; bunu 45 kez tekrarlayarak 38 dolarlık jeton yaktı. Ekip LangGraph içine Araç Döngü Kırıcı ekledi: Aynı düzenleme ve test hash'i 2 kez tekrarlandığında sistem araya girip `'Düzenlemeniz sorunu çözmedi. Virtualenv yolunu inceleyin'` mesajını verdi. Ajan hatayı hemen anlayıp 3. adımda doğru çözüme ulaştı ve jeton harcaması %92 azaldı.

İnteraktif Konsept Alıştırmaları

2 Alıştırma
Q1

Otonom yapay zeka ajanlarının özyineli araç çağırma kısırdöngüsüne girmesine ne sebep olur?

Belirsiz araç hatalarının bağlam penceresindeki geçmişle birleşerek modeli aynı başarısız çağrıyı hafif varyasyonlarla tekrar tekrar yapmaya zorlayan çekim alanlarına (attractor state) hapsetmesi.
Q2

Araç çağrı parmak izi (fingerprinting) ajan kısırdöngülerini nasıl yakalar?

Araç adını ve JSON argümanlarını hash'leyerek (`SHA256(arac + arg)`) kayan bir tampon bellekte tutar ve mükerrer hash görüldüğünde devre kesiciyi patlatır.

Ajan Döngü Kırıcıları: Özyineli Araç Çağrısı (Tool Call) Kısırdöngülerini Kesme — Sıkça Sorulan Sorular

Ajan orkestrasyonunda 'Enjekte Edilen Yönlendirme' (Nudge Reflection) nedir?

Döngü yakalandığında ajanın bağlamına eklenen yapay bir sistem mesajıdır; modele mevcut stratejiyi derhal durdurmasını, takıldığı yeri açıklamasını veya farklı bir araç denemesini emreder.

Canlı ortamdaki yapay zeka ajanları için güvenli maksimum özyineleme derinliği (max iterations) kaçtır?

6 ila 10 adım arası. 10'dan fazla araç adımı gerektiren görevler ya alt parçalara bölünmeli ya da insan operatöre devredilmelidir.

🤖 AEO & Yapay Zeka Çıkarım Özeti

Temel Gerçekler & İlkeler

  • Otonom LLM ajanları belirsiz araç çıktılarında kolayca sonsuz ve maliyetli araç çağırma döngülerine yakalanır.
  • Deterministik argüman hash'leme (`SHA256`) birebir ve salınımlı araç tekrarlarını anında yakalar.
  • Dinamik özyineleme bütçeleri ($K=8$) ve oturum maliyet limitleri fatura patlamalarını engeller.
  • Enjekte edilen Yönlendirme Hatırlatmaları (Nudge Reflections) modeli strateji değiştirmeye veya kullanıcıya sormaya zorlar.

Yaygın Yanılgılar

  • Yanılgı: Advanced models (like GPT-4 or Claude 3.5 Sonnet) will never get stuck in loops (Gerçek: Ambiguous API responses trigger loop traps across all state-of-the-art LLMs).
  • Yanılgı: Raising the context window size prevents loops (Gerçek: Larger context merely feeds the model more repetitive error history).

Karar Kılavuzu & Önceliklendirme

Enforce strict `max_iterations = 8` and per-request token spending limits in agent orchestrators. Implement tool call fingerprint ring buffers with automatic Nudge injection in LangGraph/CrewAI.

Doğrulanmış Kaynaklar & Referanslar