(Bu dersin videosunu izlemek için yukarıdaki resme tıklayın)
Birden çok ajanı içeren bir proje üzerinde çalışmaya başladığınız anda, çoklu ajan tasarım desenini dikkate almanız gerekecektir. Ancak, ne zaman çoklu ajanlara geçileceği ve avantajlarının ne olduğu hemen anlaşılmayabilir.
Bu derste aşağıdaki soruları yanıtlamayı hedefliyoruz:
Bu dersten sonra şunları yapabilmelisiniz:
Daha büyük resim nedir?
Çoklu ajanlar, ortak bir hedefi gerçekleştirmek için birden çok ajanın birlikte çalışmasına olanak tanıyan bir tasarım desenidir.
Bu desen, robotik, otonom sistemler ve dağıtık hesaplama dahil olmak üzere çeşitli alanlarda yaygın olarak kullanılmaktadır.
Peki, hangi senaryolar çoklu ajan kullanımına iyi bir örnek olabilir? Cevap, özellikle aşağıdaki durumlarda çoklu ajan kullanmanın faydalı olduğu birçok senaryo vardır:
Tek bir ajan sistemi basit görevlerde iyi çalışabilir, ancak daha karmaşık görevlerde, çoklu ajan kullanımı birkaç avantaj sağlar:
Bir örnek alalım; bir kullanıcı için bir seyahat rezervasyonu yapalım. Tek ajanlı bir sistem, uçuş bulmaktan otel ve araç kiralama rezervasyonlarına kadar tüm seyahat rezervasyon sürecini yönetmek zorunda kalır. Bunu tek bir ajanla başarmak için ajan, bu görevlerin tümünü yapabilmek için araçlara sahip olmalı. Bu da bakımı ve ölçeklendirmeyi zorlaştıran karmaşık ve tek parça bir sistemle sonuçlanabilir. Çoklu ajanlı sistem ise uçuş arama, otel rezervasyonu ve araç kiralama alanlarında uzmanlaşmış farklı ajanları içerebilir. Bu sistem daha modüler, bakımı kolay ve ölçeklenebilir olur.
Bunu, annesi-babası tarafından işletilen bir seyahat ofisi ile franchise olarak işletilen bir seyahat bürosu arasında karşılaştırabilirsiniz. Anneleri-babası tarafından işletilen ofiste tek bir ajan seyahat rezervasyonunun tüm aşamalarını yönetirken, franchise bürosunda farklı ajanlar seyahat rezervasyon sürecinin farklı yönlerini yönetir.
Çoklu ajan tasarım desenini uygulamadan önce, deseni oluşturan yapı taşlarını anlamanız gerekir.
Bunu daha somut yapmak için tekrar bir kullanıcı için seyahat rezervasyonu örneğine bakalım. Bu durumda, yapı taşları şunları içerir:
Birden çok ajanın nasıl etkileşimde bulunduğunu görmeniz önemlidir. Bu görünürlük, hata ayıklama, optimizasyon ve genel sistem etkinliğini sağlama açısından gereklidir. Bunu başarmak için ajan faaliyetlerini ve etkileşimlerini izleyen araçlar ve tekniklere sahip olmalısınız. Bu, günlük kaydı ve izleme araçları, görselleştirme araçları ve performans metrikleri şeklinde olabilir.
Örneğin, bir kullanıcı için seyahat rezervasyonu yaparken, her ajanın durumunu, kullanıcının tercihlerini ve kısıtlamalarını ve ajanlar arasındaki etkileşimleri gösteren bir gösterge panonuz olabilir. Bu pano, kullanıcının seyahat tarihlerini, uçuş ajanının önerdiği uçuşları, otel ajanının önerdiği otelleri ve araç kiralama ajanının önerdiği araçları gösterebilir. Bu, ajanların birbirleriyle nasıl etkileşimde bulunduğu ve kullanıcının tercihleri ile kısıtlamalarının karşılanıp karşılanmadığı konusunda net bir görünüm sağlar.
Bu yönlerin her birine daha detaylı bakalım.
Günlük Kaydı ve İzleme Araçları: Her ajanın yaptığı her işlem için günlük kaydı yapılmasını istersiniz. Bir günlük kaydı, işlemi yapan ajan, yapılan işlem, işlemin yapıldığı zaman ve işlemin sonucu hakkında bilgi depolayabilir. Bu bilgiler hata ayıklama, optimizasyon ve daha fazlası için kullanılabilir.
Görselleştirme Araçları: Görselleştirme araçları, ajanlar arasındaki etkileşimleri daha sezgisel bir şekilde görmenize yardımcı olabilir. Örneğin, ajanlar arasındaki bilgi akışını gösteren bir grafik olabilir. Bu, sistemdeki darboğazları, verimsizlikleri ve diğer sorunları tespit etmenize yardımcı olabilir.
Performans Metrikleri: Performans metrikleri, çoklu ajan sisteminin etkinliğini takip etmenize yardımcı olabilir. Örneğin, bir görevin tamamlanma süresini, birim zamandaki tamamlanan görev sayısını ve ajanlar tarafından yapılan önerilerin doğruluğunu izleyebilirsiniz. Bu bilgiler iyileştirme alanlarını belirlemenize ve sistemi optimize etmenize olanak tanır.
Çoklu ajan uygulamaları oluşturmak için kullanabileceğimiz bazı somut desenlere bakalım. İşte dikkate alınması gereken bazı ilginç desenler:
Bu desen, birden fazla ajanın birbirleriyle iletişim kurabileceği bir grup sohbeti uygulaması oluşturmak istediğinizde faydalıdır. Bu deseni için tipik kullanım alanları ekip işbirliği, müşteri desteği ve sosyal ağdır.
Bu desende, her ajan grup sohbetindeki bir kullanıcıyı temsil eder ve mesajlar ajanlar arasında bir mesajlaşma protokolü kullanılarak değiştirilir. Ajanlar grup sohbetine mesaj gönderebilir, grup sohbetinden mesaj alabilir ve diğer ajanlardan gelen mesajlara yanıt verebilir.
Bu desen, tüm mesajların merkezi bir sunucu aracılığıyla yönlendirildiği merkezi bir mimariyle veya mesajların doğrudan değiştirildiği merkezi olmayan bir mimariyle uygulanabilir.

Bu desen, birden çok ajanın görevleri birbirlerine devredebileceği bir uygulama oluşturmak istediğinizde faydalıdır.
Tipik kullanım alanları müşteri desteği, görev yönetimi ve iş akışı otomasyonudur.
Bu desende, her ajan bir görev veya iş akışındaki bir adımı temsil eder ve ajanlar önceden belirlenmiş kurallara göre görevleri diğer ajanlara devredebilir.

Bu desen, birden çok ajanın kullanıcıya önerilerde bulunmak üzere işbirliği yapabileceği bir uygulama oluşturmak istediğinizde faydalıdır.
Neden birden çok ajanın işbirliği yapmasını istersiniz? Çünkü her ajan farklı uzmanlıklara sahip olabilir ve öneri sürecine farklı şekillerde katkıda bulunabilir.
Bir kullanıcının borsada satın alınacak en iyi hisse senedi için öneri istediği bir örnek alalım.

Bir müşterinin bir ürün için iade talebinde bulunduğu bir senaryoyu düşünün; bu süreçte oldukça fazla ajan yer alabilir ancak bu ajanları, bu sürece özgü ajanlar ve diğer süreçlerde kullanılabilecek genel ajanlar olarak ayıralım.
İade sürecine özgü ajanlar:
İade sürecinde yer alabilecek ajanlar şunlardır:
Genel ajanlar:
Bu ajanlar işinizin diğer bölümlerinde de kullanılabilir.
Önceden listelenen ajanlar, iade sürecine özgü olanlar ve işinizin diğer bölümlerinde kullanılabilecek genel ajanlar olmak üzere oldukça fazladır. Umarım bu, çoklu ajan sisteminizde hangi ajanları kullanacağınıza nasıl karar vereceğiniz hakkında size bir fikir verir.
Bir müşteri destek süreci için çoklu ajan sistemi tasarlayın. Süreçte yer alan ajanları, rolleri ve sorumluluklarını, birbirleriyle nasıl etkileşim kurduklarını belirleyin. Hem müşteri destek sürecine özgü ajanları hem de işinizin diğer bölümlerinde kullanılabilecek genel ajanları göz önünde bulundurun.
Aşağıdaki çözümü okumadan önce bir düşünün, düşündüğünüzden daha fazla ajana ihtiyacınız olabilir.
İPUCU: Müşteri destek sürecinin farklı aşamalarını düşünün ve ayrıca herhangi bir sistem için gereken ajanları göz önünde bulundurun.
Soru: Çoklu ajan kullanmayı ne zaman düşünmelisiniz?
Bu derste, çoklu ajan tasarım desenine baktık; çoklu ajanların uygulanabilir olduğu senaryolar, tek bir ajana göre çoklu ajan kullanmanın avantajları, çoklu ajan tasarım deseninin uygulanmasının yapı taşları ve birden fazla ajanın birbirleriyle nasıl etkileşime girdiğine dair görünürlük nasıl sağlanır gibi konuları ele aldık.
Diğer öğrenenlerle tanışmak, ofis saatlerine katılmak ve AI Ajanları ile ilgili sorularınıza yanıt almak için Microsoft Foundry Discord‘a katılın.
Feragatname: Bu belge, yapay zeka çeviri servisi Co-op Translator kullanılarak çevrilmiştir. Doğruluk için çaba gösterilse de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayınız. Orijinal belge, kendi ana dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımı sonucunda oluşabilecek herhangi bir yanlış anlama veya yanlış yorumlama nedeniyle sorumluluk kabul edilmemektedir.