Протокол Agent2Agent (A2A)
- title
- Протокол Agent2Agent (A2A)
- type
- concept
- summary
- Открытый протокол Google для взаимодействия агентов между разными фреймворками и языками
- tags
- ai-agents, protocols, google, interoperability
- sources
- adk-go-10-arrives
- created
- 2026-04-06
- updated
- 2026-04-06
- lang
- ru
- translation_of
- agent2agent-protocol
- source_updated
- 2026-04-06
- translated
- 2026-09-01
- translator
- lllm/antigravity/gemini-3.7-flash-medium
Agent2Agent (A2A) - открытый протокол от Google для взаимодействия ИИ-агентов, написанных на разных языках и с использованием разных фреймворков. Анонсирован в апреле 2025 года, а готовая к продакшену поддержка появилась в adk-go 1.0 в марте 2026 года.
Проблема
Если создать одного агента на Go, а другого на Python, они не смогут взаимодействовать сами по себе. У каждого фреймворка свой внутренний формат сообщений, модель выполнения и управление состоянием. Без общего протокола понятие "мультиагентная система" по сути означает "несколько агентов внутри одного и того же фреймворка". A2A даёт агентам общий язык независимо от того, на чём они построены.
Как это работает
A2A определяет две роли: клиентский агент (client agent), который формулирует задачи, и удалённый агент (remote agent), который их выполняет. Взаимодействие происходит поверх стандартной веб-инфраструктуры - HTTP, Server-Sent Events (SSE) и JSON-RPC.
Четыре основные возможности:
Обнаружение возможностей (Capability discovery). Агенты публикуют "Agent Cards" - JSON-документы с описанием того, что они умеют делать, какие входные данные принимают и что выдают на выходе. Клиентский агент читает такую карточку, чтобы понять, подходит ли удалённый агент для конкретной задачи.
Управление задачами (Task management). Задачи являются сущностями первого класса с чётко определённым жизненным циклом. Задача может завершиться мгновенно или выполняться часами и днями (что важно для процессов с согласованием через human-in-the-loop). Клиент получает обновления статуса в реальном времени через SSE.
Обмен сообщениями (Message exchange). Агенты обмениваются сообщениями со структурированными составными частями (parts) - текстом, данными, артефактами. Контекст передаётся вместе с сообщениями, благодаря чему удалённый агент понимает, над чем работает.
Согласование содержимого (Content negotiation). Система составных частей позволяет агентам согласовывать формат данных. Один агент может формировать iframe, а другой ожидает обычный JSON. Они договариваются об этом через протокол, и требовать от всех агентов одинакового формата вывода не нужно.
Связь с MCP
A2A дополняет Model Context Protocol (MCP) от Anthropic, а не конкурирует с ним. MCP даёт агентам доступ к инструментам и контексту - это про то, что агент умеет делать. A2A отвечает за координацию агентов между собой - это про то, как агенты работают вместе. Например, через MCP можно подключить агента к базе данных, а через A2A - организовать его совместную работу с агентом-планировщиком, написанным на другом языке.
Внедрение
A2A поддерживают более 50 технологических партнёров, включая Atlassian, Salesforce, SAP, LangChain, MongoDB и PayPal. К инициативе также подключились крупные консалтинговые компании (Accenture, Deloitte, McKinsey), что говорит о намерении внедрять протокол в корпоративной среде.
Спецификация открыта и опубликована на GitHub.