Από το LLM στον AI Agent: Τι είναι το Tooling και πώς λειτουργεί η αυτονομία στην Τεχνητή Νοημοσύνη

Πότε ένα γλωσσικό μοντέλο μετατρέπεται σε AI Agent; Ποιον ρόλο παίζει το Tooling και πώς συνδέονται οι ενέργειες CRUD με τον κύκλο Reason, Act και Observe; Ας δούμε τη λογική πίσω από τα σύγχρονα συστήματα Τεχνητής Νοημοσύνης. Η Τεχνητή Νοημοσύνη δεν περιορίζεται πλέον στη δημιουργία κειμένου και στην απάντηση ερωτήσεων. Τα σύγχρονα γλωσσικά μοντέλα μπορούν να χρησιμοποιούν εργαλεία, να ανακτούν πληροφορίες και να συμμετέχουν στην εκτέλεση πραγματικών εργασιών. Αυτή η εξέλιξη έχει φέρει στο προσκήνιο όρους όπως Tooling, Function Calling, AI Agents και Agentic AI. Παρότι συχνά χρησιμοποιούνται μαζί, δεν περιγράφουν ακριβώς το ίδιο πράγμα. Για να κατανοήσουμε τη διαφορά τους, πρέπει πρώτα να εξετάσουμε πώς ένα γλωσσικό μοντέλο επικοινωνεί με ένα πληροφοριακό σύστημα.

Δημοσιογραφική Ομάδα CodeCraft.gr 10′ ανάγνωση

Από το LLM στον AI Agent: Τι είναι το Tooling και πώς λειτουργεί η αυτονομία στην Τεχνητή Νοημοσύνη

1. Τι μπορεί να κάνει ένα LLM από μόνο του;

Ένα Large Language Model (LLM) είναι ένα γλωσσικό μοντέλο που έχει εκπαιδευτεί να επεξεργάζεται και να παράγει περιεχόμενο.

Μπορεί να κατανοεί οδηγίες, να αναλύει πληροφορίες, να εξηγεί έννοιες και να προτείνει λύσεις σε προβλήματα. Ωστόσο, η ικανότητα παραγωγής μιας απάντησης δεν συνεπάγεται και τη δυνατότητα πραγματοποίησης μιας ενέργειας.

Ας υποθέσουμε ότι ζητάμε από ένα LLM να ακυρώσει μια κράτηση σε ένα ξενοδοχείο.

Το μοντέλο μπορεί να εξηγήσει τη διαδικασία ακύρωσης. Δεν μπορεί όμως να γνωρίζει την πραγματική κατάσταση της κράτησης ή να την τροποποιήσει χωρίς πρόσβαση στο αντίστοιχο σύστημα.

Εδώ εμφανίζεται η ανάγκη για το Tooling.

2. Τι είναι το Tooling;

Το Tooling είναι ο μηχανισμός που επιτρέπει σε ένα γλωσσικό μοντέλο να χρησιμοποιεί λειτουργίες εξωτερικών συστημάτων.

Αντί να περιορίζεται στις πληροφορίες που διαθέτει στο περιβάλλον της συνομιλίας, το LLM μπορεί να ζητήσει πρόσθετα δεδομένα ή την εκτέλεση μιας συγκεκριμένης ενέργειας.

Αυτές οι λειτουργίες ονομάζονται Tools.

Ένα Tool μπορεί να αναζητά μια κράτηση, να υπολογίζει μια τιμή, να διαβάζει ένα αρχείο ή να ενημερώνει μια εγγραφή.

Το μοντέλο δεν χρειάζεται να γνωρίζει τον εσωτερικό τρόπο υλοποίησης του εργαλείου. Χρειάζεται όμως να γνωρίζει τι κάνει, ποιες παραμέτρους δέχεται και πότε πρέπει να χρησιμοποιηθεί.

Το Tooling λειτουργεί επομένως ως γέφυρα ανάμεσα στη φυσική γλώσσα και στις πραγματικές λειτουργίες ενός πληροφοριακού συστήματος.

3. Πώς λειτουργεί το Tooling στην πράξη;

Η επικοινωνία ανάμεσα στο LLM και τα εργαλεία βασίζεται σε έναν συγκεκριμένο μηχανισμό.

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

Στη συνέχεια, το LLM εξετάζει το αίτημα του χρήστη και αποφασίζει αν χρειάζεται κάποιο εργαλείο.

Αν χρειάζεται, δημιουργεί ένα δομημένο αίτημα εκτέλεσης. Το αίτημα περιλαμβάνει το όνομα του εργαλείου και τις απαραίτητες παραμέτρους.

Η εφαρμογή παραλαμβάνει το αίτημα, ελέγχει αν επιτρέπεται η ενέργεια και εκτελεί την αντίστοιχη λειτουργία.

Τέλος, το αποτέλεσμα επιστρέφει στο μοντέλο, ώστε να χρησιμοποιηθεί στην απάντηση ή σε μια επόμενη απόφαση.

Η συνολική διαδικασία μπορεί να περιγραφεί ως εξής:

Αίτημα χρήστη → Επιλογή εργαλείου → Εκτέλεση → Επιστροφή αποτελέσματος → Απάντηση ή νέα ενέργεια

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

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

4. Η σχέση του Tooling με τις λειτουργίες CRUD

Ένας ιδιαίτερα απλός τρόπος να κατανοήσουμε το Tooling είναι να το συνδέσουμε με τις λειτουργίες CRUD.

Το CRUD προέρχεται από τις λέξεις Create, Read, Update και Delete. Πρόκειται για τις τέσσερις βασικές κατηγορίες διαχείρισης δεδομένων σε ένα πληροφοριακό σύστημα.

Οι ίδιες λειτουργίες αποτελούν σημαντικό μέρος των εργαλείων που μπορούμε να διαθέσουμε σε ένα LLM.

Create — Δημιουργία

Το σύστημα μπορεί να δημιουργεί νέες εγγραφές, κρατήσεις, παραγγελίες ή αιτήματα.

Read — Ανάγνωση

Το μοντέλο μπορεί να ζητά την ανάκτηση πληροφοριών, όπως διαθέσιμα προϊόντα, οικονομικά στοιχεία ή υπάρχοντα ραντεβού.

Update — Ενημέρωση

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

Delete — Διαγραφή

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

Η ουσιαστική διαφορά βρίσκεται στον τρόπο ενεργοποίησης αυτών των λειτουργιών.

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

Με το Tooling, ο χρήστης μπορεί να εκφράσει την ίδια επιθυμία χρησιμοποιώντας φυσική γλώσσα. Το LLM αναγνωρίζει την πρόθεση και επιλέγει το κατάλληλο εργαλείο.

Για παράδειγμα, η εντολή «Άλλαξε το αυριανό μου ραντεβού για την Παρασκευή» μπορεί να μεταφραστεί σε διαδοχικές λειτουργίες ανάγνωσης και ενημέρωσης.

Ωστόσο, το Tooling δεν περιορίζεται στο CRUD.

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

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

5. Κάθε LLM που χρησιμοποιεί εργαλεία είναι AI Agent;

Εδώ βρίσκεται μία από τις σημαντικότερες διακρίσεις.

Η πρόσβαση σε εργαλεία δεν σημαίνει απαραίτητα ότι έχουμε δημιουργήσει έναν AI Agent.

Ας εξετάσουμε δύο διαφορετικά συστήματα.

Στο πρώτο, ο χρήστης ζητά την τιμή ενός προϊόντος. Το LLM χρησιμοποιεί ένα εργαλείο αναζήτησης, λαμβάνει την τιμή και επιστρέφει την απάντηση.

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

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

Το μοντέλο πρέπει να αναζητήσει προϊόντα, να συγκρίνει χαρακτηριστικά, να ελέγξει διαθεσιμότητα και να αξιολογήσει τις εναλλακτικές επιλογές.

Αν κάποιο προϊόν δεν είναι διαθέσιμο, μπορεί να αναζητήσει άλλο. Αν οι πληροφορίες είναι ανεπαρκείς, μπορεί να πραγματοποιήσει πρόσθετη αναζήτηση.

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

Η διαφορά δεν βρίσκεται στον αριθμό των εργαλείων, αλλά στον τρόπο με τον οποίο λαμβάνονται οι αποφάσεις.

6. Ο κύκλος Reason → Act → Observe

Ένα από τα γνωστότερα μοτίβα λειτουργίας των AI Agents είναι το ReAct, από τις έννοιες Reasoning και Acting.

Η βασική ιδέα είναι ότι το σύστημα συνδυάζει τη λήψη αποφάσεων με την εκτέλεση ενεργειών και την αξιολόγηση των αποτελεσμάτων.

Ο κύκλος περιγράφεται ως εξής:

Reason → Act → Observe → Reason → ...

Ας αναλύσουμε τα τρία στάδια.

Reason — Αξιολόγηση και λήψη απόφασης

Το μοντέλο εξετάζει τον στόχο του χρήστη και τις πληροφορίες που έχει διαθέσιμες.

Προσδιορίζει τι χρειάζεται να γίνει στη συνέχεια και ποιο εργαλείο μπορεί να βοηθήσει.

Δεν είναι απαραίτητο να δημιουργηθεί ένα πλήρες σχέδιο από την αρχή. Η απόφαση μπορεί να αφορά μόνο την επόμενη ενέργεια.

Act — Εκτέλεση ενέργειας

Το μοντέλο επιλέγει ένα εργαλείο και υποβάλλει αίτημα εκτέλεσης.

Το εξωτερικό σύστημα πραγματοποιεί την ενέργεια και παράγει ένα αποτέλεσμα.

Η ενέργεια μπορεί να είναι μια αναζήτηση, ένας υπολογισμός ή μια τροποποίηση δεδομένων.

Observe — Παρατήρηση και αξιολόγηση

Το αποτέλεσμα επιστρέφει στο μοντέλο.

Το LLM εξετάζει τις νέες πληροφορίες και αξιολογεί αν έχει επιτευχθεί ο στόχος.

Αν χρειάζονται πρόσθετες ενέργειες, ο κύκλος επαναλαμβάνεται.

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

7. Είναι υποχρεωτική η σειρά Reason → Act → Observe;

Όχι. Η συγκεκριμένη σειρά είναι ένα χρήσιμο αρχιτεκτονικό μοτίβο, αλλά δεν αποτελεί καθολικό κανόνα.

Ένα σύστημα μπορεί να ξεκινά με μια προκαθορισμένη ενέργεια, πριν ζητήσει από το μοντέλο να λάβει κάποια απόφαση.

Για παράδειγμα, η εφαρμογή μπορεί να ανακτά πρώτα τις διαθέσιμες παραγγελίες ενός χρήστη. Έπειτα, το LLM επεξεργάζεται τα αποτελέσματα και αποφασίζει ποια ενέργεια απαιτείται.

Η διαδικασία αυτή μπορεί να περιγραφεί ως:

Act → Observe → Reason

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

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

Το κρίσιμο στοιχείο δεν είναι η αυστηρή σειρά των βημάτων.

Είναι η δυνατότητα του συστήματος να αξιοποιεί τις πληροφορίες που αποκτά και να προσαρμόζει τη συμπεριφορά του.

Αν ένα εργαλείο επιστρέψει σφάλμα, το μοντέλο χρειάζεται να ενημερωθεί για το αποτέλεσμα πριν αξιολογήσει αξιόπιστα την επόμενη κίνηση.

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

8. Ένα ολοκληρωμένο παράδειγμα AI Agent

Ας υποθέσουμε ότι χρησιμοποιούμε μια εφαρμογή διαχείρισης ραντεβού.

Ο χρήστης δίνει την ακόλουθη οδηγία:

«Μετάφερε το αυριανό μου ραντεβού για την Παρασκευή, αλλά μόνο αν υπάρχει διαθέσιμη ώρα.»

Ένα σύστημα που λειτουργεί ως Agent μπορεί να οργανώσει τη διαδικασία δυναμικά.

Αρχικά, αναζητά τα ραντεβού του χρήστη για την επόμενη ημέρα.

Αν βρει περισσότερα από ένα, μπορεί να ζητήσει διευκρίνιση. Αν βρει ένα, συνεχίζει στον έλεγχο διαθεσιμότητας.

Στη συνέχεια, αναζητά τις διαθέσιμες ώρες της Παρασκευής.

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

Πριν πραγματοποιηθεί η τροποποίηση, η εφαρμογή μπορεί να ζητήσει επιβεβαίωση από τον χρήστη.

Μόλις εγκριθεί η ενέργεια, το σύστημα ενημερώνει την κράτηση και ελέγχει το αποτέλεσμα.

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

Αυτή είναι η ουσία της agentic συμπεριφοράς.

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

9. Ποιος ελέγχει τελικά τον Agent;

Η ύπαρξη αυτονομίας δεν σημαίνει ότι το γλωσσικό μοντέλο πρέπει να διαθέτει απεριόριστη πρόσβαση στο σύστημα.

Αντίθετα, η εφαρμογή οφείλει να καθορίζει ποια εργαλεία είναι διαθέσιμα, ποιος μπορεί να τα χρησιμοποιήσει και ποιες ενέργειες απαιτούν έγκριση.

Το μοντέλο μπορεί να αποφασίζει ότι χρειάζεται να τροποποιηθεί μια εγγραφή. Η πραγματική εκτέλεση, όμως, πρέπει να υπόκειται στους κανόνες ασφαλείας του συστήματος.

Για παράδειγμα, ένας Agent δεν πρέπει να μπορεί να διαγράψει αυθαίρετα δεδομένα επειδή απλώς το ζήτησε ένας χρήστης.

Η εφαρμογή πρέπει να ελέγχει την ταυτότητα, τα δικαιώματα και την εγκυρότητα του αιτήματος.

Αυτή η πρακτική γίνεται ιδιαίτερα σημαντική στις λειτουργίες Update και Delete, όπου μια λανθασμένη απόφαση μπορεί να έχει πραγματικές συνέπειες.

Ένας χρήσιμος μηχανισμός είναι το Human-in-the-Loop, όπου απαιτείται ανθρώπινη επιβεβαίωση πριν από συγκεκριμένες ενέργειες.

Η αυτονομία του μοντέλου επομένως λειτουργεί μέσα σε ένα ελεγχόμενο περιβάλλον και όχι ανεξάρτητα από αυτό.

10. Χρειάζεται κάθε εφαρμογή έναν AI Agent;

Παρότι οι AI Agents μπορούν να επιλύουν σύνθετα προβλήματα, δεν αποτελούν πάντα την καλύτερη επιλογή.

Όταν μια εργασία ακολουθεί συγκεκριμένα και προβλέψιμα βήματα, ένα παραδοσιακό workflow μπορεί να είναι απλούστερο και πιο αξιόπιστο.

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

Αντίθετα, όταν μια εργασία απαιτεί αναζήτηση, σύγκριση, αξιολόγηση και προσαρμογή, ένας Agent μπορεί να προσφέρει μεγαλύτερη ευελιξία.

Η δυναμική λειτουργία έχει όμως και κόστος.

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

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

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

11. Η πραγματική αλλαγή στον τρόπο ανάπτυξης λογισμικού

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

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

Με τα LLMs και το Tooling, αποκτά τη δυνατότητα να προσθέσει ένα διαφορετικό επίπεδο αλληλεπίδρασης.

Ο χρήστης μπορεί να περιγράφει τον στόχο του χωρίς να γνωρίζει όλες τις απαραίτητες ενέργειες.

Το μοντέλο αναλαμβάνει να ερμηνεύσει το αίτημα και να επιλέξει ανάμεσα στις λειτουργίες που του έχουν διατεθεί.

Όταν προστεθεί ένας μηχανισμός ανατροφοδότησης και δυναμικής λήψης αποφάσεων, το σύστημα μπορεί να αποκτήσει agentic συμπεριφορά.

Αυτό δεν καταργεί την παραδοσιακή επιχειρησιακή λογική. Αντίθετα, βασίζεται σε αυτήν.

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

Συμπέρασμα

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

Οι λειτουργίες CRUD αποτελούν ένα μεγάλο μέρος αυτής της αλληλεπίδρασης, αλλά δεν καλύπτουν ολόκληρο το φάσμα των εργαλείων.

Ένας AI Agent πηγαίνει ένα βήμα παραπέρα, όταν μπορεί να οργανώνει δυναμικά ενέργειες, να αξιολογεί αποτελέσματα και να προσαρμόζει τη διαδικασία επίτευξης ενός στόχου.

Ο κύκλος Reason → Act → Observe αποτελεί έναν από τους πιο χαρακτηριστικούς τρόπους περιγραφής αυτής της λειτουργίας, χωρίς να είναι η μοναδική δυνατή αρχιτεκτονική.

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

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

Πώς σου φάνηκε;

Δημοσιογραφική Ομάδα CodeCraft.gr

Η συντακτική ομάδα του CodeCraft καλύπτει τεχνολογία, AI, hardware και software.

Σχόλια

Φόρτωση σχολίων…