Στο τέλος αυτού του μαθήματος θα ξέρεις να εξηγείς γιατί ένα μοντέλο ΤΝ χρειάζεται εργαλεία για να αγγίξει τον πραγματικό κόσμο, και να περιγράφεις πώς «ζητάει» να χρησιμοποιήσει ένα εργαλείο μέσω της κλήσης συναρτήσεων.
Ξέρεις πολλά πράγματα απ' έξω, αλλά για κάποιες εργασίες χρειάζεσαι ένα εργαλείο: μια αριθμομηχανή για μεγάλο υπολογισμό, ένα τηλέφωνο για να καλέσεις κάποιον, έναν χάρτη για να προσανατολιστείς. Δεν γίνεσαι αριθμομηχανή: την παίρνεις, πληκτρολογείς τον υπολογισμό, διαβάζεις το αποτέλεσμα, και μετά συνεχίζεις αυτό που έκανες. Ένα μοντέλο ΤΝ κάνει ακριβώς το ίδιο με τα εργαλεία του: δεν ξέρει τα πάντα, αλλά ξέρει πότε και πώς να πάει να πάρει την πληροφορία ή να κάνει την ενέργεια.
Ένα μοντέλο ΤΝ, από μόνο του, μπορεί να παράγει μόνο κείμενο. Δεν μπορεί να δει τον καιρό σήμερα, ούτε να ανοίξει ένα αρχείο, ούτε να στείλει ένα μήνυμα. Τα εργαλεία (tools) είναι ο τρόπος του να φτάσει τον εξωτερικό κόσμο.
Η κλήση συναρτήσεων (function calling) είναι ο τρόπος με τον οποίο το μοντέλο ζητάει να χρησιμοποιηθεί ένα εργαλείο. Αντί να γράψει μια φράση, γράφει ένα είδος μικρής, καλοδιατυπωμένης εντολής, όπως get_weather('Athens'), που ένα πραγματικό πρόγραμμα θα εκτελέσει για λογαριασμό του.
Από αριστερά προς τα δεξιά: το μοντέλο εντοπίζει ότι του λείπει κάτι, διατυπώνει την κλήση, το εργαλείο κάνει την πραγματική δουλειά, το αποτέλεσμα επιστρέφει, και το μοντέλο το χρησιμοποιεί για να συνεχίσει.
Ιδού τα πιο συνηθισμένα εργαλεία:
Δύο παραδείγματα:
Φτιάξε μια «εργαλειοθήκη» από χαρτί και παίξε το μοντέλο που καλεί συναρτήσεις.
αριθμομηχανή(…), καιρός(πόλη), λεξικό(λέξη), ρολόι().λεξικό('ορχηστρώνω')»), να περιμένει την απάντηση, και μετά να απαντήσει στον ενήλικα.Ποια «εργαλεία» χρησιμοποιείς κάθε μέρα επειδή η μνήμη σου δεν φτάνει (ημερολόγιο, GPS, αριθμομηχανή…); Εμπιστεύεσαι περισσότερο τη μνήμη σου ή το εργαλείο;
Άρα; Τα εργαλεία μετατρέπουν ένα μοντέλο που μόνο μιλάει σε έναν πράκτορα που μπορεί πραγματικά να ελέγχει γεγονότα και να δρα στον πραγματικό κόσμο.