NotlarMimariAjan tabanlı yapay zekâ sistemleri

A2A, iç mesaj yolunuz değildir.

A2A, bir ajan sisteminin sınırını aşar. Sınırın içindeki işi ise kalıcı bir olay yolu koordine eder.

Yazan: Can Demir · eqlx'in kurucusuYayın 7 dk okuma

A2A ile kalıcı bir olay yolu (durable event bus) farklı sorunları çözer. A2A, bağımsız işletilen ajan sistemleri için açık bir birlikte çalışabilirlik protokolüdür. Kalıcı olay yolu ise tek bir sistemin içindeki işi koordine etmek için yapılan bir uygulama tercihidir. İkisine birden “A2A” demek, en çok önem taşıyan sınırı gizler: ajanın sahibi kim, ona yetkiyi kim veriyor ve görevin bir bitiş durumuna ulaşmasından kim sorumlu?

Bu ayrım biçimsel değil. A2A şunu tanımlar: içi görünmeyen (opaque) bir ajan sistemi, başka bir sistemin işlevlerini nasıl keşfeder, görev başlatabilecek bir mesajı nasıl gönderir, durum güncellemelerini nasıl alır ve çıktıları (artifact) nasıl toplar. Uzun süren işi ve JSON-RPC, gRPC ve JSON ile HTTP dâhil birden çok protokol bağlamasını (binding) destekler. Bir kuyruk gerektirmez, bir olay kaydı dayatmaz ve iki ajanın da iç orkestrasyonunu dışarı açmaz.

Önce sınırı çizin

A2A'yı, bağımsız kurulmuş ajan sistemlerinin uygulama ayrıntılarını paylaşmadan birlikte çalışması gereken yerde kullanın. Bu sınır sağlayıcılar, kuruluşlar, güvenlik alanları ya da sahipleri ayrı servisler arasında olabilir. İstemci bir Agent Card okur ve uzak ajanın gereken işlevi ve arayüzü sunup sunmadığını kontrol eder. Sonra kimlik doğrulamasını yapar, ardından mesaj, görev durumu ve çıktı alışverişine geçer.

İki sistemin içinde de kendi işletme modeline uyan iletim yolunu kullanın. Tek bir süreç hiç olay yolu gerektirmeyebilir. Dağıtık bir iş akışı; yeniden oynatma, geri basınç (backpressure) ve hatadan kurtarma için kalıcı bir olay kaydı ya da görev kuyruğu kullanabilir. Bu iç olaylar, onları ajanlar üretti ya da tüketti diye A2A mesajı olmaz.

Aynı ayrım MCP için de geçerli. MCP, bir ajana araçlara ve veriye erişim verir. A2A ise bir ajan sisteminin işi başka bir ajan sistemine aktarmasını sağlar. İki protokol de süre sınırlarının, yeniden deneme bütçelerinin, onay politikasının ve bitiş sonuçlarının sahibi olan orkestratörün yerini tutmaz.

Sınırlı bir referans akışı

Kurduğumuz sistemlerde bir A2A alışverişi doğrudan bir iç kuyruğa kopyalanmaz; sistemin sınırında çevrilir.

  1. İstekte bulunan ajan, uzak işlevi ve desteklenen arayüzü karşı tarafın Agent Card'ından keşfeder.
  2. Sınır katmanı, çağıranın kimliğini doğrular ve bir iç iş akışı çalıştırması oluşturmadan önce istenen kapsamı denetler.
  3. Orkestratör bir süre sınırı, bir idempotency anahtarı (tekrarlanan isteğin ikinci kez etki etmesini önleyen anahtar) ve sınırlı bir yeniden deneme bütçesi kaydeder; ardından işi ilgili uzman ajana aktarır.
  4. İç olaylar, durum değişikliklerini ve alındı kayıtlarını tutar. A2A sınırından yalnızca protokolü ilgilendiren durum ve çıktılar geçer.
  5. Protokol tarafındaki görev; tamamlandı, başarısız, iptal edildi ya da reddedildi gibi bir bitiş durumuna ulaşır. Politika bir kişiyi gerektiriyorsa iç çalıştırma, sahipliği adı belli bir insan kuyruğuna aktarır; sonu açık yeni bir ajan konuşması başlatmaz.

Bu, bilerek seçilmiş tek yönlü bir sahiplik modelidir. Çalıştırmayı kabul eden orkestratör, işin bir kısmını başka bir ajan yapsa bile çalıştırmanın bitiş durumundan sorumlu kalır. İşi aktarmak, hesap verme sorumluluğunu aktarmak değildir.

Yeniden deneme bir politikadır, sohbet değil

Yeniden deneme, aynı sınırlı çalıştırma içindeki yeni bir denemedir; iki ajanın birbirinden sonsuza dek açıklama istemesine verilmiş bir izin değildir. Orkestratör, iş başlamadan önce en fazla deneme sayısını ve deneme başına süre sınırını belirler. Yeniden denemeler bir idempotency stratejisiyle güvenli olmalıdır. Bir yanıt kayboldu diye, zaten başarılı olmuş olabilecek bir eylem öylece tekrarlanamaz.

Yeniden deneme bütçesi bittiğinde sonraki durum açıktır: insan incelemesi, deterministik bir yedek yol (fallback) ya da başarısızlık. Operatör; ilk isteği, yapılan denemeleri, durum geçmişini, dönen çıktıları ve sistemin neden durduğunu görür. Bu kayıt, birbirine daireler çizerek mesaj atan ajanlarla dolu bir diyagramdan daha işe yarar.

İç olay katmanı neyi üstlenir

Bir iş akışı kalıcı bir iç koordinasyona ihtiyaç duyuyorsa, olay zarfı (event envelope) A2A'nın iletim biçimiymiş gibi davranmadan işleyişi görünür kılmalıdır. İşe yarar bir zarf şunları taşır: iş akışı kimliği, olay türü, şema sürümü, neden kimliği (causation id), idempotency anahtarı, deneme numarası, süre sınırı ve onaylı verinin sınırsız bir kopyası yerine o veriye bir referans.

Bu katman; yeniden oynatma, aynı iş akışı anahtarı içinde sıralama, geri basınç ölçümleri, işlenemeyen mesajların ayrı bir kuyruğa alınması (dead-letter) ve yalnızca ekleme yapılabilen bir denetim izi sağlayabilir. Bunlar, seçilen olay altyapısının ve orkestrasyon politikasının özellikleridir. A2A'nın verdiği garantiler değildir.

Adları dürüst kullanın

Dışa açık sınır, A2A spesifikasyonunu uyguluyorsa A2A'dır. İç koordinasyon katmanı, gerçekten kalıcı olay semantiği sağlıyorsa kalıcı olay yoludur. Orkestratör ise durumun ve politikanın sahibi olan bileşendir. Bu adları ayrı tutmak; mimari incelemeleri, güvenlik incelemelerini ve bir arıza anındaki müdahaleyi belirgin biçimde netleştirir.

Sonuç daha az büyülü ama daha kolay işletilir: bağımsız ajanlar standart bir sınırda birlikte çalışabilir, sistemin içindeki her çalıştırmanın da yine bir sahibi, bir bütçesi ve bir sonu olur.

Kaynaklar

Tür

Ajan tabanlı yapay zekâ sistemleri

Hazırlar ve uygular

Not tipi

Mimari

Etiketler

  • a2a
  • protokol
  • mimari
  • ajanlar

https://eqlx.ai/tr/blog/a2a-protocol-design-notes · Basılı kopya; güncel sürüm web sitesindedir.