이 논문은 2025년 4월 9일 Google Cloud에서 발표한 새로운 개방형 프로토콜인 Agent2Agent (A2A)를 소개합니다. 핵심 목표는 다양한 공급업체나 프레임워크로 구축된 AI Agent들이 서로 상호 운용하고 협업할 수 있도록 하는 것입니다.
핵심 문제:
오늘날 기업들은 생산성을 향상시키기 위해 자율 Agent를 구축하고 있지만, 이들이 silo화된 데이터 시스템 및 애플리케이션 전반에서 동적으로 협업하는 데 어려움이 있습니다. Agent 간의 상호 운용성 부족은 Agentic AI의 잠재력을 완전히 실현하는 데 걸림돌이 됩니다.
제안된 솔루션: Agent2Agent (A2A) 프로토콜
A2A는 AI Agent들이 서로 통신하고, 정보를 안전하게 교환하며, 다양한 엔터프라이즈 플랫폼 및 애플리케이션 상에서 Action을 조율할 수 있도록 하는 개방형 프로토콜입니다. 이는 50개 이상의 기술 파트너와 서비스 제공업체(예: Atlassian, Box, Cohere, Intuit, SAP, Salesforce, ServiceNow, Accenture, Deloitte, KPMG 등)의 지원과 기여를 바탕으로 개발되었습니다.
A2A의 이점:
* Agent의 자율성을 높이고 생산성 향상을 극대화합니다.
* 장기적인 비용을 절감합니다.
* 기업의 전체 애플리케이션 환경에서 Agent들이 작업할 수 있도록 합니다.
* 다양한 플랫폼 및 클라우드 환경에서 Agent를 관리하는 표준화된 방법을 제공합니다.
* Anthropic의 Model Context Protocol (MCP)을 보완합니다.
A2A 설계 원칙:
Agentic Capabilities 수용 (Embrace agentic capabilities): Agent가 공유된 메모리, 도구, Context가 없더라도 자연스럽고 비정형적인 방식으로 협업할 수 있도록 합니다. 특정 Agent를 단순한 "도구"로 제한하지 않고 진정한 Multi-Agent 시나리오를 가능하게 합니다.
기존 표준 기반 구축 (Build on existing standards): HTTP, SSE, JSON-RPC와 같은 기존의 널리 사용되는 표준을 기반으로 구축되어, 기업이 이미 사용하는 IT 스택과의 통합이 용이합니다.
기본적인 보안 (Secure by default): 엔터프라이즈급 인증 및 인가(authentication and authorization)를 지원하도록 설계되었으며, OpenAPI의 인증 체계와 동등한 수준을 제공합니다.
장기 실행 Task 지원 (Support for long-running tasks): 짧은 Task부터 몇 시간 또는 며칠이 걸릴 수 있는 심층 연구(human-in-the-loop 포함)에 이르기까지 모든 Task를 처리할 수 있도록 유연하게 설계되었습니다. 이 과정에서 실시간 피드백, 알림 및 상태 업데이트를 제공할 수 있습니다.
Modality 비의존성 (Modality agnostic): Agentic 세상이 텍스트에만 국한되지 않으므로, 오디오 및 비디오 스트리밍을 포함한 다양한 Modality를 지원하도록 설계되었습니다.A2A 작동 방식 (핵심 방법론):
A2A는 "Client Agent"와 "Remote Agent" 간의 통신을 촉진합니다.
* Client Agent: Task를 구체화하고 통신하는 역할을 합니다.
* Remote Agent: 해당 Task를 수행하여 올바른 정보를 제공하거나 올바른 Action을 취하는 역할을 합니다.
이러한 상호작용은 다음의 핵심 Capabilities를 포함합니다:
Capabilities Discovery (역량 발견): Agent는 "Agent Card"라는 JSON 형식으로 자신의 Capabilities를 광고합니다. Client Agent는 이를 통해 Task를 수행할 수 있는 최적의 Agent를 식별하고 A2A를 통해 Remote Agent와 통신합니다.
Task Management (Task 관리): Client Agent와 Remote Agent 간의 통신은 Task 완료를 지향합니다. 프로토콜에 의해 정의된 "Task" 객체는 Lifecycle을 가집니다. Task는 즉시 완료될 수도 있고, 장기 실행 Task의 경우 각 Agent가 Task의 최신 상태를 동기화하기 위해 통신할 수 있습니다. Task의 출력은 "Artifact"라고 불립니다.
Collaboration (협업): Agent는 Context, 답변, Artifact 또는 사용자 지침을 통신하기 위해 서로 메시지를 주고받을 수 있습니다.
User Experience Negotiation (사용자 경험 협상): 각 메시지에는 "parts"가 포함되는데, 이는 생성된 이미지와 같이 완전히 형성된 Content 조각입니다. 각 Part는 지정된 Content Type을 가지므로 Client Agent와 Remote Agent가 필요한 올바른 형식을 협상하고, iframe, 비디오, 웹 폼 등 사용자의 UI Capabilities에 대한 협상을 명시적으로 포함할 수 있습니다.A2A는 개방형 프로토콜로, 향후 생산 준비(production-ready) 버전을 출시할 예정이며, 커뮤니티의 기여를 통해 지속적으로 발전해 나갈 계획입니다.