
Agent2Agent å ¥é (5) - Agent Discovery
ãAgent2Agentãã®ãAgent Discoveryãã«ã€ããŠãŸãšããŸããã
åå
1. A2Aã«ããããšãŒãžã§ã³ãæ€åº
AIãšãŒãžã§ã³ãããAgent2Agentã(A2A) ãããã³ã«ãçšããŠé£æºããã«ã¯ããŸãäºãã®ãšãŒãžã§ã³ããæ€åºããããããã®ãšãŒãžã§ã³ããæäŸããæ©èœãçè§£ããå¿ èŠããããŸãããA2Aãã¯ããAgent CardããéããŠãšãŒãžã§ã³ãã®èªå·±èšè¿°ã®åœ¢åŒãæšæºåããŠããŸãããã ãããããã®ãAgent Cardããæ€åºããæ¹æ³ã¯ãç°å¢ãèŠä»¶ã«ãã£ãŠç°ãªããŸãã
2. Agent Card ã®åœ¹å²
ãAgent Cardãã¯ãA2AãµãŒã (ãªã¢ãŒããšãŒãžã§ã³ã) ã®ããžã¿ã«ãååºããšããŠæ©èœããJSONããã¥ã¡ã³ãã§ãããAgent Cardãã¯ãæ€åºãšã€ã³ã¿ã©ã¯ã·ã§ã³ã®éå§ã«äžå¯æ¬ ã§ãããAgent Cardãã«éåžžå«ãŸããäž»ãªæ å ±ã¯æ¬¡ã®ãšããã§ãã
ã»ID
ååã説æããããã€ããŒæ å ±ã
ã»ãµãŒãã¹ãšã³ããã€ã³ã
A2AãµãŒãã¹ã«ã¢ã¯ã»ã¹ã§ãã URLã
ã»A2A æ©èœ
ã¹ããªãŒãã³ã°ãããã·ã¥éç¥ãªã©ã®ãµããŒããããŠãããããã³ã«æ©èœã
ã»èªèšŒ
ãšãŒãžã§ã³ããšã®ããåãã«å¿ èŠãªèªèšŒã¹ããŒã ã
 (äŸ: ãBearerãããOAuth2ã)
ã»ã¹ãã«
ãšãŒãžã§ã³ããå®è¡ã§ããç¹å®ã®ã¿ã¹ã¯ãŸãã¯æ©èœ (AgentSkill) ã®ãªã¹ããIDãååã説æãå ¥åã¢ãŒããåºåã¢ãŒããäŸãå«ãŸããŸãã
ã¯ã©ã€ã¢ã³ããšãŒãžã§ã³ãã¯ãAgent Cardããè§£æããŠããªã¢ãŒããšãŒãžã§ã³ããç¹å®ã®ã¿ã¹ã¯ã«é©ããŠãããã©ããããã®ã¹ãã«ã®èŠæ±ãã©ã®ããã«æ§æããããããã³å®å šã«éä¿¡ããæ¹æ³ã倿ããŸãã
3. æ€åºæŠç¥
ã¯ã©ã€ã¢ã³ããšãŒãžã§ã³ãããªã¢ãŒããšãŒãžã§ã³ãã®ãAgent Cardããæ€åºããäžè¬çãªæŠç¥ã以äžã«ç€ºããŸãã
3-1. Well-Known URI
ãããªãã¯ãšãŒãžã§ã³ãããŸãã¯ç¹å®ã®ãã¡ã€ã³å ã§ã®åºç¯ãªæ€åºãç®çãšãããšãŒãžã§ã³ãã«æšå¥šãããã¢ãããŒãã§ãã
ã»ã¡ã«ããºã
A2AãµãŒãã¯ããã¡ã€ã³å
ã®æšæºåããããæ¢ç¥ã®ããã¹ã«ãAgent Cardãããã¹ãããŸãã
ã»æšæºãã¹
https://{agent-server-domain}/.well-known/agent.json
(æ¢ç¥ã®URIã«é¢ããRFC 8615ã®ååã«æºæ )ã
ã»ããã»ã¹
ã»ã¯ã©ã€ã¢ã³ããšãŒãžã§ã³ãã¯ãæœåšçãªA2AãµãŒãã®ãã¡ã€ã³ (äŸïŒsmart-thermostat.example.com) ãèªèããŠããããããã°ã©ã ã«ãã£ãŠæ€åºããŸãã
ã»ã¯ã©ã€ã¢ã³ãã¯ãhttps://smart-thermostat.example.com/.well-known/agent.jsonã«å¯ŸããŠHTTP GETãªã¯ãšã¹ããå®è¡ããŸãã
ã»ãAgent Cardããååšãã¢ã¯ã»ã¹å¯èœãªå ŽåããµãŒãã¯JSONã¬ã¹ãã³ã¹ãšããŠãããè¿ããŸãã
ã»å©ç¹
ã·ã³ãã«ã§æšæºåãããŠããããã¡ã€ã³ã解決ã§ããã¯ããŒã©ãŒãã·ã¹ãã ã«ããèªåæ€åºãå¯èœã§ããããšãŒãžã§ã³ãã®ãã¡ã€ã³ãèŠã€ããããšããæ€åºã®åé¡ã广çã«è»œæžããŸãã
ã»èæ
®äºé
ãªãŒãã³ãªæ€åºããŸãã¯ãã¡ã€ã³ã管çããçµç¹å
ã§ã®æ€åºãç®çãšãããšãŒãžã§ã³ãã«æé©ã§ãããAgent CardããæäŸãããšã³ããã€ã³ãã§ã¯ãã«ãŒãã«æ©å¯æ
å ±ãå«ãŸããŠããå Žåãããèªäœã«èªèšŒãå¿
èŠã«ãªãããšããããŸãã
3-2. ãã¥ã¬ãŒã·ã§ã³ãããã¬ãžã¹ã㪠(ã«ã¿ãã°ããŒã¹ã®æ€åº)
ãšã³ã¿ãŒãã©ã€ãºç°å¢ãããŒã±ãããã¬ã€ã¹ããŸãã¯ç¹æ®ãªãšã³ã·ã¹ãã ã§ã¯ããAgent Cardããäžå€®ã¬ãžã¹ããªãŸãã¯ã«ã¿ãã°ã«å ¬éãããããä»ããŠæ€åºããããšãã§ããŸãã
ã»ã¡ã«ããºã
仲ä»ãµãŒãã¹ (ã¬ãžã¹ããª) ããAgent Cardãã®ã³ã¬ã¯ã·ã§ã³ã管çããŸããã¯ã©ã€ã¢ã³ãã¯ããã®ã¬ãžã¹ããªã«ã¯ãšãªãå®è¡ããæ§ã
ãªåºæº (æäŸã¹ãã«ãã¿ã°ããããã€ããŒåãå¿
èŠãªæ©èœãªã©) ã«åºã¥ããŠãšãŒãžã§ã³ããæ€çŽ¢ããŸãã
ã»ããã»ã¹
ã»A2AãµãŒã (ãŸãã¯ãã®ç®¡çè )ã¯ããAgent Cardããã¬ãžã¹ããªãµãŒãã¹ã«ç»é²ããŸãããã®ç»é²ã¡ã«ããºã ã¯ãA2Aãããã³ã«èªäœã®ç¯å²å€ã§ãã
ã»ã¯ã©ã€ã¢ã³ããšãŒãžã§ã³ãã¯ãã¬ãžã¹ããªã®APIã«ã¯ãšãªãå®è¡ããŸããïŒäŸïŒãã¹ããªãŒãã³ã°ããµããŒããããç»åçæãã¹ãã«ãæã€ãšãŒãžã§ã³ããæ€çŽ¢ãããïŒ
ã»ã¬ãžã¹ããªã¯ãäžèŽãããAgent Cardãã®ãªã¹ããŸãã¯ããããžã®åç §ãè¿ããŸãã
ã»ã¡ãªãã
ã»å©çšå¯èœãªãšãŒãžã§ã³ãã®äžå 管çããã¥ã¬ãŒã·ã§ã³ãã¬ããã³ã¹ã
ã»ãã¡ã€ã³åã ãã§ãªããæ©èœã«åºã¥ããæ€åºã容æã«ããŸãã
ã»ã¬ãžã¹ããªã¬ãã«ã§ã¢ã¯ã»ã¹å¶åŸ¡ãããªã·ãŒãä¿¡é Œã¡ã«ããºã ãå®è£ ã§ããŸãã
ã»äŒæ¥åºæãŸãã¯ããŒã åºæã®ãšãŒãžã§ã³ãã«ã¿ãã°ããA2Aæºæ ãšãŒãžã§ã³ãã®ãããªãã¯ããŒã±ãããã¬ã€ã¹ãªã©ã®ã·ããªãªãå¯èœã«ããŸãã
ã»èæ
®äºé
远å ã®ã¬ãžã¹ããªãµãŒãã¹ãå¿
èŠã§ããA2Aãããã³ã«ã§ã¯ãçŸåšããã®ãããªã¬ãžã¹ããªçšã®æšæºAPIã¯å®çŸ©ãããŠããŸããããããã¯å°æ¥çãªèª¿æ»ãšã³ãã¥ããã£ã«ããæšæºåã®å¯Ÿè±¡ãšãªãå¯èœæ§ããããŸãã
3-3. çŽæ¥èšå® / ãã©ã€ããŒãæ€åº
å€ãã®ã·ããªãªãç¹ã«å¯çµåã·ã¹ãã å ããã©ã€ããŒããšãŒãžã§ã³ãããŸãã¯éçºããã³ãã¹ãäžã¯ãã¯ã©ã€ã¢ã³ãã¯ãšãŒãžã§ã³ãã«ãŒãæ å ±ãŸãã¯ãããååŸããããã®URLã䜿çšããŠçŽæ¥èšå®ãããããšããããŸãã
ã»ã¡ã«ããºã
ã¯ã©ã€ã¢ã³ãã¢ããªã±ãŒã·ã§ã³ã¯ããAgent Cardãã®è©³çްæ
å ±ãããŒãã³ãŒãããŠãããããŒã«ã«æ§æãã¡ã€ã«ããèªã¿åãããç°å¢å€æ°ãä»ããŠåãåãããã¯ã©ã€ã¢ã³ããèªèããŠãããã©ââã€ããŒããªç¬èªAPIãšã³ããã€ã³ãããååŸããŸãã
ã»ããã»ã¹
ããã¯ãã¢ããªã±ãŒã·ã§ã³ã®ãããã€ã¡ã³ãããã³æ§ææŠç¥ã«å€§ããäŸåããŸãã
ã»å©ç¹
ãšãŒãžã§ã³ãéã®æ¢ç¥ã®éçãªé¢ä¿ãããå ŽåããŸãã¯åçãªæ€åºãäžèŠãªå Žåã«ã¯ãã·ã³ãã«ãã€å¹æçã§ãã
ã»èæ
®äºé
æ°èŠãŸãã¯æŽæ°ããããšãŒãžã§ã³ããåçã«æ€åºããå Žåã®æè»æ§ã¯äœããªããŸãããAgent Cardãã倿Žãããšãã¯ã©ã€ã¢ã³ãã®åèšå®ãå¿
èŠã«ãªãå ŽåããããŸããç¬èªAPIããŒã¹ã®æ€åºã¯ãA2Aã«ãã£ãŠæšæºåãããŠããŸããã
4. Agent Card ã®ã»ãã¥ãªãã£ä¿è·
ãAgent Cardãèªäœã«ãä¿è·ãã¹ãæ
å ±ãå«ãŸããå ŽåããããŸãã
äŸãã°ã次ã®ãããªæ
å ±ã§ãã
ã»ç€Ÿå å°çšãŸãã¯ã¢ã¯ã»ã¹å¶éã®ãããšãŒãžã§ã³ãã®URLã
ã»ã¹ããŒã åºæã®éæ©å¯æ å ± (OAuthããŒã¯ã³URLãªã©) ã«äœ¿çšãããå Žåã®authentication.credentialsãã£ãŒã«ãã®è©³çްããAgent Cardãã«ãã¬ãŒã³ããã¹ãã®æ©å¯æ å ±ããã®ãŸãŸä¿åããããšã¯åŒ·ãæšå¥šãããŸããã
ã»æ©å¯æ§ã®é«ãã¹ãã«ã瀟å ã¹ãã«ã®èª¬æã
4-1. ä¿è·ã¡ã«ããºã
ã»ãšã³ããã€ã³ãã®ã¢ã¯ã»ã¹å¶åŸ¡
ãAgent CardããæäŸãã HTTP ãšã³ããã€ã³ã (/.well-known/agent.json ãã¹ãã¬ãžã¹ã㪠APIãã«ã¹ã¿ã URL ã®ãããã§ãã£ãŠã) ã¯ãã«ãŒãããããªãã¯ã®èªèšŒãããŠããªãã¢ã¯ã»ã¹ãæ³å®ããŠããªãå Žåã¯ãæšæºç㪠Web ãã©ã¯ãã£ã¹ã䜿çšããŠã»ãã¥ãªãã£ä¿è·ããå¿
èŠããããŸãã
ã»mTLS
ä¿¡é Œã¢ãã«ã«é©åãªå Žåã¯ãã¯ã©ã€ã¢ã³ãèªèšŒã«çžäº TLS ãèŠæ±ããŸãã
ã»ãããã¯ãŒã¯å¶é
ç¹å®ã® IP ç¯å²ãVPCããŸãã¯ãã©ã€ããŒããããã¯ãŒã¯ãžã®ã¢ã¯ã»ã¹ãå¶éããŸãã
ã»èªèšŒ
ãAgent Cardãèªäœãžã®ã¢ã¯ã»ã¹ã«ã¯ãæšæºã® HTTPèªèšŒ (äŸïŒOAuth 2.0 ãã¢ã©ãŒããŒã¯ã³ãAPI ããŒ) ãèŠæ±ããŸãã
ã»ã¬ãžã¹ããªã«ããéžæçãªé瀺
ãšãŒãžã§ã³ãã¬ãžã¹ããªã¯ãèªèšŒãããã¯ã©ã€ã¢ã³ãã®IDãšæš©éã«åºã¥ããŠãç°ãªããAgent Cardããæ§ã
ãªè©³çްã¬ãã«ãè¿ãããžãã¯ãå®è£
ã§ããŸããäŸãã°ããããªãã¯ã¯ãšãªã§ã¯éå®çãªã«ãŒããè¿ãããäžæ¹ãèªèšŒãããããŒãããŒã¯ãšãªã§ã¯ããè©³çŽ°ãªæ
å ±ãå«ãã«ãŒããè¿ããããšãã£ãå
·åã§ãã
ãAgent Cardãã«æ©å¯ããŒã¿ (ç¹°ãè¿ããŸãããã·ãŒã¯ã¬ããã«ã¯æšå¥šãããŸãã) ãå«ãŸããŠããå Žåãã«ãŒãèªäœã匷åãªèªèšŒãšèªå¯ãªãã«å©çšã§ããªãããã«ããããšãéèŠã§ããA2Aãããã³ã«ã§ã¯ããAgent Cardãã«åã蟌ãŸããéçãªã·ãŒã¯ã¬ããã«é Œãã®ã§ã¯ãªããã¯ã©ã€ã¢ã³ãã垯åå€ã§åçãªèªèšŒæ å ±ãååŸããèªèšŒã¹ããŒã ãæšå¥šãããŠããŸãã