Νέα ιστορία

Google A2A - μια πρώτη ματιά σε ένα άλλο πρωτόκολλο αντιπροσώπου

με Bruce Li5m2025/04/10
Read on Terminal Reader

Πολύ μακρύ; Να διαβασω

Google A2A - μια πρώτη ματιά σε ένα άλλο πρωτόκολλο agent-agent και συγκρίνεται με το MCP της Anthropic. Λοιπόν, μοιάζουν πολύ.
featured image - Google A2A - μια πρώτη ματιά σε ένα άλλο πρωτόκολλο αντιπροσώπου
Bruce Li HackerNoon profile picture
0-item
1-item

Today Google released its open source agent to agent protocol, imaginatively named A2A or Agent to Agent. Since we already see a lot of momentum behind Anthropic’s MCP (Model Context Protocol), Google claimed that A2A is complementary to MCP. They even used a heart emoji to drive home the point.

A2AA2AMCPMCPA2A is complementary to MCPA2A is complementary to MCP


Δεν είμαι τόσο σίγουρος, οπότε αποφάσισα να ρίξω μια βαθύτερη ματιά και να ελέγξω ποια θα είναι η θέση του A2A στο πράκτορα σύμπαν.

Δοκιμή οδήγησης A2A

Η χρήση του A2A είναι εκπληκτικά παρόμοια με το MCP. Μπορείτε να εκτελέσετε μερικούς πράκτορες / διακομιστές A2A και στη συνέχεια ο πελάτης A2A μπορεί να συνδεθεί με όλους αυτούς.

Εκτέλεση A2A πράκτορες (servers)

Έχω περιστρέψει όλους τους τρεις παράγοντες παραδείγματος τοπικά


  1. Google ADK agent that can submit expenses reports for you
  2. CrewAI agent that can find out generate an image
  3. LangGraph agent that can find out the latest foreign exchange rate
  • Google ADK agent that can submit expenses reports for you
  • Google ADK agentGoogle ADK agent
  • CrewAI agent that can find out generate an image
  • CrewAI agentCrewAI agent
  • LangGraph agent that can find out the latest foreign exchange rate
  • LangGraph agentLangGraph agent


    Ο τρόπος με τον οποίο ένας διακομιστής A2A επιτρέπει στον κόσμο να γνωρίζει τις δυνατότητές του είναι μέσω μιας «Κάρτας πράκτορα» σε μορφή JSON.


    { "όνομα": "Αντισταθμιστικός πράκτορας", "περιγραφή": "Αυτός ο πράκτορας χειρίζεται τη διαδικασία επιστροφής χρημάτων για τους υπαλλήλους δεδομένου του ποσού και του σκοπού της επιστροφής χρημάτων.", "url": "http://localhost:10002/", "έκδοση": "1.0.0", "δυνατότητες": { "streaming": αληθινή, "pushNotifications": ψευδής, "stateTransitionHistory": ψευδής }, "defaultInputModes": [ "text", "text/plain" ], "defaultOutputModes": [ "text", "text/plain" ], "skills": [ "reimbursement" ]{
    
    	"name": "Reimbursement Agent",
    
    	"description": "This agent handles the reimbursement process for the employees given the amount and purpose of the reimbursement.",
    
    	"url": "http://localhost:10002/",
    
    	"version": "1.0.0",
    
    	"capabilities": {
    
    		"streaming": true,
    
    		"pushNotifications": false,
    
    		"stateTransitionHistory": false
    
    	},
    
    	"defaultInputModes": [
    
    		"text",
    
    		"text/plain"
    
    	],
    
    	"defaultOutputModes": [
    
    		"text",
    
    		"text/plain"
    
    	],
    
    	"skills": [
    
    		{
    
    			"id": "process_reimbursement",
    
    			"name": "Process Reimbursement Tool",
    
    			"description": "Helps with the reimbursement process for users given the amount and purpose of the reimbursement.",
    
    			"tags": [
    
    				"reimbursement"
    
    			],
    
    			"examples": [
    
    				"Can you reimburse me $20 for my lunch with the clients?"
    
    			]
    
    		}
    
    	]
    
    }
    


    Αναβάθμιση της εφαρμογής demo του A2A Client

    Let’s continue with the client. The instructions to get the demo web app working are here. https://github.com/google/A2A/tree/main/demo

    https://github.com/google/A2A/tree/main/demohttps://github.com/google/A2A/tree/main/demo


    Μόλις εκτελεστεί η εφαρμογή web, μπορείτε να την αποκτήσετε από το πρόγραμμα περιήγησής σας.Ο πελάτης μοιάζει λίγο με το Gemini AI Studio με σχεδιασμό Google Material.


    URL: localhost12000

    URL: localhost:12000


    Πρώτα απ 'όλα, πρέπει να προσθέσουμε όλους τους πράκτορες στον πελάτη προσδιορίζοντας τη διεύθυνση URL βάσης τους. Δεδομένου ότι στην περίπτωσή μου εκτελούσα όλους τους πράκτορες τοπικά, η διεύθυνση URL βάσης τους ήταν:


    • Google ADK
      • localhost:10002
    • crewAI
      • localhost:10001
    • LangGraph
      • Localhost:10000
    • Google ADK
      • localhost:10002
      • localhost:10002
    • localhost:10002
    • crewAI
      • localhost:10001
      • localhost:10001
    • localhost:10001
    • Γράφημα
      • Τοποθεσία:10000
      • Επεξεργασία:10000
    • Επιχειρηματίας: 100000

    • Σημείωση: μέσα στο πρωτόκολλο, η τελική διεύθυνση URL μοιάζει κάπως έτσι:

      https://localhost:10002/.well-known/agent.json

      https://localhost:10002/.well-known/agent.json


      Τώρα μπορείτε να δείτε όλοι οι τρεις παράγοντες που είναι συνδεδεμένοι:

      όλοι οι τρεις πράκτορες

      A2A agents

      A2A agents


      Μπορείτε να δείτε το ιστορικό του chat εδώ

      κωμωδία Ιστορία

      A2A chats

      A2A chats


      Όλα τα γεγονότα της λίστας

      Λίστα εκδηλώσεων

      A2A event list

      A2A event list


      And all the task list

      Λίστα εργασιών

      A2A task list

      A2A task list


      Οι ρυθμίσεις είναι αρκετά βασικές

      Ρυθμίσεις

      A2A settings

      A2A settings

      Δοκιμή του πράκτορα Google ADK για αξίωση δαπανών

      Google ADK Agent - expense claim

      Google ADK Agent - expense claim

      Δοκιμή LangGraph για το επιτόκιο forex

      LangGraph Agent - forex rate

      LangGraph Agent - forex rate


      Δοκιμή του πράκτορα CrewAI για τη δημιουργία εικόνας

      CrewAI Agent - image generation

      CrewAI Agent - image generation

      Μια δοκιμή συνδυασμού για πολλαπλούς παράγοντες

      Θέλω να δω αν ο πελάτης A2A μπορεί να χρησιμοποιήσει πολλαπλούς πράκτορες για να επιτύχει έναν ενιαίο στόχο.χρησιμοποιεί πολλαπλούς παράγοντες για την επίτευξη ενός και μόνο στόχου


      Το καθήκον μου ήταν να «αποζητήσω μια δαπάνη για μια μπύρα στη Γερμανία κατά τη διάρκεια ενός επαγγελματικού ταξιδιού, 5 ευρώ, 4 Απριλίου 2025».Αίτηση για δαπάνη για μια μπύρα στη Γερμανία κατά τη διάρκεια επαγγελματικού ταξιδιού, 5 ευρώ, 4 Απριλίου 2025



      Αρχικές παρατηρήσεις του A2A

      Μου αρέσει ότι το A2A είναι ένα καθαρό μοντέλο Client-Server που μπορεί να τρέξει και να φιλοξενηθεί εξ αποστάσεως.


      Η διαμόρφωση του πράκτορα είναι αρκετά απλή με απλά να καθορίσετε τη βασική διεύθυνση URL, και η «Κάρτα πράκτορα» φροντίζει για την ανταλλαγή του πλαισίου.


      Στην τρέχουσα μορφή επίδειξης, είναι λίγο δύσκολο να κατανοήσουμε πώς οι πράκτορες επικοινωνούν μεταξύ τους και εκτελούν πολύπλοκες εργασίες.Ο πελάτης καλεί κάθε πράκτορα ξεχωριστά για διαφορετικές εργασίες, επομένως πολύ σαν την κλήση πολλαπλών εργαλείων.

      Συγκρίνετε το A2A με το MCP

      Now I have tried out A2A, it is time to compare it with MCP which I wrote about earlier in this article.

      this articlethis article


      Ενώ τόσο το A2A όσο και το MCP στοχεύουν στη βελτίωση της ανάπτυξης του συστήματος του πράκτορα τεχνητής νοημοσύνης, θεωρητικά αντιμετωπίζουν ξεχωριστές ανάγκες.Το A2A λειτουργεί σε επίπεδο πράκτορα προς πράκτορα, εστιάζοντας στην αλληλεπίδραση μεταξύ ανεξάρτητων οντοτήτων, ενώ το MCP λειτουργεί σε επίπεδο LLM, εστιάζοντας στον εμπλουτισμό του πλαισίου και των δυνατοτήτων των μεμονωμένων γλωσσικών μοντέλων.



      Και να δώσει μια ματιά στις κύριες ομοιότητες και διαφορές τους σύμφωνα με την τεκμηρίωση του πρωτοκόλλου τους:

      Ειδικότητα

      A2A

      MCP

      Χαρακτηριστικά

      Ετικέτες Ετικέτες


      Α2Α

      Α2Α

      MCP

      ΜΠΣ

      Πρωτογενής περίπτωση χρήσης

      Επικοινωνία και συνεργασία μεταξύ πράκτορα

      Παροχή πλαισίου και εργαλείων (εξωτερικό API/SDK) σε LLMs

      Πρώτη περίπτωση χρήσης

      Πρώτη περίπτωση χρήσης

      Επικοινωνία και συνεργασία μεταξύ πράκτορα

      Επικοινωνία και συνεργασία από πράκτορα σε πράκτορα

      Παροχή πλαισίου και εργαλείων (εξωτερικά API/SDK) σε LLMs

      Παροχή πλαισίου και εργαλείων (εξωτερικά API / SDK) σε LLMs

      Core Architecture

      Client-server (agent-to-agent)

      Client-host-server (application-LLM-external resource)

      Αρχιτεκτονική πυρήνα

      Αρχιτεκτονική του πυρήνα

      Εργαζόμενοι πελάτες (agent-to-agent)

      Προσωπικό-εξυπηρετητής (agent-to-agent)

      Client-host-server (εφαρμογή-LLM-εξωτερικός πόρος)

      Client-host-server (application-LLM-external resource)

      Standard Interface

      JSON προδιαγραφή, κάρτα πράκτορα, εργασίες, μηνύματα, αντικείμενα

      JSON-RPC 2.0, πόροι, εργαλεία, μνήμη, πινακίδες

      Κανονική Διασύνδεση

      Κανονική Διασύνδεση

      προδιαγραφές JSON, κάρτα πράκτορα, εργασίες, μηνύματα, αντικείμενα

      Προδιαγραφές JSON, κάρτα πράκτορα, εργασίες, μηνύματα, αντικείμενα

      JSON-RPC 2.0, Πόροι, Εργαλεία, Μνήμη, Προορισμοί

      JSON-RPC 2.0, Πόροι, Εργαλεία, Μνήμη, Προορισμοί

      Βασικά χαρακτηριστικά

      Πολυτροπική, δυναμική, ασφαλή συνεργασία, διαχείριση εργασιών, ανακάλυψη δυνατοτήτων

      Μοντελοποίηση, όρια ασφαλείας, επαναχρησιμοποίηση συνδέσμων, SDKs, ανακάλυψη εργαλείων

      Σημαντικά χαρακτηριστικά

      Σημαντικά χαρακτηριστικά

      Πολυτροπική, δυναμική, ασφαλή συνεργασία, διαχείριση εργασιών, ανακάλυψη δυνατοτήτων


      Πολυτροπική, δυναμική, ασφαλή συνεργασία, διαχείριση εργασιών, ανακάλυψη δυνατοτήτων


      Μοντελοποίηση, όρια ασφαλείας, επαναχρησιμοποίηση συνδέσμων, SDKs, ανακάλυψη εργαλείων

      Μοντελοποίηση, όρια ασφαλείας, επαναχρησιμοποίηση συνδέσμων, SDK, ανακάλυψη εργαλείων

      Πρωτόκολλο επικοινωνίας

      HTTP, JSON-RPC, SSE

      JSON-RPC 2.0 over stdio, HTTP with SSE (or streamable HTTP)

      Πρωτόκολλο επικοινωνίας

      Πρωτόκολλο επικοινωνίας

      HTTP, JSON-RPC, SSE

      HTTP, JSON-RPC, SSE

      JSON-RPC 2.0 over stdio, HTTP με SSE (ή streaming HTTP)

      JSON-RPC 2.0 over stdio, HTTP με SSE (ή streaming HTTP)

      Εστιάστε στην απόδοση

      Ασύγχρονη επικοινωνία για τη διαχείριση φορτίου

      Αποτελεσματική διαχείριση περιβάλλοντος, παράλληλη επεξεργασία, προσωρινή αποθήκευση για υψηλή ροή

      Συγκέντρωση επιδόσεων

      Στοχεύστε στην απόδοση

      Ασύγχρονη επικοινωνία για τη διαχείριση φορτίου

      Ασύγχρονη επικοινωνία για τη διαχείριση φορτίου

      Αποτελεσματική διαχείριση περιβάλλοντος, παράλληλη επεξεργασία, προσωρινή αποθήκευση για υψηλή απόδοση

      Αποτελεσματική διαχείριση περιβάλλοντος, παράλληλη επεξεργασία, προσωρινή αποθήκευση για υψηλή απόδοση

      Αποδοχή & Κοινότητα

      Καλή αρχική υποστήριξη της βιομηχανίας, αναδυόμενο οικοσύστημα

      Σημαντική υιοθέτηση από ολόκληρη τη βιομηχανία, ταχέως αναπτυσσόμενη κοινότητα

      Εκπαίδευση & Κοινότητα

      Αντιμετώπιση & Κοινότητα

      Καλή αρχική υποστήριξη της βιομηχανίας, αναδυόμενο οικοσύστημα

      Καλή αρχική υποστήριξη της βιομηχανίας, αναδυόμενο οικοσύστημα

      Σημαντική υιοθέτηση από ολόκληρη τη βιομηχανία, ταχέως αναπτυσσόμενη κοινότητα

      Σημαντική υιοθέτηση από ολόκληρη τη βιομηχανία, ταχέως αναπτυσσόμενη κοινότητα

      Συμπεράσματα

      Ακόμη και αν η Google το έκανε να ακούγεται σαν το A2A να είναι ένα πρωτόκολλο δωρεάν για το MCP, η πρώτη μου δοκιμή δείχνει ότι είναι καταπληκτικά επικαλύπτονται στο σκοπό και τα χαρακτηριστικά. και οι δύο αντιμετωπίζουν τις ανάγκες των προγραμματιστών εφαρμογών AI να χρησιμοποιούν πολλαπλούς παράγοντες και εργαλεία για την επίτευξη πολύπλοκων στόχων.Εκπληκτικά αλληλεπικαλύπτοντας στο σκοπό και τα χαρακτηριστικά


      Η MCP ξεκίνησε νωρίς και έχει ήδη κερδίσει τεράστια υποστήριξη τόσο από την κοινότητα προγραμματιστών όσο και από μεγάλες επιχειρήσεις.Η A2A είναι πολύ νέα, αλλά ήδη διαθέτει ισχυρή αρχική υποστήριξη από πολλούς επιχειρηματικούς πελάτες του Google Cloud.


      Πιστεύω ότι αυτό είναι μεγάλη είδηση για τους προγραμματιστές, δεδομένου ότι θα έχουν περισσότερες επιλογές στα πρωτόκολλα open και standard agent-agent.ανοιχτά και πρότυπα πρωτόκολλα πράκτορα-πράκτορα

    Trending Topics

    blockchaincryptocurrencyhackernoon-top-storyprogrammingsoftware-developmenttechnologystartuphackernoon-booksBitcoinbooks