Genel ajan keşfi
Başka bir A2A istemcisinin, ajanınızın bir görevi tamamlayıp tamamlayamayacağına karar vermeden önce aldığı JSON'ı şekillendirmek için bu örnekleri kullanın.
6 kopyalamaya hazır JSON şablonu · A2A v1.0
Pratik A2A v1.0 şablonlarına göz atın, tasarım kararlarını anlayın, ardından herhangi bir örneği kendi ajanınız için uyarlayın.
Başka bir A2A istemcisinin, ajanınızın bir görevi tamamlayıp tamamlayamayacağına karar vermeden önce aldığı JSON'ı şekillendirmek için bu örnekleri kullanın.
Sağlayıcı, skill, etiket, yetenek, ve güvenlik meta verilerini uyarlayarak incelemecilerin ajanın ne yaptığını ve kimin işlettiğini anlamasını sağlayın.
Ekipler onları iş akışlarına entegre etmeden önce dahili ajanlar arasında uç nokta, kimlik doğrulama, ve skill açıklamalarını standartlaştırın.
JSON şablonları
Ürün sorularını, sipariş sorgulamalarını, iadeleri, ve eskalasyon devirlerini ele alır.
Neden bu şekilde oluşturuldu
{
"name": "Müşteri Destek Ajanı",
"description": "Müşteri desteği sorularını yanıtlar, sipariş içeriğini alır ve çözülmemiş sorunları bir insan ekibine iletir.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/customer-support",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Örnek A.Ş.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": true,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "resolve-customer-support-request",
"name": "Müşteri desteği talebini çözümleyin",
"description": "Bir müşteri destek talebini sınıflandırır, gerekli bağlamı toplar, bir çözüm önerir ve güven düşük olduğunda üst kademeye iletir.",
"tags": [
"support",
"orders",
"returns"
],
"examples": [
"Siparişimi iade etmeme yardım edin."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/customer-support/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}Uygun randevu zaman dilimlerini bulur ve rezervasyon onaylarını hazırlar.
Neden bu şekilde oluşturuldu
{
"name": "Rezervasyon Ajanı",
"description": "Uygunluğu araştırır, rezervasyon seçeneklerini önerir ve randevu rezervasyonlarını onaya hazırlar.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/booking",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Örnek A.Ş.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": false,
"pushNotifications": true,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "find-and-prepare-booking",
"name": "Rezervasyonu bulun ve hazırlayın",
"description": "Kaynak kullanılabilirliğini kontrol eder, rezervasyon aralıklarını karşılaştırır ve yapılandırılmış bir rezervasyon teklifi döndürür.",
"tags": [
"booking",
"calendar",
"availability"
],
"examples": [
"Yarın öğleden sonra 30 dakikalık bir randevu bulun."
]
}
],
"securitySchemes": {
"apiKey": {
"apiKeySecurityScheme": {
"location": "header",
"name": "X-API-Key"
}
}
},
"security": [
{
"apiKey": []
}
]
}Ürünleri, uygunluğu, fiyatları, ve satın alma kısıtlamalarını karşılaştırır.
Neden bu şekilde oluşturuldu
{
"name": "Alışveriş Ajanı",
"description": "Ürünleri kullanıcı kısıtlamalarıyla karşılaştırır ve sıralanmış satın alma seçeneklerini ödünlerle birlikte döndürür.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/shopping",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Örnek A.Ş.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": false,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "compare-shopping-options",
"name": "Alışveriş seçeneklerini karşılaştırın",
"description": "Aday ürünleri değerlendirir, kısıtlamalara göre filtreler ve sıralanmış önerileri mantıklı bir şekilde döndürür.",
"tags": [
"shopping",
"commerce",
"recommendations"
],
"examples": [
"1.200 doların altındaki hafif dizüstü bilgisayarları karşılaştırın."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/shopping/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}Kod görevlerini inceler, yamalar önerir, ve uygulama kararlarını açıklar.
Neden bu şekilde oluşturuldu
{
"name": "Kodlama Ajanı",
"description": "Kodu analiz ederek, değişiklik önererek ve uygulama notlarını geri göndererek yazılım mühendisliği görevlerine yardımcı olur.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/coding",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Örnek A.Ş.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": true,
"extendedAgentCard": true
},
"defaultInputModes": [
"text/plain",
"application/json"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "implement-code-change",
"name": "Kod değişikliğini uygulayın",
"description": "Bir kodlama isteğini okur, ilgili dosyaları inceler, bir yama teklifi döndürür ve doğrulama adımlarını özetler.",
"tags": [
"coding",
"review",
"patches"
],
"examples": [
"Kullanıcı API'sine sayfalandırma ekleyin."
]
}
],
"securitySchemes": {
"apiKey": {
"apiKeySecurityScheme": {
"location": "header",
"name": "X-API-Key"
}
}
},
"security": [
{
"apiKey": []
}
]
}Kaynakları toplar, kanıt çıkarır, ve yapılandırılmış araştırma notları döndürür.
Neden bu şekilde oluşturuldu
{
"name": "Araştırma Ajanı",
"description": "Kaynak materyali toplar, kanıtları çıkarır ve alıntılarla birlikte yapılandırılmış araştırma notları üretir.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/research",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Örnek A.Ş.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": true,
"pushNotifications": false,
"extendedAgentCard": false
},
"defaultInputModes": [
"text/plain"
],
"defaultOutputModes": [
"text/plain",
"application/json"
],
"skills": [
{
"id": "prepare-research-brief",
"name": "Araştırma özetini hazırlayın",
"description": "Onaylanmış kaynakları arar, iddiaları ve kanıtları çıkarır ve kısa bir araştırma özeti sunar.",
"tags": [
"research",
"evidence",
"citations"
],
"examples": [
"Yenilenebilir enerji politikası hakkında alıntı yapılan bir özet hazırlayın."
]
}
]
}Onayları, durum kontrollerini, ve arka ofis iş akışı güncellemelerini koordine eder.
Neden bu şekilde oluşturuldu
{
"name": "Dahili İş Akışı Ajanı",
"description": "Dahili onayları koordine eder, sistem durumunu kontrol eder ve operasyon ekipleri için iş akışı güncellemelerini hazırlar.",
"supportedInterfaces": [
{
"url": "https://api.example.com/a2a/workflow",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"provider": {
"organization": "Örnek A.Ş.",
"url": "https://example.com"
},
"version": "1.0.0",
"capabilities": {
"streaming": false,
"pushNotifications": true,
"extendedAgentCard": true
},
"defaultInputModes": [
"application/json"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "coordinate-internal-workflow",
"name": "Dahili iş akışını koordine edin",
"description": "İş akışı amacını alır, politika gereksinimlerini kontrol eder, onayları toplar ve son durumu raporlar.",
"tags": [
"workflow",
"operations",
"approval"
],
"examples": [
"Bordro güncellemesini dağıtmak için onay isteyin."
]
}
],
"securitySchemes": {
"oauth2": {
"oauth2SecurityScheme": {
"flows": {
"clientCredentials": {
"tokenUrl": "https://api.example.com/a2a/workflow/oauth/token",
"scopes": {
"agent.invoke": "Invoke agent skills"
}
}
}
}
}
},
"security": [
{
"oauth2": [
"agent.invoke"
]
}
]
}Güvenle uyarlayın
Her Agent Card örneği, kopyalanacak kadar kasıtlı olarak eksiksizdir, ancak Agent Card değiştirilmeden yayınlanmamalıdır. Bunu kendi A2A sunucunuz için bir alan haritası olarak ele alın: kimlik, uç nokta, sağlayıcı, kimlik doğrulama, yetenekler, modlar, ve skill ayrıntılarını üretim değerleriyle değiştirin.
En güçlü Agent Card'lar, ajanın görev sınırını hem sade bir dille hem de makine tarafından okunabilir meta verilerle açıklar. Bir istemci, ajanın ne yapabileceğini, ne yapamayacağını, hangi URL'yi çağıracağını, ve kimlik bilgilerinin gerekip gerekmediğini anlayabilmelidir.
Her example.com URL'sini dağıtılan A2A uç noktanız ve sağlayıcı web sitenizle değiştirin.
Skill adını, açıklamayı, etiketleri (v1.0'da zorunlu), ve örnekleri gerçek görev sınırı için yeniden yazın.
provider.organization'ı ayarlayın ve Agent Card içeriği her değiştiğinde üst düzey version'ı artırın.
Kimlik doğrulama alanlarını yalnızca uç nokta kasıtlı olarak herkese açık olduğunda kaldırın.
defaultInputModes ve defaultOutputModes'u sunucunuzun gerçekte kabul ettiği ve döndürdüğü şeyle uyumlu tutun.
Son JSON'ı doğrulayın ve hizmet alanınızdaki /.well-known/agent-card.json'da yayınlayın.
İnşa etmeye hazır
Agent Card Oluşturucu'da herhangi bir deseni açın, JSON'ı inceleyin, ve yayınlamadan önce doğrulayın.