A2A : Google publie un protocole ouvert pour la communication entre les intelligences artificielles

Introduction générale

A2A (Agent2Agent) est un protocole open source développé par Google pour permettre aux intelligences IA développées par différents cadres ou fournisseurs de communiquer et de collaborer entre elles. Il fournit un ensemble normalisé de méthodes permettant aux intelligences de découvrir leurs capacités respectives, de partager des tâches et d'accomplir leur travail. Le principal problème résolu par A2A est l'incapacité des intelligences à interopérer dans l'IA d'entreprise. Le projet est hébergé sur GitHub et le code est gratuit et ouvert à tous pour être téléchargé et utilisé ou pour participer au développement. Plus de 50 entreprises ont déjà soutenu l'accord, dont Salesforce et SAP. Google espère établir un langage commun pour les intelligences grâce à A2A, et promouvoir la collaboration multi-intelligence sur le terrain.

A2A:谷歌发布AI智能间通信的开放协议

 

Liste des fonctions

  • Prise en charge de la création, de l'affectation et du suivi de l'état des tâches inter-intelligentes pour le traitement des tâches à long terme.
  • offrirAgentCardLe système d'information sur les intelligences, qui enregistre les capacités, les adresses et les exigences d'authentification des intelligences au format JSON, est un outil d'aide à la décision.
  • Compatible avec de multiples formes d'interaction, y compris le texte, les formulaires, l'audio et la vidéo bidirectionnels.
  • Le traitement asynchrone des tâches est pris en charge et les intelligences peuvent fonctionner en arrière-plan.
  • Fournit des capacités de diffusion en continu et des mises à jour en temps réel de l'état des tâches par l'intermédiaire de SSE (Server Push Events).
  • Les notifications push sont prises en charge et les intelligences peuvent envoyer de manière proactive l'état d'avancement des tâches au client.
  • Assurer la sécurité des communications et protéger l'échange de données entre les intelligences.

 

Utiliser l'aide

A2A est un protocole open source qui nécessite quelques connaissances en programmation avant d'être utilisé. Voici les étapes détaillées pour vous aider à démarrer rapidement.

Acquisition et installation

  1. Accéder aux dépôts GitHub
    Ouvrez https://github.com/google/A2A, qui est la page officielle d'A2A. Le README de la première page décrit le contexte du projet et les lignes directrices de base.
  2. Télécharger le code
    Entrez dans la ligne de commande :
git clone https://github.com/google/A2A.git

Téléchargez et entrez dans le catalogue :

cd A2A
  1. Installation des dépendances
    A2A supporte à la fois Python et JavaScript. Dans le cas de Python, vous devez installer Python 3.8+ et l'exécuter :
pip install -r requirements.txt

Si ce n'est pas le casrequirements.txtEntrersamples/python/commonVoir les dépendances spécifiques.

  1. exemple de fonctionnement
    Le dépôt fournit plusieurs exemples. Prenons l'exemple du smartbody Python "Expense Reimbursement" :
  • entrer danssamples/python/agents/google_adk.
  • établir.envremplissez la configuration (par exemple, le numéro de port, voir le README pour plus de détails).
  • La course à pied :
    python main.py
    

Ceci lancera un serveur A2A de base.

Principales fonctions

1) Mise en place du serveur A2A

Le principe de l'A2A est de faire fonctionner un serveur par les intelligences. Les étapes sont les suivantes :

  • Rédiger un code corporel intelligent
    En Python, hériter deA2AServerLa classe. Par exemple, une simple écho-intelligence :
from common.server import A2AServer
class EchoAgent(A2AServer):
def handle_message(self, message):
return {"content": {"text": f"回声: {message.content.text}"}}
  • Démarrer le serveur
    Mise en œuvre :

    agent = EchoAgent()
    agent.run(host="0.0.0.0", port=8080)
    

    Les autres intelligences peuvent être identifiées parhttp://localhost:8080/a2aAccès.

2. se connecter aux autres intelligences

A2A prend en charge la communication client-serveur :

  • Création d'un client
    utiliserA2AClientConnexions :

    from common.client import A2AClient
    client = A2AClient("http://localhost:8080/a2a")
    
  • envoyer un message
    Envoyer un message :

    message = {"content": {"text": "测试消息"}, "role": "user"}
    response = client.send_message(message)
    print(response["content"]["text"])
    

3. l'utilisation des capacités de découverte d'AgentCard

Tout organisme intelligent a unAgentCardet de documenter sa fonction :

  • Obtenir la méthode :
    curl http://localhost:8080/a2a/card
    
  • Le JSON renvoyé comprend le nom du corps intelligent, une description de ses capacités et les opérations prises en charge.

4. traitement des mandats

A2A prend en charge la gestion des tâches :

  • Soumission des mandats
    Envoyer une demande de tâche :

    task = {"task_type": "analyze", "data": "示例数据"}
    task_id = client.submit_task(task)
    
  • état de suivi
    S'informer de l'avancement de la mission :

    status = client.get_task_status(task_id)
    print(status)  # 如:submitted, working, completed
    

5. la diffusion en continu

Pour le soutienstreamingdu serveur, le client peut recevoir des mises à jour en temps réel :

  • utilisertasks/sendSubscribeSoumission des tâches.
  • Le serveur renvoie l'état ou les résultats via SSE, par exemple :
    event: TaskStatusUpdateEvent
    data: {"task_id": "123", "state": "working"}
    

6. notifications push

adjuvantpushNotificationsdu serveur peut avertir le client de manière proactive :

  • Mettre en place un webhook :
    client.set_push_notification_webhook("https://your-webhook-url")
    
  • Le serveur envoie un message lorsqu'une tâche est mise à jour.

mise en garde

  • Il est recommandé d'utiliser un environnement virtuel pour éviter les conflits de dépendance.
  • L'exemple de code se trouve dans la sectionsamplesCatalogue, couvrant une variété de cadres tels que CrewAI, LangGraph.
  • Pour obtenir de l'aide, posez vos questions à Discussions sur GitHub.

Grâce à ces étapes, vous pouvez créer et exécuter l'intelligence A2A et découvrir ses capacités de communication.

 

Fichier de protocole au format JSON

https://github.com/google/A2A/blob/main/specification/json/a2a.json

 

scénario d'application

  1. Collaboration dans le cadre d'une mission d'entreprise
    Une intelligence financière collecte les demandes, une autre intelligence d'approbation les examine, et A2A leur permet de travailler ensemble de manière transparente pour compléter l'automatisation des processus.
  2. Service client multiplateforme
    Une intelligence traite les demandes textuelles et l'autre les demandes vocales, et A2A s'assure qu'elles partagent l'information pour améliorer l'efficacité.
  3. tests de développement
    Les développeurs utilisent A2A pour simuler des environnements d'organismes multi-intelligents et tester la compatibilité des protocoles ou des cadres.

 

QA

  1. Quelles sont les langues prises en charge par A2A ?
    Les exemples officiels sont en Python et JavaScript, mais le protocole est indépendant du langage et peut être mis en œuvre dans d'autres langages.
  2. Est-il gratuit ?
    Oui, A2A est entièrement open source et le code est gratuit, mais il peut y avoir des frais de serveur pour le faire fonctionner.
  3. Comment le protocole peut-il être amélioré ?
    Soumettre des problèmes sur GitHub ou fournir des commentaires privés via Google Forms.

 

Protocoles A2A : Google mise-t-il sur l'avenir de l'interconnectivité des agents de l'IA ?

Les agents d'intelligence artificielle (IA) passent du concept à la réalité dans les applications d'entreprise, où ils sont censés gérer de manière autonome des tâches répétitives ou complexes afin d'accroître la productivité. De l'automatisation de l'assistance informatique à l'optimisation de la planification de la chaîne d'approvisionnement, il existe un nombre croissant de cas où des agents d'intelligence artificielle sont déployés dans l'entreprise. Cependant, un goulet d'étranglement majeur est apparu : comment ces agents provenant de différents fournisseurs et construits sur des cadres différents peuvent-ils collaborer efficacement ?

Les agents d'IA actuels ont tendance à se comporter comme des silos d'informations avec lesquels il est difficile d'interagir au-delà des frontières des systèmes et des applications. Cela limite considérablement leur capacité à apporter une plus grande valeur ajoutée. Pour remédier à cette situation, Google Cloud a récemment lancé un protocole ouvert appelé Agent2Agent (A2A) avec plus de 50 partenaires technologiques et fournisseurs de services, dont Atlassian, Salesforce, SAP, ServiceNow et d'autres.

A2A:谷歌发布AI智能间通信的开放协议

Faire tomber les barrières : l'objectif central de l'accord A2A

Le protocole A2A vise à fournir un moyen standard pour les agents d'intelligence artificielle de communiquer en toute sécurité, d'échanger des informations et de coordonner des actions indépendamment de la technologie sous-jacente ou du développeur. Cela ressemble à un "langage" et à des "règles" communs pour l'écosystème de plus en plus fragmenté des agents d'intelligence artificielle.

Plutôt que d'être invoquée comme un outil supplémentaire, l'A2A tente de permettre une collaboration plus naturelle et non structurée entre les agents. Cet aspect est essentiel pour gérer des tâches complexes qui exigent que plusieurs agents travaillent en tandem, pendant des heures, voire des jours. Imaginez qu'un responsable du recrutement donne simplement des instructions à son agent personnel et que celui-ci collabore automatiquement avec d'autres agents spécialisés dans la sélection des CV, la programmation des entretiens et même la vérification des antécédents, le tout sans avoir à intervenir manuellement dans les différents systèmes.

Il est important de noter que l'A2A n'a pas été créée à partir de rien, mais qu'elle a été construite sur la base de normes matures existantes telles que HTTP, SSE, JSON-RPC, etc. Les entreprises ont donc moins de mal à l'intégrer dans leur architecture informatique existante. Parallèlement, le protocole met l'accent sur la sécurité et prend en charge les systèmes d'authentification et d'autorisation au niveau de l'entreprise. En outre, la prise en charge de modalités multiples telles que le texte, l'audio, la vidéo, etc. est de bon augure pour ses applications futures.

Pour sa part, Google indique que la conception d'A2A s'appuie sur son expérience en matière de déploiements internes à grande échelle de systèmes d'agents et vise à compléter le système de gestion de l'information de l'entreprise. Anthropique introduite Model Context Protocol (MCP)Si le MCP se concentre sur la fourniture aux agents des outils nécessaires et des informations contextuelles, l'A2A se concentre davantage sur la communication directe et les processus de collaboration entre les agents. Si le MCP se concentre sur la fourniture aux agents des outils nécessaires et des informations contextuelles, l'A2A se concentre davantage sur la communication directe et les processus de collaboration entre les agents.

Comment fonctionne l'A2A ?

Selon le projet de spécification publié, les interactions A2A sont centrées sur les "agents clients" (qui initient les tâches) et les "agents distants" (qui exécutent les tâches).

A2A:谷歌发布AI智能间通信的开放协议

Ses principaux mécanismes sont les suivants

  1. Découverte des capacités. L'agent distant déclare ses capacités dans une "carte d'agent" JSON, qui aide l'agent client à trouver des collaborateurs appropriés. Il s'agit d'une sorte de "pages jaunes" pour les agents.
  2. Gestion des tâches. Les interactions sont orientées vers la réalisation de "tâches". Le protocole définit l'objet tâche et son cycle de vie, prenant en charge à la fois l'achèvement immédiat et les tâches de longue durée qui nécessitent une synchronisation de l'état. Le résultat d'une tâche est appelé "artefact".
  3. Collaboration. Les messages sont envoyés entre les agents pour transmettre le contexte, les réponses, les objets ou les commandes de l'utilisateur.
  4. Négociation de l'expérience utilisateur. Les messages contiennent différents types de "parties" de contenu qui permettent à l'agent de négocier le format de contenu souhaité (par exemple, iframe, vidéo, formulaire web, etc.) pour s'adapter aux capacités d'interface de l'utilisateur final.

Un exemple concret est le scénario de recrutement d'un ingénieur logiciel mentionné plus haut. L'agent (client) de l'utilisateur peut découvrir et se connecter à l'agent (distant) qui gère les données de la plateforme de recrutement, à l'agent (distant) qui est responsable de la programmation du calendrier des entretiens et à l'agent (distant) qui gère les vérifications ultérieures des antécédents, et les coordonner pour qu'ils travaillent ensemble sur le processus de recrutement par le biais du protocole A2A.

A2A:谷歌发布AI智能间通信的开放协议

Écologie et défis : considérations stratégiques pour les protocoles ouverts

Le choix de Google Cloud de lancer A2A en tant qu'accord ouvert et de réunir autant de partenaires industriels est stratégique.

Tout d'abord, cela reflète l'ambition de Google d'établir une norme dans le domaine des agents d'intelligence artificielle et de maîtriser la puissance dominante. Attirer une large participation par le biais de protocoles ouverts peut accélérer la formation d'un écosystème d'agents autour de Google Cloud face à d'autres concurrents qui pourraient construire un système fermé.

Deuxièmement, une norme d'interopérabilité unifiée et ouverte est certainement la bienvenue pour les entreprises. Cela signifie une plus grande flexibilité pour mélanger et combiner les meilleurs agents de différents fournisseurs, en évitant de s'enfermer dans une plateforme unique et en espérant réduire les coûts d'intégration à long terme. De nombreux partenaires (de Box à Cohère Le soutien précoce de partenaires allant de SAP et Workday à des géants du conseil tels qu'Accenture et Deloitte confirme les attentes du marché. La participation active de ces partenaires est un facteur clé du succès d'A2A, non seulement en fournissant une validation technique, mais surtout en conduisant l'application pratique du protocole sur leurs plates-formes respectives et dans les projets de leurs clients.

Toutefois, le succès de l'accord n'est pas acquis d'avance. Des défis subsistent :

  • Rapidité et ampleur de l'adoption. La valeur du protocole réside dans son adoption à grande échelle. Il reste à voir si un nombre suffisant de développeurs et d'entreprises seront convaincus de construire et d'intégrer des agents utilisant la norme A2A.
  • Évolution et maintenance des normes. Les normes ouvertes nécessitent une contribution soutenue de la communauté et des mécanismes de gouvernance efficaces pour s'adapter à l'évolution rapide des technologies de l'IA.
  • Des résultats probants. La robustesse, l'efficacité et la sécurité des protocoles dans le traitement de tâches de collaboration extrêmement complexes dans le monde réel doivent être pleinement testées dans des environnements de production.

La publication de l'A2A marque une étape importante dans les efforts déployés par l'industrie pour résoudre le problème de l'interopérabilité des agents d'intelligence artificielle. La capacité de Google et de ses partenaires à concrétiser cette vision aura des répercussions considérables sur l'avenir de l'automatisation des entreprises et de l'adoption de l'IA.

© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...