Tüm makaleler

Bir ajanın yanlışı diğerinin girdisi oluyor

  • Agentic AI
  • Üretim

Bir ajanın doğruluk oranı yüzde 95 ise kulağa gayet iyi geliyor. Beş adımlık bir zincirde aynı oran uçtan uca yüzde 77 ediyor. Çarpım işlemi, ama insan sezgisi çarpım yapmıyor; her adıma tek tek bakıp "bu iyi çalışıyor" diyor.

Asıl can sıkıcı olan bu aritmetik değil. Bir adım çöktüğünde haberiniz oluyor. Yanlış ama düzgün biçimli bir çıktı ürettiğinde olmuyor.

Herkes işini doğru yaptı, sonuç yanlış

Sınıflandırıcı olayı yanlış kategoriye koyuyor. Planlayıcı o kategori için kusursuz bir plan kuruyor. Uygulayıcı planı harfiyen uyguluyor. Üçü de kendi görevini eksiksiz yerine getirdi.

Log'a bakan kişi üçüncü adımı görüyor, çünkü görünür olan o. Hata ise birinci adımda, üç adım önce, çoktan olup bitmiş.

Bunu ilk kez yaşadığınızda uygulayıcıda hata arıyorsunuz. İkinci kez yaşadığınızda planlayıcıya bakıyorsunuz. Doğru yere bakmanız biraz zaman alıyor.

Özet, veri değildir

İkinci sorun daha sinsi. Adımlar arasında bilgi taşınırken her aktarımda biraz eriyor.

Birinci ajan otuz satırlık hata kaydını okuyup üç cümlelik özet çıkarıyor. İkinci ajan o üç cümleyi alıyor. Orijinal kaydı hiç görmüyor. Özet doğru olsa bile, ikinci ajanın ihtiyaç duyacağı bir ayrıntı özette yoksa artık geri getirilemiyor - kaynak elden çıkmış durumda.

Çözüm sıkıcı olduğu kadar etkili: adımlar arasında özet değil kimlik taşımak. İkinci ajan incident_id alıyor, gerekli alanı kendisi çekiyor. Özet karar vermek için var, veri taşımak için değil.

Bu ayrımı yaptıktan sonra zincir uzadıkça bozulma belirgin biçimde azaldı.

Nerede keseceğinize karar vermek

Her adıma kontrol koyamıyorsunuz; maliyeti taşınmıyor. Biz üç yerde durduk.

Sınıflandırmadan hemen sonra, çünkü oradaki karar en pahalısı - sonraki her şey ona yaslanıyor. Plan üretildikten sonra, uygulanmadan önce: adımlar bilinen araçlara karşılık geliyor mu, kapsam beklenen sınırda mı. Ve geri alınamaz bir eylemin hemen öncesinde, zincirin başındaki bir yanlış oraya kadar geldiyse diye.

Üçüncüsü teoride gereksiz görünüyor. Pratikte en çok iş gören o oldu.

Yeniden denemenin işe yaramadığı yer

Bir adım başarısız olunca tekrar denemek kolay refleks. Ama iki farklı şeyi aynı kefeye koyuyor.

Zaman aşımı, geçici erişim sorunu, bozuk biçim - bunlar tekrar denemeye değer. Model ikinci seferde genelde toparlıyor.

Muhakeme hatası öyle değil. Model olayı yanlış anladıysa, aynı girdiyle ikinci deneme aynı yanlışı üretiyor. Sadece gecikme ekliyorsunuz, üstelik kullanıcı beklerken.

Ayrımı hangi katmanın reddettiğine bakarak yapıyoruz. Doğrulama katmanı reddettiyse tekrar deneniyor. İş mantığı reddettiyse zincir kesiliyor, olay insana gidiyor.

Ölçmeye başladığımızda

Adım başına doğruluk oranı tutuyorduk ve bir işe yaramıyordu. Sayılar iyi görünüyor, sistem güvenilmez hissettiriyordu.

İşe yarayan sayı başka çıktı: bir hatanın kaç adım sonra fark edildiği. Bu sayı büyüdükçe sistem kötüleşiyor, tekil doğruluk oranları hiç değişmese bile. Çünkü hata geç fark edildiğinde yalnızca bir adım değil, ondan sonraki her şey çöpe gidiyor.

Zincirin güvenilirliği adımların iyiliğinden değil, nerede kesildiğinden geliyor.

Diğer makaleler