Yapay Zekâ
Microsoft AutoGen: Gelişmiş Otomasyon ile Çoklu Ajent AI İş Akışları

Microsoft Research, Eylül 2023’te AutoGen’i, karmaşık, çoklu ajent işbirliğini mümkün kılan açık kaynaklı bir Python çerçevesi olarak tanıttı. AutoGen, already araştırmacılar, geliştiriciler ve organizasyonlar arasında ilgi görmüş ve Mayıs 2024 itibarıyla GitHub’da 290’dan fazla katkıda bulunan ve yaklaşık 900.000 indirme ile popülerlik kazanmıştır. Bu başarı üzerine, Microsoft AutoGen Studio’yu, geliştiricilerin AI ajentlerini hızla prototip olarak denemelerine ve deneyimlemelerine olanak tanıyan bir düşük-kod arayüzünü duyurdu.
Bu kütüphane, karmaşık görevleri çözmek, karar verme süreçlerini otomatikleştirmek ve kodu verimli bir şekilde çalıştırmak için birbirleriyle sorunsuz bir şekilde etkileşime girebilen akıllı, modüler ajentlerin geliştirilmesi için tasarlanmıştır.
Microsoft ayrıca yakın zamanda AutoGen Studio’yu tanıttı, bu, AI ajent geliştirme sürecini, kullanıcıların ajentleri sürükleyip bırakabileceği, iş akışlarını yapılandırabileceği ve AI tarafından yönlendirilen çözümleri kolayca test edebileceği bir etkileşimli ve kullanıcı dostu platform sunarak basitleştirir. Öncüsünün aksine, AutoGen Studio, geniş kapsamlı kodlama ihtiyacını en aza indirir ve kullanıcıların grafik bir kullanıcı arayüzü (GUI) aracılığıyla ajentleri, iş akışlarını yapılandırmasını ve AI tarafından yönlendirilen çözümleri kolayca test etmesini sağlar.
AutoGen’i Benzersiz Kılan Nedir?
AI Ajentlerinin Anlamı
AI bağlamında, bir ajent, doğal dil işleme ve makine öğrenimi kullanarak belirli görevleri gerçekleştirebilen özerk bir yazılım bileşenidir. Microsoft’un AutoGen çerçevesi, geleneksel AI ajentlerinin yeteneklerini geliştirir ve onlara karmaşık, yapılandırılmış konuşmalara katılma ve ortak hedeflere ulaşmak için diğer ajentlerle işbirliği yapma yeteneği sağlar.
AutoGen, geniş bir ajent türü ve konuşma kalıpları yelpazesi destekler. Bu esneklik, önceden insan müdahalesi gerektiren iş akışlarını otomatikleştirmesini sağlar, bu nedenle finans, reklamcılık, yazılım mühendisliği ve daha fazlası gibi çeşitli endüstrilerdeki uygulamalar için idealdir.
Konuşabilen ve Özelleştirilebilir Ajentler
AutoGen, “konuşabilen” ajentler kavramını tanıtır, bunlar doğal dil talimatlarına dayanarak mesajları işler, yanıtlar oluşturur ve eylemler gerçekleştirir. Bu ajentler sadece zengin diyaloglar gerçekleştirebilmekle kalmaz, ayrıca belirli görevlerdeki performanslarını iyileştirmek için özelleştirilebilir. Bu modüler tasarım, AutoGen’i hem basit hem de karmaşık AI projeleri için güçlü bir araç haline getirir.
Ana Ajent Tipleri:
- Asistan Ajenti: Kodlama, hata ayıklama veya karmaşık sorguları yanıtlama gibi görevleri gerçekleştirebilen LLM güçlü bir asistan.
- Kullanıcı Vekili Ajenti: Kullanıcı davranışını simüle eder, geliştiricilerin gerçek bir insan kullanıcısını dahil etmeden etkileşimleri test etmesine olanak tanır. Ayrıca kodları otomatik olarak çalıştırabilir.
- Grup Sohbet Ajentleri: Birden fazla beceri veya perspektife ihtiyaç duyulan senaryolar için ideal olan işbirliği içinde çalışan ajentlerin bir koleksiyonu.
Çoklu Ajent İşbirliği
AutoGen’in en etkileyici özelliklerinden biri, çoklu ajent işbirliğini desteklemesidir. Geliştiriciler, karmaşık görevleri daha verimli bir şekilde çözmek için her biri uzmanlaştırılmış rollerle donatılmış bir ajent ağı oluşturabilir. Bu ajentler birbirleriyle iletişim kurabilir, bilgi alışverişi yapabilir ve topluca kararlar alabilir, bu da otherwise zaman alan veya hatalı olabilecek süreçleri basitleştirir.
AutoGen’in Temel Özellikleri
1. Çoklu Ajent Çerçevesi
AutoGen, her biri bağımsız olarak veya diğerleriyle koordinasyon içinde çalışabilen ajent ağlarının oluşturulmasını sağlar. Çerçeve, tamamen otomatik veya insan denetimi gerektiğinde iş akışları tasarlamak için esneklik sağlar.
Konuşma Kalıpları İçerir:
- Birinden Birine Konuşmalar: İki ajent arasındaki basit etkileşimler.
- Hiyerarşik Yapılar: Ajentler, daha karmaşık sorunları ele almak için görevleri alt ajentlere devredebilir.
- Grup Konuşmaları: Ajentlerin bir görevi çözmek için işbirliği içinde çalıştığı çoklu ajent sohbetleri.
2. Kod Çalıştırma ve Otomasyon
Çoklu AI çerçevesinin aksine, AutoGen ajentlerin kodu otomatik olarak oluşturmasına, çalıştırmasına ve hata ayıklamasına olanak tanır. Bu özellik, yazılım mühendisliği ve veri analiz görevleri için çok değerli olup, insan müdahalesini en aza indirir ve geliştirme döngülerini hızlandırır. Kullanıcı Vekili Ajenti, çalıştırılabilir kod bloklarını tanıyabilir, çalıştırabilir ve hatta çıktıyı otomatik olarak iyileştirebilir.
3. Araçlar ve API’lerle Entegrasyon
AutoGen ajentleri, dış araçlar, hizmetler ve API’lerle etkileşime girebilir, bu da yeteneklerini önemli ölçüde genişletir. Veritabanından veri alma, web istekleri gönderme veya Azure hizmetleriyle entegrasyon olsun, AutoGen, özellik açısından zengin uygulamalar oluşturmak için güçlü bir ekosistem sağlar.
4. İnsan-Müdahaleli Sorun Çözme
İnsan girdisinin gerekli olduğu senaryolarda, AutoGen insan-ajent etkileşimlerini destekler. Geliştiriciler, ajentlerin belirli görevlerden önce rehberlik veya onay istemesi için yapılandırabilir. Bu özellik, kritik kararların dikkatli bir şekilde ve doğru düzeyde denetimle verilmesini sağlar.
AutoGen Nasıl Çalışır: Derinlemesine Bir Bakış
Ajent Başlatma ve Yapılandırma
AutoGen ile çalışmanın ilk adımı, ajentlerinizi kurmak ve yapılandırmaktır. Her ajent, belirli görevleri gerçekleştirmek için özelleştirilebilir ve geliştiriciler, kullanılan LLM modeli, etkinleştirilen beceriler ve yürütme ortamı gibi parametreleri özelleştirebilir.
Ajent Etkileşimlerini Orkestrasyon
AutoGen, ajentler arasındaki konuşma akışını yapılandırılmış bir şekilde işler. Tipik bir iş akışı şöyle olabilir:
- Görev Tanıtımı: Bir kullanıcı veya ajent bir sorgu veya görev tanıtır.
- Ajent İşlemi: İlgili ajentler girdileri analiz eder, yanıtlar oluşturur veya eylemler gerçekleştirir.
- Arada Ajent İletişimi: Ajentler, görevi tamamlamak için veri ve içgörüler paylaşır ve işbirliği içinde çalışır.
- Görev Yürütme: Ajentler, kod çalıştırma, bilgi alma veya dış sistemlerle etkileşim gibi görevleri gerçekleştirir.
- Sonlandırma: Konuşma, görevin tamamlanması, bir hata eşiğinin aşılması veya sonlandırma koşulu tetiklenmesi üzerine sona erer.
Hata İşleme ve Kendini İyileştirme
AutoGen’in ajentleri, akıllıca hata işleme için tasarlanmıştır. Bir görev başarısız olursa veya yanlış bir sonuç üretirse, ajent sorunu analiz edebilir, çözümlemeye çalışabilir ve hatta çözümünü iyileştirebilir. Bu kendini iyileştirme yeteneği, uzun süreler boyunca otomatik olarak çalışabilen güvenilir AI sistemleri oluşturmak için çok önemlidir.
Ön Koşullar ve Kurulum
AutoGen ile çalışmadan önce, AI ajentleri, orkestrasyon çerçeveleri ve Python programlamanın temelleri hakkında sağlam bir anlayışa sahip olduğunuzdan emin olun. AutoGen, bir Python tabanlı çerçevedir ve potansiyeli, diğer AI hizmetleri gibi OpenAI’nin GPT modelleri veya Microsoft Azure AI ile birleştirildiğinde gerçeklenir.
pip Kullanarak AutoGen’i Kurun:
Ek özellikler için, chẳng hạn olarak optimize edilmiş arama yetenekleri veya dış kütüphanelerle entegrasyon:
Çevrenizi Ayarlama
AutoGen, ortam değişkenlerini ve API anahtarlarını güvenli bir şekilde yapılandırmanızı gerektirir. Temel adımları takip edelim:
- Ortam Değişkenlerini Yükleme: Hassas API anahtarlarını bir
.envdosyasında depolayın vedotenvkullanarak yükleyin. (api_key = os.environ.get(“OPENAI_API_KEY”)) - Dil Modeli Konfigürasyonunu Seçme: Kullanacağınız LLM’yi, örneğin OpenAI’den GPT-4 veya başka bir tercih ettiğiniz modeli belirleyin. API uç noktaları, model adları ve anahtarları gibi yapılandırma ayarları, ajentler arasında sorunsuz iletişim için net bir şekilde tanımlanmalıdır.
Karmaşık Senaryolar için AutoGen Ajentleri Oluşturma
Çoklu ajent sistemleri oluşturmak için, ajentleri tanımlamanız ve nasıl davranacağını belirtmeniz gerekir. AutoGen, çeşitli ajent tiplerini destekler, her biri farklı roller ve yeteneklerle donatılmıştır.
Asistan ve Kullanıcı Vekili Ajentlerini Oluşturma: Kod çalıştırma ve kullanıcı etkileşimlerini yönetmek için gelişmiş yapılandırmalara sahip ajentleri tanımlayın:












