logo
0
0
WeChat Login
amynic<amynic@users.noreply.github.com>
🌐 Update translations via Co-op Translator

Χρήση Πρωτοκόλλων Πρακτόρων (MCP, A2A και NLWeb)

Πρωτόκολλα Πρακτόρων

Καθώς η χρήση πρακτόρων AI αυξάνεται, αυξάνεται και η ανάγκη για πρωτόκολλα που διασφαλίζουν την τυποποίηση, την ασφάλεια και την υποστήριξη της ανοιχτής καινοτομίας. Σε αυτό το μάθημα, θα καλύψουμε 3 πρωτόκολλα που στοχεύουν να καλύψουν αυτή την ανάγκη - το Model Context Protocol (MCP), το Agent to Agent (A2A) και το Natural Language Web (NLWeb).

Εισαγωγή

Σε αυτό το μάθημα, θα καλύψουμε:

• Πώς το MCP επιτρέπει στους πράκτορες AI να έχουν πρόσβαση σε εξωτερικά εργαλεία και δεδομένα για να ολοκληρώσουν εργασίες χρηστών.

• Πώς το A2A επιτρέπει την επικοινωνία και τη συνεργασία μεταξύ διαφορετικών πρακτόρων AI.

• Πώς το NLWeb φέρνει διεπαφές φυσικής γλώσσας σε οποιονδήποτε ιστότοπο, επιτρέποντας στους πράκτορες AI να ανακαλύπτουν και να αλληλεπιδρούν με το περιεχόμενο.

Στόχοι Μάθησης

Αναγνώριση του βασικού σκοπού και των πλεονεκτημάτων των MCP, A2A και NLWeb στο πλαίσιο των πρακτόρων AI.

Εξήγηση του πώς κάθε πρωτόκολλο διευκολύνει την επικοινωνία και την αλληλεπίδραση μεταξύ LLMs, εργαλείων και άλλων πρακτόρων.

Αναγνώριση των διακριτών ρόλων που παίζει κάθε πρωτόκολλο στην κατασκευή σύνθετων συστημάτων πρακτόρων.

Model Context Protocol

Το Model Context Protocol (MCP) είναι ένα ανοιχτό πρότυπο που παρέχει έναν τυποποιημένο τρόπο για τις εφαρμογές να παρέχουν πλαίσιο και εργαλεία στα LLMs. Αυτό επιτρέπει έναν "καθολικό προσαρμογέα" για διαφορετικές πηγές δεδομένων και εργαλεία, στα οποία οι πράκτορες AI μπορούν να συνδεθούν με συνεπή τρόπο.

Ας δούμε τα συστατικά του MCP, τα πλεονεκτήματα σε σύγκριση με την άμεση χρήση API και ένα παράδειγμα για το πώς οι πράκτορες AI μπορεί να χρησιμοποιήσουν έναν MCP server.

Βασικά Συστατικά του MCP

Το MCP λειτουργεί σε μια αρχιτεκτονική πελάτη-διακομιστή και τα βασικά συστατικά του είναι:

Hosts: Εφαρμογές LLM (για παράδειγμα, ένας επεξεργαστής κώδικα όπως το VSCode) που ξεκινούν τις συνδέσεις με έναν MCP Server.

Clients: Συστατικά μέσα στην εφαρμογή host που διατηρούν συνδέσεις ένας προς έναν με διακομιστές.

Servers: Ελαφριά προγράμματα που εκθέτουν συγκεκριμένες δυνατότητες.

Στο πρωτόκολλο περιλαμβάνονται τρεις βασικές πρωτογενείς λειτουργίες, που είναι οι δυνατότητες ενός MCP Server:

Tools: Αυτές είναι διακριτές ενέργειες ή λειτουργίες που μπορεί να καλέσει ένας πράκτορας AI για να εκτελέσει μια ενέργεια. Για παράδειγμα, μια υπηρεσία καιρού μπορεί να εκθέτει ένα εργαλείο "get weather", ή ένας διακομιστής ηλεκτρονικού εμπορίου μπορεί να εκθέτει ένα εργαλείο "purchase product". Οι MCP servers διαφημίζουν το όνομα, την περιγραφή και το σχήμα εισόδου/εξόδου κάθε εργαλείου στη λίστα δυνατοτήτων τους.

Resources: Αυτά είναι δεδομένα ή έγγραφα μόνο για ανάγνωση που μπορεί να παρέχει ένας MCP server, και οι clients μπορούν να τα ανακτήσουν κατά απαίτηση. Παραδείγματα περιλαμβάνουν περιεχόμενα αρχείων, εγγραφές βάσεων δεδομένων ή αρχεία καταγραφής. Οι πόροι μπορεί να είναι κείμενο (όπως κώδικας ή JSON) ή δυαδικά δεδομένα (όπως εικόνες ή PDF).

Prompts: Αυτά είναι προκαθορισμένα πρότυπα που παρέχουν προτεινόμενες προτροπές, επιτρέποντας πιο σύνθετες ροές εργασίας.

Πλεονεκτήματα του MCP

Το MCP προσφέρει σημαντικά πλεονεκτήματα για τους πράκτορες AI:

Δυναμική Ανακάλυψη Εργαλείων: Οι πράκτορες μπορούν να λαμβάνουν δυναμικά μια λίστα διαθέσιμων εργαλείων από έναν διακομιστή μαζί με περιγραφές για το τι κάνουν. Αυτό έρχεται σε αντίθεση με τα παραδοσιακά APIs, που συχνά απαιτούν στατική κωδικοποίηση για ενσωματώσεις, πράγμα που σημαίνει ότι οποιαδήποτε αλλαγή API απαιτεί ενημερώσεις κώδικα. Το MCP προσφέρει μια προσέγγιση "ενσωμάτωσης μία φορά", οδηγώντας σε μεγαλύτερη προσαρμοστικότητα.

Διαλειτουργικότητα Μεταξύ LLMs: Το MCP λειτουργεί με διαφορετικά LLMs, παρέχοντας ευελιξία για αλλαγή βασικών μοντέλων για αξιολόγηση καλύτερης απόδοσης.

Τυποποιημένη Ασφάλεια: Το MCP περιλαμβάνει μια τυποποιημένη μέθοδο αυθεντικοποίησης, βελτιώνοντας την επεκτασιμότητα όταν προστίθεται πρόσβαση σε επιπλέον MCP servers. Αυτό είναι απλούστερο από τη διαχείριση διαφορετικών κλειδιών και τύπων αυθεντικοποίησης για διάφορα παραδοσιακά APIs.

Παράδειγμα MCP

Διάγραμμα MCP

Φανταστείτε ότι ένας χρήστης θέλει να κλείσει μια πτήση χρησιμοποιώντας έναν βοηθό AI που υποστηρίζεται από MCP.

  1. Σύνδεση: Ο βοηθός AI (ο MCP client) συνδέεται με έναν MCP server που παρέχεται από μια αεροπορική εταιρεία.

  2. Ανακάλυψη Εργαλείων: Ο client ρωτά τον MCP server της αεροπορικής εταιρείας, "Ποια εργαλεία έχετε διαθέσιμα;" Ο server απαντά με εργαλεία όπως "search flights" και "book flights".

  3. Κλήση Εργαλείου: Στη συνέχεια, ζητάτε από τον βοηθό AI, "Παρακαλώ βρες μια πτήση από το Πόρτλαντ στη Χονολουλού." Ο βοηθός AI, χρησιμοποιώντας το LLM του, αναγνωρίζει ότι πρέπει να καλέσει το εργαλείο "search flights" και περνά τις σχετικές παραμέτρους (προέλευση, προορισμός) στον MCP server.

  4. Εκτέλεση και Απόκριση: Ο MCP server, λειτουργώντας ως περιτύλιγμα, κάνει την πραγματική κλήση στο εσωτερικό API κρατήσεων της αεροπορικής εταιρείας. Στη συνέχεια, λαμβάνει τις πληροφορίες πτήσης (π.χ. δεδομένα JSON) και τις στέλνει πίσω στον βοηθό AI.

  5. Περαιτέρω Αλληλεπίδραση: Ο βοηθός AI παρουσιάζει τις επιλογές πτήσεων. Μόλις επιλέξετε μια πτήση, ο βοηθός μπορεί να καλέσει το εργαλείο "book flight" στον ίδιο MCP server, ολοκληρώνοντας την κράτηση.

Πρωτόκολλο Πράκτορα-προς-Πράκτορα (A2A)

Ενώ το MCP επικεντρώνεται στη σύνδεση LLMs με εργαλεία, το Agent-to-Agent (A2A) protocol προχωρά ένα βήμα παραπέρα, επιτρέποντας την επικοινωνία και τη συνεργασία μεταξύ διαφορετικών πρακτόρων AI. Το A2A συνδέει πράκτορες AI από διαφορετικούς οργανισμούς, περιβάλλοντα και τεχνολογικές στοίβες για την ολοκλήρωση ενός κοινού έργου.

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

Βασικά Συστατικά του A2A

Το A2A επικεντρώνεται στην ενεργοποίηση της επικοινωνίας μεταξύ πρακτόρων και στη συνεργασία τους για την ολοκλήρωση ενός υποέργου του χρήστη. Κάθε συστατικό του πρωτοκόλλου συμβάλλει σε αυτό:

Κάρτα Πράκτορα

Παρόμοια με το πώς ένας MCP server μοιράζεται μια λίστα εργαλείων, μια Κάρτα Πράκτορα περιλαμβάνει:     ◦ Το Όνομα του Πράκτορα.
    ◦ Μια περιγραφή των γενικών εργασιών που ολοκληρώνει.
    ◦ Μια λίστα συγκεκριμένων δεξιοτήτων με περιγραφές για να βοηθήσει άλλους πράκτορες (ή ακόμα και ανθρώπινους χρήστες) να κατανοήσουν πότε και γιατί θα ήθελαν να καλέσουν αυτόν τον πράκτορα.
    ◦ Το τρέχον URL τελικού σημείου του πράκτορα.
    ◦ Την έκδοση και τις δυνατότητες του πράκτορα, όπως ροές απαντήσεων και ειδοποιήσεις push.

Εκτελεστής Πράκτορα

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

Τεχνούργημα

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

Ουρά Συμβάντων

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

Πλεονεκτήματα του A2A

Ενισχυμένη Συνεργασία: Επιτρέπει σε πράκτορες από διαφορετικούς προμηθευτές και πλατφόρμες να αλληλεπιδρούν, να μοιράζονται πλαίσιο και να συνεργάζονται, διευκολύνοντας την απρόσκοπτη αυτοματοποίηση σε παραδοσιακά αποσυνδεδεμένα συστήματα.

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

Ενσωματωμένη Αυθεντικοποίηση: Η αυθεντικοποίηση είναι ενσωματωμένη απευθείας στο πρωτόκολλο A2A, παρέχοντας ένα ισχυρό πλαίσιο ασφάλειας για τις αλληλεπιδράσεις πρακτόρων.

Παράδειγμα A2A

Διάγραμμα A2A

Ας επεκτείνουμε το σενάριο κράτησης ταξιδιού, αλλά αυτή τη φορά χρησιμοποιώντας το A2A.

  1. Αίτημα Χρήστη σε Πολλαπλούς Πράκτορες: Ένας χρήστης αλληλεπιδρά με έναν "Ταξιδιωτικό Πράκτορα" A2A client/agent, ίσως λέγοντας, "Παρακαλώ κλείσε ένα ολόκληρο ταξίδι στη Χονολουλού για την επόμενη εβδομάδα, συμπεριλαμβανομένων πτήσεων, ξενοδοχείου και ενοικίασης αυτοκινήτου".

  2. Ορχήστρωση από Ταξιδιωτικό Πράκτορα: Ο Ταξιδιωτικός Πράκτορας λαμβάνει αυτό το σύνθετο αίτημα. Χρησιμοποιεί το LLM του για να σκεφτεί την εργασία και να καθορίσει ότι πρέπει να αλληλεπιδράσει με άλλους εξειδικευμένους πράκτορες.

  3. Επικοινωνία Μεταξύ Πρακτόρων: Ο Ταξιδιωτικός Πράκτορας χρησιμοποιεί το πρωτόκολλο A2A για να συνδεθεί με downstream πράκτορες, όπως έναν "Πράκτορα Αεροπορικών Εταιρειών," έναν "Πράκτορα Ξενοδοχείων" και έναν "Πράκτορα Ενοικίασης Αυτοκινήτων" που έχουν δημιουργηθεί από διαφορετικές εταιρείες.

  4. Εκτέλεση Ανάθεσης Εργασιών: Ο Ταξιδιωτικός Πράκτορας στέλνει συγκεκριμένες εργασίες σε αυτούς τους εξειδικευμένους πράκτορες (π.χ., "Βρες πτήσεις για τη Χονολουλού," "Κλείσε ένα ξενοδοχείο," "Ενοικίασε ένα αυτοκίνητο"). Κάθε ένας από αυτούς τους εξειδικευμένους πράκτορες, εκτελώντας τα δικά του LLMs και χρησιμοποιώντας τα δικά του εργαλεία (που θα μπορούσαν να είναι MCP servers), εκτελεί το συγκεκριμένο μέρος της κράτησης.

  5. Συγκεντρωμένη Απόκριση: Μόλις όλοι οι downstream πράκτορες ολοκληρώσουν τις εργασίες τους, ο Ταξιδιωτικός Πράκτορας συγκεντρώνει τα αποτελέσματα (λεπτομέρειες πτήσης, επιβεβαίωση ξενοδοχείου, κράτηση αυτοκινήτου) και στέλνει μια ολοκληρωμένη, συνομιλιακή απάντηση πίσω στον χρήστη.

Natural Language Web (NLWeb)

Οι ιστότοποι υπήρξαν εδώ και καιρό ο κύριος τρόπος για τους χρήστες να έχουν πρόσβαση σε πληροφορίες και δεδομένα στο διαδίκτυο.

Ας δούμε τα διαφορετικά συστατικά του NLWeb, τα πλεονεκτήματα του NLWeb και ένα παράδειγμα για το πώς λειτουργεί το NLWeb εξετάζοντας την εφαρμογή ταξιδιών μας.

Συστατικά του NLWeb

  • Εφαρμογή NLWeb (Κεντρικός Κώδικας Υπηρεσίας): Το σύστημα που επεξεργάζεται ερωτήσεις φυσικής γλώσσας. Συνδέει τα διάφορα μέρη της πλατφόρμας για να δημιουργήσει απαντήσεις. Μπορείτε να το σκεφτείτε ως τον κινητήρα που τροφοδοτεί τις δυνατότητες φυσικής γλώσσας ενός ιστότοπου.

  • Πρωτόκολλο NLWeb: Αυτό είναι ένα βασικό σύνολο κανόνων για αλληλεπίδραση φυσικής γλώσσας με έναν ιστότοπο. Επιστρέφει απαντήσεις σε μορφή JSON (συχνά χρησιμοποιώντας Schema.org). Σκοπός του είναι να δημιουργήσει ένα απλό θεμέλιο για τον "AI Ιστό," με τον ίδιο τρόπο που το HTML έκανε δυνατή την κοινή χρήση εγγράφων στο διαδίκτυο.

  • MCP Server (Σημείο Τέλους Model Context Protocol): Κάθε εγκατάσταση NLWeb λειτουργεί επίσης ως MCP server. Αυτό σημαίνει ότι μπορεί να μοιράζεται εργαλεία (όπως μια μέθοδο "ask") και δεδομένα με άλλα συστήματα AI. Στην πράξη, αυτό καθιστά το περιεχόμενο και τις δυνατότητες του ιστότοπου χρησιμοποιήσιμες από πράκτορες AI, επιτρέποντας στον ιστότοπο να γίνει μέρος του ευρύτερου "οικοσυστή


Αποποίηση Ευθύνης:
Αυτό το έγγραφο έχει μεταφραστεί χρησιμοποιώντας την υπηρεσία αυτόματης μετάφρασης Co-op Translator. Παρόλο που καταβάλλουμε προσπάθειες για ακρίβεια, παρακαλούμε να έχετε υπόψη ότι οι αυτόματες μεταφράσεις ενδέχεται να περιέχουν λάθη ή ανακρίβειες. Το πρωτότυπο έγγραφο στη μητρική του γλώσσα θα πρέπει να θεωρείται η αυθεντική πηγή. Για κρίσιμες πληροφορίες, συνιστάται επαγγελματική ανθρώπινη μετάφραση. Δεν φέρουμε ευθύνη για τυχόν παρεξηγήσεις ή εσφαλμένες ερμηνείες που προκύπτουν από τη χρήση αυτής της μετάφρασης.