Ana içeriğe geç

Google'ın Agent2Agent Protokolü (A2A): Örneklerle Bir Rehber

Google'ın, farklı sistemlerdeki yapay zeka ajanlarının iş birliği yapmasına olanak tanıyan açık protokolü Agent2Agent (A2A) hakkında bilgi edinin.
Aashi Dutt
Aashi Dutt

Ücretsiz Hesabınızı Oluşturun

Alıştırma and program your progress.

Google ile devam edinDevam ederek, Kullanım Koşullarımızı ve Gizlilik Politikamızı kabul etmiş ve verilerinizin ABD'de saklandığını onaylamış olursunuz.

Yapay zeka ajanları, görevlerin nasıl otomatikleştirildiğini, kararların nasıl alındığını ve yazılım sistemlerinin nasıl iş birliği yaptığını yeniden şekillendiriyor. Ancak kuruluşlar daha fazla otonom ajan geliştirdikçe, tedarikçiler ve çerçeveler arasında standartlaştırılmış iletişim ihtiyacı kritik hale geliyor. İşte Agent2Agent (A2A) tam da burada devreye giriyor.

A2A, Google tarafından geliştirilen ve farklı sistemlerdeki yapay zeka ajanları arasında iş birliğini standartlaştırmayı amaçlayan, açık ve tedarikçiden bağımsız bir protokoldür.

Bu eğitimde, A2A'nın nasıl çalıştığını, tasarım ilkelerini, etki alanları arasında gerçek dünyadaki çoklu ajan iş akışlarını nasıl desteklediğini ve MCP'den nasıl farklılaştığını anlatacağım.

Agent 2 Agent (A2A) Nedir?

Agent2Agent (A2A), opak (kara kutu) ajanlar arasında birlikte çalışabilirliği sağlayan açık bir protokoldür. Yapay zeka ajanlarının şunları yapmasına olanak tanır:

  • Birbirlerini keşfetmek
  • Yapılandırılmış görevleri değiştokuş etmek
  • Yanıtları akış olarak iletmek
  • Çok turlu konuşmaları yönetmek
  • Metin, görsel, video ve veri gibi farklı modalitelerde çalışmak.

Aşağıdaki diyagram üzerinden ilerleyerek A2A'nın temel fikrini açıklamaya çalışayım:

agent2agent (a2a)

Görselde iki ajan gösteriliyor: bir Google Ajanı (mavi) ve muhtemelen üçüncü taraf bir hizmetten gelen başka bir ajan (yeşil). Her iki ajan da iki tür belgeyi veya görevi işlemeye çalışıyor. Yeşil ajan, yeşil onay işaretlerinden anlaşıldığı üzere ikisinde de başarılı olurken, Google ajanı birinde başarılı oluyor, diğerinde başarısız oluyor.

Bu tutarsızlık, A2A protokolünün temel bileşenleri olan müzakere ve bilgi paylaşımı ihtiyacını vurguluyor.

Agent2Agent tasarım ilkeleri

A2A, bellek, düşünce veya araç paylaşmadan son kullanıcılar için görevleri yerine getirmek üzere beş temel ilke etrafında tasarlanmıştır. Bu beş ilke şunlardır:

  • Aracı yetenekleri benimse: Ajanlar bellek, araçlar veya yürütme planlarını paylaşmadan iş birliği yapar.
  • Açık standartlar üzerine kurulu: A2A, mevcut teknoloji yığınlarıyla kolay birlikte çalışabilirlik için HTTP, JSON-RPC ve SSE kullanır.
  • Varsayılan olarak güvenli: OpenAPI kimlik doğrulama şemalarını izler ve kurumsal düzeyde güvenlik sağlar.
  • Uzun süreli görevleri destekler: A2A, arka plan görevleri, insan onayı gerektiren süreçler ve akış güncellemelerini yönetmek üzere tasarlanmıştır.
  • Modaliteden bağımsız: Görseller, ses, PDF, HTML, JSON ve diğer yapılandırılmış/yapılandırılmamış formatları işler.

Bu tasarım ilkeleri, A2A'yı ölçeklenebilir, kurumsal düzeyde hazır, çoklu ajan ekosistemlerinin belkemiği yapar.

A2A Nasıl Çalışır?

Bu bölümde Agent2Agent protokolünün iç işleyişine dalacak, ajan iletişiminin mimarisini ve yaşam döngüsünü anlayacağız. Dahil olan başlıca aktörleri, taşıma ve kimlik doğrulama katmanlarını ve Agent Kartları aracılığıyla keşfi inceleyeceğiz.

Aktörler ve protokoller

A2A protokolü üç temel aktör tanımlar:

  • Kullanıcı: Bir görevi başlatan son kullanıcı.
  • İstemci ajan: Kullanıcı adına bir görevi oluşturan ve gönderen talep sahibi.
  • Uzak ajan: Görevi yerine getiren ve sonuçları geri gönderen alıcı ajan.

Yukarıdaki diyagram örneğine dönersek, mavi ajan istemci ajan, yeşil ajan ise uzak ajandır.

Ajan kartları ve keşif

Ajanlar meta verilerini ve yeteneklerini, genellikle /.well-known/agent.json adresinde barındırılan, Ajan Kartı adlı standartlaştırılmış bir JSON belgesi aracılığıyla yayımlar. Bu kart şunları içerir:

  • Ad, sürüm ve barındırma URL'si
  • Açıklama ve hizmet sağlayıcı
  • Desteklenen girdi/çıktı modaliteleri ve içerik türleri
  • Kimlik doğrulama yöntemleri 
  • Etiketler ve örneklerle birlikte ajan becerileri listesi

Keşif; DNS, kayıt defterleri, pazar yerleri veya özel kataloglar üzerinden gerçekleştirilebilir.

Çekirdek iletişim nesneleri

A2A iletişiminin kalbinde, bir işin atomik bir birimini temsil eden yapılandırılmış bir nesne olan Task bulunur. Görevlerin gönderildi, çalışıyor, girdi-gerekiyor veya tamamlandı gibi yaşam döngüsü durumları vardır.

Her Task şunları içerir:

  • Mesajlar: İstemci ile Uzak ajan arasındaki konuşma alışverişlerinde kullanılır
  • Eserler (artifacts): Uzak ajan tarafından oluşturulan değiştirilemez sonuçlar içindir.
  • Parçalar (parts): Mesajlar veya eserler içindeki düz metin, dosya blobları veya JSON gibi kendi içinde yeterli veri bloklarıdır.

A2A İş Akışı Örneği

A2A'nın nasıl çalıştığını bir örnek iş akışıyla anlayalım:

  1. Kullanıcı bir görev başlatır: Kullanıcı bir İstemci Ajanına şu şekilde bir istek gönderir: “Dizüstü bilgisayar değişimi planla.”
  2. İstemci Ajan bir Uzak Ajan keşfeder: İstemci ajan, herkese açık veya özel bir URL'de barındırılan bir Ajan Kartı kullanarak diğer yetkin ajanları arar. Bu JSON dosyası; becerileri, desteklenen modaliteleri, kimlik doğrulamayı ve hizmet URL'sini içerir.
  3. İstemci Ajan bir Task gönderir: İstemci ajan, seçilen Uzak Ajana HTTP üzerinden JSON-RPC 2.0 kullanarak bir task/send isteği gönderir. Yük (payload) şunları içerir:
    • Bir Görev Kimliği (Task ID)
    • Bir Oturum Kimliği (Session ID) (isteğe bağlı)
    • Bir veya daha fazla Parçaya sahip bir Mesaj (ör. metin, dosya, JSON)
  4. Uzak Ajan yanıt verir: Uzak ajan görevi işler ve şu şekilde yanıt verir:
    • Anlık sonuçlar (artifact ile)
    • Ara mesajlar (message ile)
    • Veya daha fazla bilgi talebi (durumu girdi-gerekiyor olarak ayarlayarak)
  5. Akış ve itme güncellemeleri (asenkron ise): Görev uzun sürüyorsa, uzak ajan Sunucu Taraflı Olaylar (SSE) kullanarak kısmi sonuçları geri akıtabilir. İstemci bağlantıyı keserse, istemcinin sağladığı güvenli bir webhook'a itme bildirimleri gönderilebilir.
  6. Görev durum geçişleri: Görev şu durumlar arasında geçiş yapar: gönderildi → çalışıyor → girdi-gerekiyor → tamamlandı. Her noktada, ajan istemci için güncellemeler veya yeni eserler yayımlayabilir.
  7. Eserler ve mesajlar: Mesajlar iletişim veya netleştirme için kullanılırken (ör. “Lütfen fişlerinizi yükleyin.”), Eserler nihai çıktıları göstermek için kullanılır: rapor PDF'i, analiz özeti, JSON listesi vb.
  8. İstemci Ajan görevi sürdürür veya tamamlar: Girdi gerekiyorsa, istemci ajan bunu kullanıcıdan toplayıp bir takip task/send gönderir. Görev tamamlandığında, istemci task/get kullanarak tüm eserleri alabilir.

A2A Örneği: BT Yardım Masası Talep Çözümü

Destek taleplerini otonom şekilde yönetip çözen yapay zeka ajanları kullanan kurumsal bir BT yardım masası sistemi hayal edin. Bu düzende, bir kullanıcı ajanı şu gibi bir isteği alır:

“Son yazılım güncellemesinden sonra dizüstü bilgisayarım açılmıyor.”

Kullanıcı ajanı ardından A2A aracılığıyla birden fazla uzak ajanla iş birliği yaparak bir çözüm iş akışını orkestre eder.

A2A example

Yukarıdaki senaryoda ajanlar A2A üzerinden şu şekilde etkileşir:

  • İstemci Ajan, Donanım Tanılama Ajanına cihaz kontrolü istemiyle bir görev gönderir.
  • Donanımda sorun yoksa, yakın güncellemeleri değerlendiren Yazılım Geri Alma Ajanına yönlendirir.
  • Geri alma başarısız olursa, Donanım Değişim Ajanı devreye girerek cihaz değişimini başlatır.

Her ajan bağımsız çalışır, yeteneklerini içeren bir Ajan Kartı sunar ve yapılandırılmış Görevler aracılığıyla asenkron iletişim kurar. Ajanlar şunları yapabilir:

  • Günlükleri veya tanı verilerini eserler olarak akışta iletmek
  • Kullanıcı girdisi gerekiyorsa akışı duraklatmak
  • Kendi bölümleri tamamlandıkça itme güncellemeleri göndermek

Bu, saf bir A2A kullanım durumudur; çünkü:

  • API'ler veya OCR motorları gibi yapılandırılmış araçlar devrede değildir
  • Tüm koordinasyon, opak ve iş birliği yapan ajanlar arasında gerçekleşir
  • Ajanlar, bireysel karar mantığına ve yerel modalite işleme yeteneğine sahip eşler gibi hareket eder

A2A ve MCP: Ne Zaman Hangisi?

A2A ve MCP, ajanik sistemlerde farklı ama tamamlayıcı zorlukları çözer. A2A, ajanların otonom eşler olarak iş birliği yapmasını sağlamaya odaklanırken, model bağlam protokolü (MCP) ajanları yapılandırılmış araçlar ve harici kaynaklarla bağlamaya yöneliktir.

Neden hem A2A hem de MCP gerekiyor?

Protokoller, birlikte çalışabilirlik için standartlar oluşturur. Ajanik dünyada iki tür birlikte çalışabilirlik kritik önemdedir:

  • Araç birlikte çalışabilirliği (MCP): Ajanların yapılandırılmış işlevleri, API'leri veya araçları çağırması.
  • Ajan birlikte çalışabilirliği (A2A): Ajanların doğal dilde veya karma modalitelerde iş birliği yapması.

Örnek: Kredi onay iş akışı

Bir finans kuruluşu için kredi onaylarını otomatikleştiren çoklu ajanlı bir sistem hayal edin.

A2A and MCP workflow

Bu senaryoda A2A ve MCP şu şekilde birlikte çalışır:

Adım 1: Araçlar ve API'lerle başvurunun ön işlenmesi (MCP)

Bir LoanProcessor ajanı kullanıcıdan bir kredi başvurusu alır. MCP'yi kullanarak şunları yapar:

  • Bir kredi skoru API'ni çağırır
  • Sonrasında, güvenli bir veri kaynağından banka işlem geçmişini getirir
  • Son olarak, yüklenen belgeleri bir OCR ile doğrular

Adım 2: Nihai karar için çoklu ajan koordinasyonu (A2A)

1. adımdaki yapılandırılmış verilere dayanarak, ajan A2A kullanarak şunları yapar:

  • Bir RiskAssessmentAgent ile iş birliği yaparak borçlu riskini değerlendirir

  • Ardından bir ComplianceAgent ile görüşerek kredinin yasal ve düzenleyici gereklilikleri karşıladığından emin olur

  • Onaylanırsa, fon transferini planlamak üzere bir DisbursementAgent'a devreder.

Sonuç

Agent2Agent (A2A), büyük ölçekli çoklu ajan sistemlerindeki eksik halkadır. Net ajan sınırları, yapılandırılmış görev tabanlı iletişim ve yerleşik akış/itme desteğiyle modüler, keşfedilebilir ve ölçeklenebilir ajan ekosistemleri sağlar.

A2A, işletmelerin gerçek dünya ihtiyaçları için tasarlanmıştır; güvenli, asenkron, modalite esnek ve tedarikçiden bağımsızdır. İster Google'ın ADK'sını, ister LangGraph, CrewAI veya kendi çerçevenizi kullanın, A2A ajanlarınızın ajanlarla konuşmasını sağlar.

Yapay zeka ajanları hakkında daha fazla bilgi edinmek için şu blogları öneririm:

Aashi Dutt

Yazar

Aashi Dutt

ML (Üretken Yapay Zekâ) alanında Google Developers Uzmanıyım, Kaggle 3x Expert unvanına sahibim ve 3+ yıllık teknoloji deneyimiyle Women Techmakers Elçisiyim. 2020'de bir sağlık teknolojileri girişiminin kurucu ortağı oldum ve Georgia Tech'te makine öğrenmesi alanında uzmanlaşarak bilgisayar bilimleri yüksek lisansı yapıyorum.

Konular

İlgili