Interoperabilidad entre lenguajes y marcos con AgentScope y Nacos
El artículo presenta cómo AgentScope, basado en el protocolo A2A y el registro de agentes Nacos, permite la interoperabilidad entre lenguajes y marcos, así como una gobernanza de servicios unificada. Esta herramienta es esencial en la construcción de arquitecturas de aplicaciones de IA en empresas, facilitando la colaboración entre equipos que utilizan diferentes lenguajes de programación y marcos de trabajo.
Desafíos en la implementación de agentes
A medida que las empresas avanzan en la implementación de arquitecturas de aplicaciones de IA, enfrentan varios desafíos:
- Diversidad de lenguajes: Equipos que usan Java, Golang o Python pueden dificultar la colaboración.
- Fragmentación de marcos: Existen diferentes marcos como LangChain y AutoGPT que operan de manera aislada.
- Cooperación entre equipos: La falta de comprensión profunda del negocio puede llevar a una dispersión de agentes en diferentes servicios.
- Protocolos no estandarizados: La utilización de REST, gRPC y protocolos personalizados genera altos costos de integración.
Protocolo A2A como solución
El protocolo A2A (Agente a Agente) se ha diseñado para abordar estos problemas. Es un estándar abierto que permite la interoperabilidad distribuida entre múltiples agentes, definiendo una estructura de mensaje unificada y descripciones de capacidades. Con A2A, los agentes pueden interactuar ricamente, incluyendo diálogos, pensamiento y llamadas a herramientas sin necesidad de compartir código o acoplar implementaciones subyacentes.
Mejores prácticas para llamadas entre lenguajes y marcos con agentes
AgentScope se centra en el desarrollo de múltiples agentes y aborda los desafíos en la construcción y gestión de agentes. Su última versión incluye soporte completo para el protocolo A2A y Nacos como implementación predeterminada del registro A2A, facilitando la colaboración entre agentes y rompiendo barreras técnicas.
Características destacadas de AgentScope
- Interoperabilidad sin barreras: Los agentes pueden colaborar de manera eficiente independientemente de su tecnología subyacente.
- Experiencia de desarrollo unificada: Se utilizan las mismas APIs para llamar a agentes locales y remotos, lo que reduce la necesidad de código adaptativo.
- Gobernanza de producción: Con Nacos 3.0, las aplicaciones de AgentScope cuentan con capacidades avanzadas como descubrimiento de servicios y chequeos de salud.
Uso de A2A en AgentScope
AgentScope permite a los desarrolladores conectar redes A2A externas con facilidad. Esto se logra a través de capacidades de interfaz A2A unificadas que simplifican la colaboración entre lenguajes y marcos:
Gestión de tareas y descubrimiento de servicios
AgentScope incluye mecanismos para la gestión de tareas largas y el descubrimiento unificado de servicios. Los agentes pueden ser descubiertos y utilizados en función de su nombre, grupo o etiqueta, lo que permite la reutilización entre equipos y proyectos.
Ejemplo de código en Python y Java
A continuación se presentan ejemplos de cómo utilizar NacosAgentCardResolver para descubrir y llamar agentes desde el registro de Nacos:
Ejemplo en Python:
from agentscope.agent import A2AAgent
from agentscope.a2a import NacosAgentCardResolver
from agentscope.message import Msg
nacos_resolver = NacosAgentCardResolver(
remote_agent_name="my-remote-agent",
nacos_client_config=ClientConfig(
server_addresses="http://localhost:8848",
),
)
agent = A2AAgent(
agent_card=await nacos_resolver.get_agent_card()
)
Ejemplo en Java:
import io.agentscope.agent.A2AAgent;
import io.agentscope.extensions.a2a.nacos.NacosAgentCardResolver;
import java.util.Properties;
import com.alibaba.nacos.api.PropertyKeyConst;
import com.alibaba.nacos.api.ai.AiFactory;
import com.alibaba.nacos.api.ai.AiService;
Properties properties = new Properties();
properties.put(PropertyKeyConst.SERVER_ADDR, "localhost:8848");
AiService aiService = AiFactory.createAiService(properties);
NacosAgentCardResolver agentCardResolver = new NacosAgentCardResolver(aiService);
A2AAgent agent = A2AAgent.builder()
.name("MyAgent")
.agentCardResolver(agentCardResolver)
.build();
Conclusiones sobre AgentScope y Nacos
AgentScope, al integrar el protocolo A2A y el registro Nacos, representa un avance significativo en la interoperabilidad de agentes. Facilita la creación de una plataforma de gestión unificada de agentes, promoviendo la adopción a gran escala y permitiendo a las empresas construir aplicaciones de agentes más estables y amigables para el usuario.
Para más información, puede consultar la documentación de AgentScope y Nacos.
Nota: Este contenido original ha sido modificado con IA y revisado por un especialista.












