До недавнего времени удобных вариантов особо не было.
В pydantic-ai можно было поднять сервер, но клиента не было — говорить всё равно не с кем.
А в a2a-python поддержка вроде как есть, но интерфейс не супер-удобный, да и весь код синхронный.
И вот теперь в AG2 (autogen 2) тоже завезли поддержку A2A 👉 релиз 0.10.0
Теперь можно:
• поднять сервер агента с А2А интерфейсом
• подключиться к нему как к удалённому агенту
• заставить их общаться друг с другом по протоколу А2А
from autogen import ConversableAgent, LLMConfig
from autogen.a2a import A2aAgentServer, A2aRemoteAgent
agent = ConversableAgent(
name="python_coder",
system_message="You are an expert Python developer...",
llm_config=LLMConfig({"model": "gpt-4o-mini"}),
)
# поднимаем сервер
server = A2aAgentServer(agent).build()
# подключаемся как к удалённому агенту
remote = A2aRemoteAgent(
url="http://localhost:8000",
name="python_coder",
)
Выглядит как первый по-настоящему удобный способ строить распределённые агентные системы, где каждый агент — отдельный сервис, говорящий на общем языке.
А вот тут лежит дока, можно поглядеть.