Çok ajanlı iş bölümü ve dayanıklılık
Bir işi birden çok role bölmenin kazancını eşgüdüm maliyetiyle karşılaştırmayı, kısmi başarı ile geri alma yollarını izlenebilir kılmayı ve bölünmenin gereksiz olduğunu ölçümle göstermeyi öğretir.
Önkoşul: Function Calling, Context Window
BU DERSİN SONUNDA
- Bölme kararını dört somut ölçütle sınamak
- Eşgüdüm desenini işin bağımlılık yapısına göre seçmek
- Kısmi başarı için telafi eylemi ve zaman aşımı yolu tanımlamak
- Bir bölünmenin gereksiz olduğunu koşum kaydından göstermek
- 1
Teori
Kavramın çalışma mantığı
- 2
Örnek
Gerçek bir senaryo üzerinde gösterim
- 3
Lab
Uygulamalı alıştırma
- 4
Test
Kısa ölçüm
- 5
Proje
Rotadaki projeye katkı
Kısa cevap
İşi birden çok ajana bölmek ne kadar yetenek eklerse o kadar da hata yüzeyi ekler: her devir noktası bir bilgi kaybı, her ek rol ayrı bir zaman aşımı ve kısmi başarı ihtimalidir. Bölme, ancak roller farklı araç yetkisi, farklı bağlam veya farklı başarısızlık politikası gerektirdiğinde kazanç verir. Gerekçe bunlardan biri değilse tek ajan ve daha dar bir araç yüzeyi daha sağlam çıkar.
Teori: bölmenin ödediği bedel#
Bölmenin kazancı üç yerden gelir. Her rolün araç yüzeyi daralır, böylece seçim isabeti artar. Her rolün bağlamı küçülür, böylece adım başına taban düşer. Bağımsız alt işler paralel koşabilir, böylece duvar saati kısalır. Üçü de gerçek kazançtır, ama üçü de koşullu: yüzey zaten darsa, bağlam zaten küçükse veya alt işler bağımlıysa kazanç doğmaz.
Bedel devir noktasında ödenir. Bir ajanın çıktısı diğerinin girdisi olduğunda aradaki bilgi bir arayüzden geçer ve arayüz ne kadar serbestse kayıp o kadar büyür. Ayrıca her rol ayrı bir başarısızlık kaynağıdır: bağımsız iki adımın ikisinin birden başarılı olması, tek adımın başarılı olmasından zordur. Teşhis de zorlaşır; yanlış sonucun hangi rolde doğduğu, izler adım adım eşleşmiyorsa okunamaz.
Bölmek gerekli mi#
- Araç yetkisi ayrımı: bir adımın yazma yetkisi varken diğerinin olmaması mı gerekiyor? Gerekiyorsa bölme yetki sınırını taşır.
- Bağlam ayrımı: adımların birbirinin gözlemini görmemesi mi gerekiyor? Bu hem bütçe hem güvenlik gerekçesi olabilir.
- Paralellik: alt işler gerçekten bağımsız mı, yoksa biri diğerinin sonucunu mu bekliyor? Sıralı işler bölünmekten hız kazanmaz.
- Başarısızlık politikası: bir alt işin çökmesi tüm işi düşürmeli mi, yoksa kısmi sonuç kabul edilebilir mi? Politikalar farklıysa roller de farklıdır.
- Hiçbiri geçerli değilse: bölme yerine araç yüzeyini daraltmak ve planı netleştirmek denenir.
Desenler ve uygunluk#
| Desen | Uygun iş | Devir noktası | Ana risk |
|---|---|---|---|
| Tek ajan, dar yüzey | Adımların aynı yetkiyle çözüldüğü işler | Yok | Yüzey genişleyince seçim bozulur |
| Yönetici + işçiler | Bağımsız alt işlere bölünebilen derleme işleri | Görev tarifi ve sonuç toplama | Tarif belirsizse işçiler farklı şeyler yapar |
| Hat (sıralı devir) | Her aşamanın çıktısı sonrakinin girdisi olan işler | Aşamalar arası biçim | Erken aşamanın hatası aşağı akar ve büyür |
| Üretici + denetleyici | Yan etkili veya dışa görünen çıktılar | Kabul ölçütü | Denetleyici üreticiyle aynı körlüğü paylaşabilir |
| Yarışan denemeler | Tek doğrusu olan, ucuz tekrarlanabilir işler | Seçim ölçütü | Ölçüt kodlanmamışsa kalabalık işe yaramaz |
Kısmi başarı ve geri alma#
Dağıtılmış bir işte tümü-veya-hiç yoktur. Üç alt işten ikisi tamamlanıp üçüncüsü zaman aşımına düştüğünde elde iki yan etki ve bir bilinmez kalır. Bu durumun iki dürüst çıkışı var: yapılanı telafi eylemiyle geri almak veya kısmi sonucu kısmi olduğunu söyleyerek döndürmek. Üçüncü yol, yani tamamlanmış gibi davranmak, arızayı çağıranın hiç göremediği bir yere taşır.
- 1Her alt işe kimlik ver
Kök koşum kimliği + rol + sıra. Bu kimlik hem izde hem işlem anahtarında kullanılır, böylece iki kayıt eşleşir.
- 2Yan etkiyi anında kaydet
Alt iş bir yan etki ürettiğinde ne yaptığı ve neyi değiştirdiği koşum izine yazılır; sonradan çıkarım yapılmaz.
- 3Telafi eylemini önceden tanımla
Her yan etkili araç için geri alma yolu baştan yazılır: ters işlem, iptal kaydı veya insana devir. Yolu olmayan işlem geri alınamaz sayılır.
- 4Zaman aşımını rol bazında koy
Tek bir üst sınır yetmez; her rolün kendi süresi ve üst işin toplam süresi ayrı tanımlanır.
- 5Kısmi sonucu işaretleyerek dön
Tamamlanan ve tamamlanmayan alt işler ayrı listelenir; çağıran taraf eksikliği görerek karar verir.
İzlenebilirlik#
- Kök koşum kimliği: tüm alt işleri tek ağaçta birleştirir; olmadan çok ajanlı arıza okunamaz.
- Ebeveyn adım referansı: hangi kararın hangi alt işi doğurduğunu gösterir.
- Araç çağrısı dökümü: her rolün hangi aracı hangi argümanla çağırdığı, kırpma öncesi hâliyle.
- Durma nedeni: birinci bölümdeki etiketler her rol için ayrı ayrı kaydedilir.
- Devir yükü: bir rolden diğerine geçen içeriğin kendisi; bilgi kaybı tartışması ancak bu kayıtla yapılır.
- Maliyet sayacı: rol bazında adım ve çağrı sayısı; bölmenin bedelini görünür kılar.
Sık yapılan hata#
Yaygın yanılgı, rol eklemeyi kalite artırmanın yolu saymaktır. Bir denetleyici rol, üreticiyle aynı bilgiye ve aynı araçlara bakıyorsa yalnızca maliyet ekler: iki taraf aynı körlüğü paylaşır. Denetimin değer katması için denetleyicinin farklı bir şeye erişmesi gerekir — kaynağın kendisine, bir doğrulama aracına veya kabul ölçütünün kodlanmış hâline. Aynı yanılganın ikinci biçimi, tek ajanda çözülemeyen bir işi bölerek çözmeye çalışmaktır; işin tanımı belirsizse bölünme belirsizliği çoğaltır.
LAB · UYGULAMALI ALIŞTIRMA
Bölünmenin gerekli olup olmadığını ölçün
- 1Çok rollü bir akışınızı seçin ve rolleri, aralarındaki devir noktalarını ve her rolün araç yüzeyini tek şemada yazın.
- 2Dört bölme ölçütünü (yetki, bağlam, paralellik, başarısızlık politikası) her devir noktası için tek tek işaretleyin; hiçbiri tutmayan devirleri not edin.
- 3Aynı işi tek ajanla kuran ikinci bir kurulum hazırlayın: rollerin araçlarının birleşimi ve netleştirilmiş tek bir plan.
- 4On gerçek girdi seçip iki kurulumu aynı girdilerle koşturun; her koşumda tamamlanma, durma nedeni, toplam adım ve devir sayısını kaydedin.
- 5Başarısız koşumlarda arızanın hangi rolde doğduğunu izlerden bulun ve devir noktasında bilgi kaybı olup olmadığını devir yükü kaydından kontrol edin.
- 6İki kurulumun tamamlanma ve toplam adım sayılarını karşılaştırıp hangi devir noktasını kaldıracağınızı gerekçesiyle yazın.
Beklenen çıktı
Çok rollü ve tek ajanlı iki kurulumun aynı girdi kümesindeki tamamlanma ve adım karşılaştırması ile kaldırılacak devir noktalarının gerekçeli listesi.
Sık sorulan sorular
Paralel çalıştırmak her zaman hızlandırır mı?
Yalnızca alt işler gerçekten bağımsızsa. Biri diğerinin sonucunu bekliyorsa paralellik sadece eşgüdüm kodu ekler. Ayrıca toplama adımı da bir maliyettir: paralel dönen sonuçları birleştirmek yeni bir bağlam yükü ve yeni bir hata noktasıdır. Bağımlılık grafiğini çizmeden paralelleştirmeye karar verilmez.
Bir alt iş çökerse tüm işi düşürmeli miyim?
İşin sözleşmesine bağlı. Çağıran taraf kısmi sonuçla bir şey yapabiliyorsa kısmi dönüş dürüst ve yararlıdır; yeter ki eksik alt işler açıkça listelensin. Yapamıyorsa tamamlanmış yan etkiler telafi edilip iş başarısız kapatılır. Kabul edilemeyen üçüncü seçenek, eksikliği gizleyerek başarı döndürmektir.
Çok ajanlı kurulumun tek ajandan iyi olduğunu nasıl gösteririm?
Aynı girdi kümesinde iki kurulumu koşturup tamamlanma oranını, durma nedeni dağılımını ve toplam adım sayısını karşılaştırarak. Ölçütü kendi işinize özgü kabul kriteriyle tanımlayın; tek bir koşumun daha iyi görünmesi karar için yeterli değil. Bu ölçüm kurulumu altıncı bölümdeki değerlendirme kümesiyle aynı iskelete oturur.
LEARN
Ajan Sistemleri Mühendisi rotasına devam et
Dersler tek başına da okunabilir, ama sıralı ilerlemek önkoşul boşluklarını kapatır.
