Yapay Zeka

16/1/2025

AutoGen v0.4: Ajan Tabanlı Yapay Zeka İçin Yeni Bir Dönem

Microsoft Research, bugün AutoGen v0.4 sürümünü duyurdu. Bu önemli güncelleme, otonom yapay zeka (agentic AI) uygulamaları için geliştirilen açık kaynaklı çerçeve olan AutoGen'in temelini yeniden şekillendiriyor. Geliştirici ve kullanıcı topluluğundan gelen değerli geri bildirimler dikkate alınarak oluşturulan AutoGen v0.4, kod kalitesi, sağlamlık, genellik ve ölçeklenebilirlik açısından önemli iyileştirmeler sunuyor.

AutoGen'in ilk sürümünün ardından, ajan tabanlı teknolojiler büyük ilgi gördü. Ancak kullanıcılar, mimari kısıtlamaları, hızlı büyümeye paralel olarak verimsizleşen API'ler ve sınırlı hata ayıklama/müdahale seçenekleri gibi zorluklarla karşılaştı. Geri bildirimler, daha güçlü gözlem ve kontrol mekanizmaları, daha esnek çoklu ajan işbirliği modelleri ve yeniden kullanılabilir bileşenlere olan ihtiyacı ortaya koydu. AutoGen v0.4, bu ihtiyaçları asenkron ve olay odaklı bir mimari ile ele alıyor.

AutoGen v0.4'ün Önemli Özellikleri:

  • Asenkron Mesajlaşma: Ajanlar arasındaki iletişim, hem olay odaklı hem de istek-yanıt etkileşim modellerini destekleyen asenkron mesajlar aracılığıyla gerçekleşir. Bu, daha verimli ve esnek bir iletişim ortamı sağlar. Ajanlar artık sırayla değil, bağımsız olarak işlemlerini gerçekleştirebilir ve daha hızlı yanıt verebilirler. Örneğin, bir ajan bir bilgiyi topladığında, bu bilgiyi hemen diğer ajanlara iletebilir ve beklemeye gerek kalmaz.
  • Modüler ve Genişletilebilirlik: AutoGen v0.4, tamamen modüler bir yapıya sahiptir. Kullanıcılar, özel ajanlar, araçlar, bellek ve modeller gibi bileşenleri kolayca ekleyebilir veya değiştirebilir. Bu esneklik, farklı kullanım senaryolarına ve özel gereksinimlere uyum sağlamayı kolaylaştırır. Ayrıca, olay odaklı modeller kullanılarak proaktif ve uzun süre çalışan ajanlar geliştirilebilir. Örneğin, bir ajan, belirli bir olaya tepki olarak otomatik olarak bir dizi eylemi gerçekleştirebilir veya sürekli olarak çevreyi izleyerek fırsatları değerlendirebilir.
  • Gözlemlenebilirlik ve Hata Ayıklama: Dahili metrik izleme, mesaj takibi ve hata ayıklama araçları, ajan etkileşimleri ve iş akışları üzerinde daha iyi kontrol ve izleme imkanı sunar. Endüstri standardı olan OpenTelemetry desteği, sistemin izlenebilirliğini artırır ve sorunların daha hızlı tespit edilmesini sağlar. Geliştiriciler, ajanların ne yaptığını, hangi mesajları gönderdiğini, hangi sorunlarla karşılaştığını daha kolay anlayabilir ve gerektiğinde müdahale edebilirler.
  • Ölçeklenebilirlik ve Dağıtıklık: AutoGen v0.4, karmaşık ve dağıtık ajan ağları oluşturmayı destekler. Bu sayede, farklı coğrafi bölgelerde veya farklı kuruluşlarda bulunan ajanlar arasında sorunsuz bir şekilde iletişim kurulabilir ve işbirliği sağlanabilir. Bu, özellikle büyük ölçekli uygulamalar ve işletme senaryoları için büyük önem taşır.
  • Yerleşik ve Topluluk Eklentileri: Eklentiler modülü, gelişmiş model istemcileri, ajanlar, çoklu ajan ekipleri ve ajan tabanlı iş akışları için araçlar gibi gelişmiş işlevsellikleri genişletir. Açık kaynak topluluğu, kendi eklentilerini geliştirebilir, paylaşabilir ve yönetebilir. Bu, AutoGen ekosisteminin büyümesine ve sürekli gelişmesine katkıda bulunur.
  • Çoklu Dil Desteği: AutoGen v0.4, farklı programlama dillerinde oluşturulan ajanlar arasında etkileşim kurmayı mümkün kılar. Şu anda Python ve .NET dilleri desteklenmektedir ve gelecekte daha fazla dil desteği eklenmesi planlanmaktadır. Bu sayede, farklı dillerde çalışan geliştiriciler, ortak projeler üzerinde daha kolay bir şekilde çalışabilirler.
  • Tam Tip Desteği: Arayüzler, derleme zamanında tip kontrollerini uygular. Bu, kodun daha sağlam ve güvenilir olmasını sağlar, hataların önlenmesine yardımcı olur ve bakım maliyetlerini düşürür.

Yeni AutoGen Çerçevesi

Şekil 1'de gösterildiği gibi, AutoGen çerçevesi, çerçeve, geliştirici araçları ve uygulamalar arasında net sorumluluklara sahip katmanlı bir mimariye sahiptir. Çerçeve, üç katmandan oluşur:

  • Temel: Olay odaklı bir ajan sistemi için temel yapı taşlarını sağlar. Bu katman, mesajlaşma, durum yönetimi, zamanlama gibi temel işlevleri içerir.
  • AgentChat: Core katmanı üzerine inşa edilmiş görev odaklı, yüksek seviyeli bir API'dir. Grup sohbeti, kod yürütme, önceden oluşturulmuş ajanlar ve daha fazlasını içerir. AutoGen v0.2'ye en yakın katman olan AgentChat, geçiş işlemini kolaylaştırır.
  • Uzantılar: Çekirdek arayüzlerinin ve üçüncü taraf entegrasyonlarının uygulamalarıdır. Örneğin, Azure kod yürütücüsü ve OpenAI model istemcisi gibi bileşenler bu katmanda bulunur.

Geliştirici Araçları

AutoGen 0.4, geliştiricilerin AutoGen ile çalışma ve deney yapmalarını desteklemek için bir dizi gelişmiş araç içerir:

  • AutoGen Bench: Ajanları, görevler ve ortamlar arasında performanslarını ölçerek karşılaştırmalar yapmaya olanak tanır. Bu sayede, farklı ajanların performansını değerlendirmek ve en iyi uygulamaları belirlemek mümkün olur.
  • AutoGen Studio: v0.4 AgentChat API üzerine yeniden inşa edilen bu düşük kodlu arayüz, hızlı AI ajan prototiplemesi sağlar.some text
    • Gerçek zamanlı ajan güncellemeleri: Asenkron, olay odaklı mesajlarla ajan eylemlerini gerçek zamanlı olarak görüntüleyin.
    • Orta yürütme kontrolü: Konuşmaları duraklatın, ajan eylemlerini yönlendirin ve ekip kompozisyonunu ayarlayın. Daha sonra sorunsuz bir şekilde görevlere devam edin.
    • UI aracılığıyla etkileşimli geri bildirim: KullanıcıProxyAjanı ekleyerek, ekip çalışmaları sırasında gerçek zamanlı olarak kullanıcı girdisi ve yönlendirme sağlayın.
    • Mesaj akışı görselleştirme: Mesaj yollarını ve bağımlılıklarını haritalayan sezgisel bir görsel arayüzle ajan iletişimini anlayın.
    • Sürükle ve bırak ile ekip oluşturucu: Bileşenleri sürükleyip bırakarak görsel olarak ajan ekipleri tasarlayın ve ilişkilerini, özelliklerini yapılandırın.
    • Üçüncü taraf bileşen galerileri: İşlevselliği genişletmek için harici galerilerden özel ajanlar, araçlar ve iş akışları içe aktarın ve kullanın.
  • Magentic-One: Çeşitli alanlarda açık uçlu web ve dosya tabanlı görevleri çözmek için tasarlanmış yeni bir genel amaçlı çoklu ajan uygulamasıdır. Örneğin, web'de araştırma yapmak, belgeleri özetlemek, verileri analiz etmek gibi günlük hayatta ve iş hayatında sıkça karşılaşılan görevleri otomatik olarak gerçekleştirebilir. Bu uygulama, iş, kişisel yaşam ve diğer birçok alanda sıkça karşılaşılan görevleri tamamlayabilen ajanlar oluşturma yolunda önemli bir adımdır.

AutoGen v0.4'e Geçiş

Önceki v0.2 API'sinden sorunsuz bir şekilde geçiş yapmak için çeşitli önlemler alınmıştır.

  • AgentChat API, v0.2 ile aynı soyutlama seviyesini koruyarak, mevcut kodun v0.4'e kolayca taşınmasını sağlar. Örneğin, AgentChat, v0.2'dekiyle benzer davranışlara sahip bir AssistantAgent ve UserProxy ajanı sunar. Ayrıca, RoundRobinGroupChat ve SelectorGroupChat gibi uygulamaları içeren bir ekip arayüzü, v0.2'deki GroupChat sınıfının tüm özelliklerini kapsar.
  • v0.4, mesaj akışını gerçek zamanlı olarak izleme, görev ilerlemesini kaydetme ve duraklatılan eylemleri kaldığı yerden devam ettirme gibi birçok yeni işlevsellik sunar. Bu sayede, daha esnek ve kontrol edilebilir bir çalışma ortamı sağlanır.
  • Ayrıntılı bir geçiş kılavuzu mevcuttur. Bu kılavuz, geliştiricilere v0.2'den v0.4'e geçiş sürecinde adım adım rehberlik eder.