Resumen
Esta guía muestra cómo implementar comunicación Agent2Agent A2A con el framework BeeAI, con implementaciones completas del lado servidor Agente y del lado cliente Host. El ejemplo ilustra un agente de chat con búsqueda web y consulta meteorológica, ideal para empresas que buscan incorporar inteligencia artificial y agentes IA en soluciones reales. En Q2BSTUDIO, expertos en aplicaciones a medida, software a medida, ciberseguridad, servicios cloud AWS y Azure, servicios de inteligencia de negocio y power bi, acompañamos a tu organización desde la estrategia hasta el despliegue en producción. Si necesitas crear una plataforma con IA para empresas, descubre nuestros servicios de inteligencia artificial o potencia tu producto con nuestro desarrollo de aplicaciones y software a medida.
Visión de arquitectura
El flujo es sencillo y potente. 1 el usuario escribe un mensaje. 2 el cliente BeeAI envía una solicitud HTTP siguiendo el Protocolo A2A al servidor. 3 el agente en el servidor invoca al LLM por ejemplo Ollama con el modelo granite3.3:8b. 4 el LLM decide si llamar herramientas como búsqueda o clima. 5 los resultados de herramientas vuelven al LLM. 6 el LLM redacta la respuesta final. 7 el servidor devuelve la respuesta A2A al cliente. 8 el cliente muestra el resultado al usuario.
Estructura del proyecto
Directorio samples python. Carpeta agents beeai-chat servidor A2A con el programa principal, configuración de dependencias y Dockerfile. Carpeta hosts beeai-chat cliente A2A con el programa principal, una interfaz de consola y su Dockerfile. Esta separación permite iterar servidor y cliente de forma independiente.
Requisitos del sistema
Python 3.11 o superior. Gestor de paquetes uv. Servicio local de LLM Ollama con el modelo granite3.3:8b descargado.
Instalación de uv
En macOS o Linux ejecuta el script de instalación de uv o instálalo con pip usando el nombre de paquete uv. Una vez instalado, podrás crear entornos virtuales y gestionar dependencias de forma ultrarrápida.
Instalación de Ollama y del modelo
Instala Ollama con su script oficial y descarga el modelo granite3.3:8b con el comando ollama pull granite3.3:8b. Asegúrate de que el servicio Ollama esté activo en localhost puerto 11434 por defecto.
Implementación del servidor A2A Agente
El servidor se basa en RequirementAgent y A2AServer del framework BeeAI. Pasos clave configurar el LLM con ChatModel usando la variable de entorno BEEAI_MODEL con valor por defecto ollama:granite3.3:8b. Registrar herramientas como ThinkTool para razonamiento interno, DuckDuckGoSearchTool para búsqueda web, OpenMeteoTool para meteorología y WikipediaTool para consultas enciclopédicas. Configurar memoria con UnconstrainedMemory para mantener el contexto conversacional. Iniciar el A2AServer con A2AServerConfig indicando el puerto A2A_PORT y un LRUMemoryManager con un tamaño máximo de sesiones por ejemplo 100 para controlar el uso de recursos.
Funcionalidades clave del servidor
Integración de herramientas pensamiento, búsqueda web, clima y Wikipedia. Gestión de memoria con caché LRU para estado de sesión. Configuración por variables de entorno para modelo y puerto, lo que facilita despliegues en distintos entornos.
Ejecución del servidor con uv
Clona el repositorio a2a-samples. Entra en samples python agents beeai-chat. Crea el entorno con uv venv y actívalo. Instala el proyecto con uv pip install -e punto. Añade el paquete a2a-sdk con el extra http-server usando uv add a2a-sdk[http-server]. Lanza el servidor con uv run python __main__.py. Verás Uvicorn ejecutándose en 0.0.0.0 puerto 9999 por defecto.
Variables de entorno del servidor
Establece BEEAI_MODEL=ollama:granite3.3:8b para el modelo LLM. Define A2A_PORT=9999 para el puerto del servidor. Si es necesario, ajusta OLLAMA_API_BASE=https://localhost:11434 para apuntar a tu instancia de Ollama.
Implementación del cliente A2A Host
El cliente usa A2AAgent para comunicarse con el servidor y ofrece una interfaz interactiva de consola. Se configura con la URL del agente BEEAI_AGENT_URL por defecto https://127.0.0.1:9999 y usa UnconstrainedMemory para mantener el historial local. El bucle principal envía el prompt del usuario, procesa eventos de actualización en tiempo real y muestra la respuesta final del agente.
Interfaz interactiva
Muestra información de depuración en tiempo real para entender qué hace el agente. Salida elegante introduciendo q. Manejo de errores ante entradas vacías o fallos de red para una experiencia más robusta.
Ejecución del cliente con uv
Entra en samples python hosts beeai-chat. Crea y activa el entorno con uv. Instala con uv pip install -e punto. Ejecuta uv run python __main__.py para iniciar la sesión interactiva.
Variables de entorno del cliente
Configura BEEAI_AGENT_URL=https://127.0.0.1:9999 para apuntar al servidor A2A.
Flujo de ejecución completo
Paso 1 inicia el servidor en una terminal y confirma que Uvicorn queda escuchando en el puerto configurado. Paso 2 inicia el cliente en otra terminal y empieza a interactuar. Paso 3 escribe preguntas como el tiempo en Nueva York hoy y el agente consultará OpenMeteo y generará una respuesta clara. También puedes pedir búsquedas en la web o resúmenes de Wikipedia.
Puntos técnicos
Gestión de dependencias mediante pyproject en ambos proyectos. En servidor se usa beeai-framework con extras a2a y search en una versión estable entre 0.1.36 y 0.2.0 sin incluir 0.2.0. En cliente se usa beeai-framework con extra a2a y pydantic 2.x. Gestión de memoria con LRUMemoryManager en el servidor para limitar el número de sesiones y UnconstrainedMemory a ambos lados para conservar el contexto conversacional. Integración de herramientas con ThinkTool para razonamiento, DuckDuckGoSearchTool para búsquedas web, OpenMeteoTool para meteorología y WikipediaTool para contenidos enciclopédicos.
Extensión y personalización
Añadir nuevas herramientas es tan simple como crear una clase de herramienta y registrarla en la lista de tools del RequirementAgent. Personaliza el cliente sustituyendo la consola por una interfaz web, móvil o de escritorio conectada al mismo A2AAgent. Este enfoque habilita automatización de procesos, agentes IA colaborativos y flujos de trabajo de orquestación con múltiples herramientas.
Buenas prácticas de despliegue
Utiliza variables de entorno para desacoplar configuración. Activa logs estructurados en producción. Aísla dependencias con uv. Escala horizontalmente el servidor A2A detrás de un balanceador con persistencia de sesión o un backend de memoria compartida. Si necesitas infraestructura gestionada y resiliente, Q2BSTUDIO puede ayudarte a diseñar y operar arquitecturas cloud nativas en AWS y Azure, con observabilidad, seguridad, CI CD y pipelines MLOps extremo a extremo.
Casos de uso empresariales y SEO
Con este patrón puedes construir asistentes de atención al cliente, copilotos internos, automatización de procesos, motores de búsqueda enriquecidos, monitorización de ciberseguridad y cuadros de mando conectados a servicios de inteligencia de negocio. Potencia tus iniciativas de aplicaciones a medida y software a medida con agentes IA conectados a datos corporativos, integra servicios cloud AWS y Azure, añade capas de ciberseguridad y cumplimiento, y crea tableros con power bi y servicios inteligencia de negocio para decisores. En Q2BSTUDIO diseñamos, desarrollamos e integramos ia para empresas de forma segura, eficiente y escalable.
Más ejemplos del Protocolo A2A
Consulta otros tutoriales y muestras oficiales del ecosistema A2A en a2aprotocol. Juego de adivinanzas multiagente en este ejemplo. Ejemplo de agente MCP AG2 en esta guía. Tutorial de generación de gráficos con CrewAI y OpenRouter en este recurso. Muestra JS de agente de películas en este artículo. Agente de Github en Python en esta muestra. Planificador de viajes con OpenRouter en esta guía. Ejemplo en Java en esta referencia. Hello World Agent en esta introducción. Métodos y respuestas JSON en esta explicación. Flujo de LlamaIndex File Chat con A2A en esta guía.
Cierre
Con BeeAI y el Protocolo A2A puedes construir un sistema completo de chat inteligente, modular y ampliable. Esta arquitectura facilita añadir nuevas herramientas, cambiar de modelo LLM y escalar el servicio. Si buscas un socio tecnológico para llevarlo a producción con seguridad, ciberseguridad avanzada, gobernanza de datos y rendimiento, cuenta con Q2BSTUDIO. Integramos agentes IA con sistemas empresariales, desplegamos en cloud y medimos impacto de negocio desde el primer día.