Επεξήγηση A2UI: Τι κάνει (και δεν κάνει) το πρωτόκολλο Agent-to-UI
Το A2UI είναι ένα δηλωτικό πρωτόκολλο JSON που επιτρέπει στους πράκτορες AI να περιγράφουν διεπαφές για απόδοση από έναν πελάτη. Πώς λειτουργεί, ποιοι renderers υπάρχουν και τι δεν κάνει.
Core Takeaway
Το A2UI (Agent to UI) είναι ένα ανοιχτό, δηλωτικό πρωτόκολλο JSON που δημιουργήθηκε από την Google. Ένας πράκτορας AI στέλνει μια περιγραφή μιας διεπαφής και ένας πελάτης την αποδίδει με τα δικά του εγγενή στοιχεία αντί να εκτελεί κώδικα από τον πράκτορα. Είναι ένας τρόπος για να μετακινήσετε τη δομή και τα δεδομένα διεπαφής χρήστη πέρα από ένα όριο εμπιστοσύνης, όχι ένα σύστημα κινούμενων εικόνων, μια βιβλιοθήκη στοιχείων ή μια ολοκληρωμένη απόδοση απόδοσης. Το ExodeUI δεν είναι πρόγραμμα απόδοσης A2UI και δεν είναι συνδεδεμένο με την Google.
Τι είναι το A2UI;
Το A2UI είναι ένα πρωτόκολλο για διεπαφές που βασίζονται σε πράκτορες. Αντί να επιστρέψει ένα τοίχο κειμένου ή να εκτελέσει τον παραγόμενο κώδικα, ένας πράκτορας AI στέλνει μια ροή μηνυμάτων JSON που περιγράφουν μια διεπαφή χρήστη: ποια επιφάνεια να δημιουργήσει, ποια στοιχεία περιέχει και ποια δεδομένα τα γεμίζουν. Ο πελάτης λαμβάνει αυτά τα μηνύματα και αποδίδει το αποτέλεσμα με στοιχεία που ήδη εμπιστεύεται. Το A2UI δημιουργήθηκε από την Google και έχει άδεια χρήσης Apache 2.0, με συνεισφορές από το CopilotKit και την κοινότητα ανοιχτού κώδικα. Από τον Οκτώβριο του 2026, οι τρέχουσες προδιαγραφές παραγωγής ήταν v0.9.1 και το v1.0 ήταν υποψήφιο για κυκλοφορία.
Το πρόβλημα που προσπαθεί να λύσει το A2UI
Οι πράκτορες είναι καλοί στο να παράγουν μια χρήσιμη απάντηση και κακοί στο να την παρέχουν ως διεπαφή. Μια απάντηση κειμένου δεν μπορεί να εμφανίσει έναν πίνακα σύγκρισης, μια φόρμα παραγγελίας ή έναν πίνακα εργαλείων. Η δημιουργία αυθαίρετου HTML ή JavaScript επιλύει το πρόβλημα παρουσίασης και δημιουργεί ένα πρόβλημα ασφαλείας, επειδή ο υπολογιστής-πελάτης εκτελεί τώρα κώδικα που δεν έγραψε. Το A2UI ακολουθεί μια τρίτη διαδρομή: ο πράκτορας περιγράφει τη διεπαφή χρήστη σε περιορισμένη μορφή και ο πελάτης αποφασίζει πώς να την αποδώσει. Ο πράκτορας μπορεί να χρησιμοποιήσει μόνο στοιχεία που έχει εγκρίνει ο πελάτης και η έξοδος είναι δεδομένα και όχι εκτελέσιμος κώδικας.
Πώς κατασκευάζεται μια επιφάνεια A2UI
Το πρωτόκολλο χρησιμοποιεί ένα μικρό σύνολο τύπων μηνυμάτων. Το ακριβές σχήμα αλλάζει μεταξύ των εκδόσεων, επομένως ελέγξτε τις προδιαγραφές πριν εφαρμόσετε μία, αλλά το σχήμα είναι σταθερό.
- createSurface: λέει στον renderer να δημιουργήσει μια νέα επιφάνεια, η οποία είναι μια περιοχή της διεπαφής που μπορεί να ενημερώσει ο πράκτορας
- updateComponents: προσθέτει ή αλλάζει ορισμούς στοιχείων σε αυτήν την επιφάνεια
- updateDataModel: αλλάζει τα δεδομένα που εμφανίζουν τα στοιχεία, χωρίς να ξαναστείλει τη δομή
- deleteSurface: αφαιρεί μια επιφάνεια όταν δεν χρειάζεται πλέον
Κατασκευαστές και μεταφορές
Το A2UI είναι αγνωστικό στη μεταφορά. Η προδιαγραφή περιγράφει τα μηνύματα, όχι τον τρόπο με τον οποίο ταξιδεύουν. Το έργο παραθέτει υλοποιήσεις απόδοσης για Angular, Flutter, Lit, React και Markdown και συνδέσεις μεταφοράς για AG-UI, A2A και MCP, με WebSockets, SSE και REST επίσης να χρησιμοποιηθούν. Αυτή η ευελιξία είναι το ζητούμενο: η ίδια απόκριση παράγοντα μπορεί να αποδοθεί από έναν πελάτη ιστού, μια εφαρμογή για κινητά ή μια εφαρμογή επιτραπέζιου υπολογιστή, το καθένα χρησιμοποιώντας το δικό του σύστημα σχεδίασης.
Τι δεν κάνει το A2UI
Το A2UI είναι εύκολο να υπερ-διαβαστεί. Δεν αποστέλλει μια βιβλιοθήκη στοιχείων που μπορείτε να βάλετε σε μια εφαρμογή και δεν αποδίδει τίποτα από μόνο του: χρειάζεστε ένα πρόγραμμα απόδοσης και έναν κατάλογο στοιχείων που ελέγχει ο πελάτης. Δεν αποφασίζει πώς θα κινηθεί η διεπαφή χρήστη. Δεν αντικαθιστά το MCP, το οποίο εκθέτει εργαλεία και δεδομένα σε ένα μοντέλο, ή το AG-UI, το οποίο μεταφέρει τα συμβάντα αλληλεπίδρασης μεταξύ ενός πράκτορα και μιας διεπαφής. Και δεν καταργεί την ανάγκη για αναθεώρηση μηχανικής: οι δημιουργημένες διεπαφές πρέπει ακόμα να χειρίζονται τη φόρτωση, τις άδειες καταστάσεις και τις καταστάσεις σφάλματος, τα δικαιώματα και την προσβασιμότητα.
A2UI vs AG-UI vs MCP
Αυτά τα τρία αναφέρονται συχνά μαζί επειδή λύνουν διαφορετικά επίπεδα του ίδιου προβλήματος. Μια χρήσιμη συντομογραφία: Το A2UI περιγράφει τη διεπαφή, το AG-UI μεταφέρει την αλληλεπίδραση και το MCP δίνει στον πράκτορα εργαλεία και δεδομένα. Η τεκμηρίωση του ίδιου του A2UI περιγράφει το AG-UI ως δεσμευτικό μεταφοράς για το A2UI και το A2UI μπορεί επίσης να ταξιδέψει πάνω από το MCP. Είναι συμπληρωματικά, όχι ανταγωνιστικά πρότυπα. Εάν επιλέγετε μια ενοποίηση, ξεκινήστε από το τι μπορεί να αποδώσει ο πελάτης σας και ποια μεταφορά υποστηρίζει ήδη, όχι από το πρωτόκολλο με τη μεγαλύτερη ορμή.
Εκεί που ταιριάζει το animation και η αλληλεπίδραση
Το A2UI περιγράφει τη δομή και τα δεδομένα. Η κίνηση είναι μια ανησυχία του πελάτη: ο renderer αποφασίζει εάν μια επιφάνεια εμφανίζεται αμέσως, ξεθωριάζει ή μεταβαίνει από μια προηγούμενη κατάσταση. Αυτά είναι καλά νέα για τις ομάδες προϊόντων, επειδή διατηρεί το σύστημα κίνησης στον πελάτη όπου μπορεί να σέβεται το σύστημα σχεδίασης και τις ρυθμίσεις προσβασιμότητας. Σημαίνει επίσης ότι μια υλοποίηση A2UI δεν κινείται αυτόματα. Εάν μια διεπαφή που δημιουργείται χρειάζεται ένα πάτημα κουμπιού, μια μετάβαση κατάστασης ή μια αντίδραση μασκότ, ο πελάτης πρέπει να παρέχει αυτή τη συμπεριφορά. Το ExodeUI μπορεί να παίξει διαδραστική κίνηση σε έναν πελάτη και διαθέτει διακομιστή MCP για εργαλεία κωδικοποίησης τεχνητής νοημοσύνης, αλλά δεν είναι πρόγραμμα απόδοσης A2UI και δεν πρέπει να περιγράφεται ως ένας.
Απόσπασμα υλοποίησης παραγωγής
// Simplified shape of an A2UI message stream (schema differs by version).
{ "createSurface": { "surfaceId": "cart" } }
{ "updateComponents": { "surfaceId": "cart", "components": [ /* ... */ ] } }
{ "updateDataModel": { "surfaceId": "cart", "data": { /* ... */ } } }
{ "deleteSurface": { "surfaceId": "cart" } }Κλειδί Principles για να θυμάστε
- Το A2UI είναι ένα πρωτόκολλο JSON για διεπαφές που περιγράφονται από πράκτορες, που δημιουργήθηκε από την Google και διαθέτει άδεια χρήσης σύμφωνα με το Apache 2.0
- Ο πελάτης αποδίδει με τα δικά του στοιχεία. ο πράκτορας δεν εκτελεί αυθαίρετο κώδικα διεπαφής χρήστη
- Ορίζει μηνύματα και αφήνει την απόδοση, τη μεταφορά και την κίνηση στον πελάτη
- Δεν είναι ένα σύστημα κίνησης ή μια αναπτυσσόμενη βιβλιοθήκη στοιχείων
- Το ExodeUI δεν είναι πρόγραμμα απόδοσης A2UI και δεν έχει σχέση με την Google