IBM'in CUGA'sı ile Ajan Uygulamaları: Tek Dosyada Çalışan 24 Örnek
IBM tarafından geliştirilen açık kaynaklı CUGA (Configurable Generalist Agent) ajan çatısı, geliştiricilere sadece araç listesi ve bir komut istemi yazarak çalışan ajan uygulamaları oluşturma imkanı sunuyor. Bu makalede, CUGA'nın 24 tek dosyalık örnek uygulaması, mimarisi ve üretim ortamında yönetişim özellikleri detaylandırılıyor.
CUGA Nedir?
CUGA (Configurable Generalist Agent), IBM tarafından geliştirilen açık kaynaklı bir ajan (agent) çatısıdır. Geliştiricilerin sadece bir araç listesi (tool list) ve bir komut istemi (prompt) yazarak çalışan yapay zeka ajanları oluşturmasını sağlar. `pip install cuga` komutuyla kurulabilen bu çatı, planlama, yürütme döngüsü, araç çağrıları ve durum yönetimi gibi alt yapı işlerini üstlenir. Geriye kalan tek şey, ajanın hangi araçlara erişeceği ve ne yapması gerektiğidir.
Nasıl Çalışır?
CUGA, bir model etrafındaki orkestrasyonu otomatikleştirir. Ajan, harekete geçmeden önce planlama yapar, ardından araç çağrıları ve üretilen kod (CodeAct) ile yürütme gerçekleştirir. Uzun görevlerde (örneğin 20 adım), ara sonuçları kaybeder ve yeniden türetmek zorunda kalan diğer ajanların aksine CUGA, durumu tutar ve bir yansıma (reflection) adımı ile hatalı çağrıları yakalayıp yeniden planlama yapar. Bu mekanizma sayesinde AppWorld ve WebArena gibi kıyaslama testlerinde (benchmark) üst sıralarda yer alır. Ayrıca, yapılandırma dosyasından Hızlı (Fast), Dengeli (Balanced) ve Doğru (Accurate) olmak üzere üç farklı muhakeme modu seçilebilir.
Tek Dosyalık Uygulamalar
CUGA'nın gücünü göstermek için 24 adet tek dosyalık örnek uygulama geliştirilmiştir. Her biri bir FastAPI dosyası olup, bir `CugaAgent` nesnesini sarar. Örnekler arasında film öneri sistemi, IBM Cloud mimari danışmanı, web araştırmacısı, arXiv makale sıralayıcı, şehir brifingleri, seyahat planlayıcı, yemek tarifi, iz rotası, PDF/ ses/ video üzerinde RAG (Retrieval-Augmented Generation), canlı metrik izleme ve kurumsal belge sorgulama yer alır. Ayrıca, yedi ajanlı bir potansiyel müşteri yaratma sistemi olan Ouroboros da bulunur. Tüm uygulamalar aynı iskeleti paylaşır: araç listesi ve komut istemi değiştirilerek yeni bir uygulama oluşturulabilir.
Yönetişim ve Politika Sistemi
CUGA, ajanların güvenli ve kontrollü çalışmasını sağlamak için yerleşik bir politika sistemine sahiptir. Altı farklı politika türü vardır: Niyet Koruması (Intent Guard), Araç Kılavuzu (Tool Guide), Çıktı Biçimlendirici (Output Formatter), Araç Onayı (Tool Approval), Girdi Denetleyicisi (Input Scanner) ve Özel Politika (Custom Policy). Politikalar, anahtar kelime eşlemesinin ötesinde anlamsal benzerlik (semantic similarity) ile de tetiklenebilir. Örneğin, bir kullanıcı "force push" yapmak istediğinde Niyet Koruması devreye girer ve isteği engeller. Politikalar, `.cuga` klasöründe kodun yanında sürümlenir.
Çoklu Ajan ve Yetenek Genişletme
Bir ajanın bağlamı çok büyüdüğünde, iş bölüşümü yapmak için `CugaSupervisor` kullanılır. Bu yönetici ajan, uzmanlaşmış alt ajanlara (specialist) görev dağıtır. Her alt ajanın kendi araçları, komut istemi ve izole bağlamı vardır. Ayrıca, Yetenek Becerileri (Agent Skills) ile belirli görevler için oynatma kitaplıkları (playbook) yüklenebilir. CUGA'nın ALTK-Evolve çerçevesi, ajanın kendi çalışmalarından öğrenerek becerilerini iyileştirmesini sağlar.
Neden Önemli?
CUGA, Türk geliştiriciler ve kurumsal ekipler için önemli bir araçtır. Açık kaynaklı olması, model bağımsız çalışması ve yerleşik yönetişim özellikleri sayesinde, bir dizüstü bilgisayarda yazılan ajan kodu, üretim ortamında güvenli bir şekilde yeniden dağıtılabilir. IBM Sovereign Core ile veri, kontrol düzlemi ve yürütme motoru aynı mantıksal sınır içinde çalışır; ajanlar geçici, izole konteynırlarda çalışır ve hiçbir telemetri dışarı sızmaz. Bu, özellikle veri egemenliği (data sovereignty) gerektiren sektörler için kritiktir. CUGA, geliştiricilere alt yapıyla uğraşmak yerine asıl işe odaklanma imkanı verir.
Hemen Başlayın
CUGA ile bir ajan uygulaması oluşturmak için `pip install cuga` komutunu çalıştırın, ardından `cuga-apps` reposunu klonlayın ve bir örneği çalıştırın. Tüm uygulamalar, üçüncü taraf anahtarları olmadan çalışabilir; sadece bir LLM sağlayıcısı yeterlidir. Örnekler, açık ağırlıklı `gpt-oss-120b` modeli ile çalışır, ancak model tek bir ortam değişkeni ile değiştirilebilir. Daha fazla bilgi için cuga.dev adresini ziyaret edin.