Στο προηγούμενο μας σημείωμα («Τι λένε τα γκομπιούτερς και οι αριθμοί»), προσπάθησα να δώσω μια πολύ συνοπτική ανασκόπηση του πεδίου της τεχνητής νοημοσύνης, από το '60 έως τις σημερινές εξελίξεις με το GPT-3 και το ChatGPT. Οι εξελίξεις όμως τρέχουν και πρέπει να τρέξουμε και εμείς για να τις προλάβουμε.
Οι μεγαλύτεροι ίσως θυμάστε πως από το ειρωνικό σχόλιο «πούλα! πούλα!» όταν βλέπαμε κάποιον να χρησιμοποιεί κινητό σε δημόσιο χώρο (ότι και καλά κινητά αρμόζει να έχουν μόνο γιάπηδες που ντιλάρουν μετοχές), περάσαμε σύντομα να έχουμε όλοι κινητά παντόφλες, και ελάχιστα αργότερα φτάσαμε να έχουμε όλοι ένα από ένα παντοδύναμο smartphone ο καθένας ― μέσα σε 15 μόλις χρόνια.
Ε, η τεχνητή νοημοσύνη ― ή, τέλος πάντως ότι πλασάρεται ως τέτοιο ― τρέχει ακόμα πιο γρήγορα. Έτσι από τα «viral για κάνα δυο εβδομάδες» φωτογραφικά φίλτρα, που όλοι τρέχαμε να δούμε τις μούρες μας πιο σέξι ή πιο γερασμένες, περάσαμε σύντομα στα deep fake (που ανατρέπουν την εμπιστοσύνη μας στην αυθεντικότητα ενός video ντοκουμέντου), στα Dall-e και Midjourney (που θα βγάλουν πολλούς εικονογράφους και γραφίστες στην ανεργία), και στις φιλοσοφικές κουβεντούλες με το GPT3 και το φλύαρο αδερφάκι του, το Chat GPT.
Ε, αυτά καλά ήταν ― ως πέρυσι. Γιατί φέτος έρχεται το GPT4 – και το αντίστοιχα ανανεωμένο ChatGPT.
Δεν πρόκειται για κάποια φοβερή τεχνολογική καινοτομία. Είναι το ίδιο το παλιό GPT που όλοι αγαπήσαμε (ή, έστω, με το οποίο όλοι παπαρίσαμε για κάποιες ώρες), αλλά με περισσότερα από όλα.
Αυτό που αλλάζει σε κάθε νέα έκδοση του GPT είναι το εύρος της εκπαίδευσης που του γίνεται (πόσο πολύ υλικό έχει «μελετήσει»), το οποίο φυσικά κάθε φορά αυξάνεται (όσο επιτρέπει η τεχνολογία, η διαθέσιμη ισχύς, και κάποιες βελτιστοποιήσεις ώστε να «μελετάει» πιο γρήγορα).
Εκεί που το GPT-2 είχε 1.5 δις παραμέτρους και το GPT-3 έφτασε τις 175 δις παραμέτρους, το GPT-4 αναμένεται να έχει μερικά τρις (1,000,000,000,000 και βάλε) παραμέτρους.
Όλη αυτή η ποσοτική βελτίωση μεταφράζεται και σε ποιοτική βελτίωση των αποτελεσμάτων. Έως τώρα, τουλάχιστον: θα πούμε παρακάτω γιατί αυτό δεν είναι αναγκαστικά κάτι που θα ισχύει επ’ αόριστον.
Σε κάθε περίπτωση, το GPT-4 αναμένεται να έχει περισσότερο σπρέχεν και από καμάκι του ’70 στη Ρόδο [1]. Αυτό σημαίνει ότι θα αξιοποιηθεί σε όλο και περισσότερες εργασίες, από το να λύνει απορίες μπαφάτων στις τέσσερις το πρωί («γιατί είναι μπλε η θάλασσα;», «σπινιάρει η γάτα στο γιαούρτι;») και να γράφει εργασίες που μαθητές και φοιτητές θα παραδίδουν ως δικές τους, έως το να αντικαθιστά εργαζόμενους σε support center και δημοσιογράφους.
# Ναι, αλλά πως δουλεύει αυτό το ματζαφλάρι;
Είπαμε κάτι λίγα στο προηγούμενο σημείωμα για το πως δουλεύει το GPT3/ChatGPT και γενικότερα αυτή η κατηγορία προγραμμάτων (που επίσημα λέγονται «γλωσσικά μοντέλα»), αλλά το αφήσαμε στο φλου.
Είπαμε δηλαδή ότι ένα πρόγραμμα σαν το ChatGPT δουλεύει φορτώνοντας το κείμενα (βιβλία, άρθρα, προτάσεις, κλπ), στα οποία κάνει στατιστική ανάλυση, και μαθαίνει να βρίσκει συσχετίσεις μεταξύ τους (του τύπου, ότι η λέξη «άντρας» έχει περισσότερο σχέση με τις λέξεις «φύλο», «γυναίκα», «τσουτσουνοφόρος» κ.α., παρά π.χ. με τις λέξεις «δρακουλίνια», «βότσαλο», «Καρπενήσι»).
Σήμερα όμως, και ως προαπαιτούμενο για να καταλάβουμε και τα επόμενα κεφάλαια του σημερινού σημειώματος, θα μπούμε σε λίγη περισσότερη λεπτομέρεια.
Ο βασικός τρόπος που λειτουργεί το ChatGPT (και όλα τα αντίστοιχα προγράμματα) είναι η στατιστική πρόβλεψη. Συγκεκριμένα, η πρόβλεψη της επόμενης λέξης σε σχέση με αυτές που του έχουν δοθεί.
Ας πάρουμε ως παράδειγμα το εξής input στο ChatGPT:
― Συμπλήρωσε την έκφραση: «Δε μας χέζεις, ρε …»
Το ChatGPT γνωρίζει τη «σωστή» απάντηση. Πως το γνωρίζει; Επειδή το έχουν τροφοδοτήσει με εκατομμύρια άρθρα, βιβλία, κλπ., και έχει δει ότι στατιστικά αυτές οι τέσσερις λέξεις ακολουθούνται σχεδόν πάντα από ένα συγκεκριμένο όνομα καλλιτέχνη.
(Αν δεν σας το δώσει ως απάντηση δεν σημαίνει ότι δεν ισχύει το παραπάνω: απλά, για να αποφύγουν τις μηνύσεις και την αρνητική κριτική, σε αρκετές περιπτώσεις οι Αμερικάνοι δημιουργοί του έχουν βάλει τεχνητούς περιορισμούς ως προς ποιες λέξεις μπορεί να χρησιμοποιήσει, και σε τι θέματα μπορεί να απαντήσει).
Ας το πάμε από την αρχή αρχή.
Έστω ότι στο ChatGPT έχουμε φορτώσει μόνο ένα κείμενο, συγκεκριμένα τη φράση: «Καλή εβδομάδα».
Το πρόγραμμα τότε ξέρει απλά μια συσχέτιση: ότι το «εβδομάδα» ακολουθεί το «καλή» με 100% πιθανότητα. Άρα μπορεί να απαντήσει μόνο στο input «καλή» ― και πάντα θα δίνει την ίδια απάντηση (αφού μόνο μια πιθανή συνέχεια γνωρίζει).
Η όλη «γνώση» του είναι δηλαδή αυτή εδώ: «η λέξη “καλή” ακολουθείται από την λέξη “εβδομάδα” με πιθανότητα 100%»
Έστω τώρα, ότι στο ChatGPT έχουμε φορτώσει μόνο δύο κείμενα: «καλή εβδομάδα» και «καλή Σαρακοστή». Τώρα θα έχει τούτη τη γνώση: «η λέξη “καλή” ακολουθείται από την λέξη “εβδομάδα” με πιθανότητα 50% ή από την λέξη “Σαρακοστή” με πιθανότητα επίσης 50%».
Οπότε αν πλέον του πείτε να συμπληρώσει την φράση «καλή …» θα μπορεί να σας απαντήσει είτε «Σαρακοστή» είτε «εβδομάδα» – και τις μισές φορές θα διαλέξει τη μια απάντηση, τις άλλες μισές την άλλη.
Το GPT / ChatGPT είναι αυτό ακριβώς το πράγμα.
Αλλά αντί για δύο μικρές φρασούλες του έχουν δώσει εκατομμύρια βιβλία, ειδήσεις, άρθρα, online chat, στίχους από τραγούδια, διαλόγους από ταινίες, και ό,τι άλλα κείμενα βρήκαν πρόχειρα…
Επίσης το έχουν μάθει να κοιτάει όχι μόνο τη μια αμέσως προηγούμενη λέξη, αλλά αρκετές λέξεις πίσω. Έτσι μπορεί να «καταλάβει» ότι τη φράση «το Milko με πήγε…» είναι πιθανότερο να ακολουθήσει η λέξη «αίμα», αλλά στην φράση «το ταξί με πήγε…» είναι πιο πιθανό να ακολουθήσει η λέξη «σπίτι».
Αυτός είναι ο τρόπος λειτουργίας του ChatGPT: τα εκατομμύριου κείμενα που του φορτώνουν κατά την εκπαίδευση, αναλύονται για το πόσο συχνά μια λέξη ακολουθεί μια άλλη (ή δύο άλλες, ή τρεις άλλες, κλπ). Με βάση αυτά τα στατιστικά, όταν του δοθεί μια φράση, επιλέγει την πιθανότερη επόμενη λέξη, και ούτε καθεξής.
Οι ερωτήσεις που του κάνουμε λειτουργούν ακριβώς σαν «αρχικές φράσεις» με βάση τις οποίες συμπληρώνει ότι θα ταίριαζε καλύτερα (δηλαδή ότι στατιστικά έχει συναντήσει περισσότερες φορές να τις ακολουθεί).
Το ChatGPT, δηλαδή, κάνει ότι υποσυνείδητα θα κάνατε και εσείς αν σας έλεγα:
«Που δεν θα γίνω στιχουργός, με πιάνει το σαράκι. Αλλά ξεδίνω γράφοντας “Γαμιέσαι …”».
Α, και κάτι ακόμα που του πρόσθεσαν: για να μην είναι τελείως προβλέψιμο, το έχουν ρυθμίσει ώστε να μην επιλέγει πάντα ως επόμενη τη λέξη με την μεγαλύτερη πιθανότητα, αλλά ενίοτε να διαλέγει και κάποια από τις υποψήφιες λέξεις με ελαφρά μικρότερη πιθανότητα.
Χάρη σε αυτή τη ρύθμιση μπορεί και απαντάει κάτι ελαφρώς διαφορετικό κάθε φορά, ακόμα και αν του κάνετε ακριβώς την ίδια ερώτηση.
Αυτό, λοιπόν, το πολύ απλό πράγμα, είναι το ChatGPT.
Η βασική ιδέα της στατιστικής παραγωγής κειμένων ανακαλύφθηκε στις αρχές του 20ου αιώνα από το Ρώσο μαθηματικό Andrey Markov, και τα σχετικά προγράμματα λέγονται markov chain generators (παραγωγοί αλληλουχιών markov – όπου οι «αλληλουχίες» είναι οι λέξεις που ακολουθούν η μια την άλλη με μεγάλη πιθανότητα). Αν έχετε πετύχει ποτέ “text generators” στο διαδίκτυο, αυτά λειτουργούν με την ίδια ακριβώς αρχή (αλλά έχουν εκπαιδευτεί με πολύ πιο περιορισμένο υλικό και πολύ συγκεκριμένου τύπου, π.χ. το ΚΚΕ Generator http://kkeisageek.freehostia.
Με βάση την παραπάνω επεξήγηση, φαντάζομαι καταλάβατε γιατί συχνά το ChatGPT βγάζει πράγματα από το «μυαλό του». Είναι επειδή «απλά» συνδυάζει στατιστικά λέξεις, δεν «σκέφτεται» τη σημασία τους ή το κατά πόσο ισχύουν.
Αν μάλιστα δεν κοίταζε και την ορθογραφία των λέξεων που του δώθηκαν, θα μπορούσε άνετα να θεωρήσει ότι η λέξη «γιαγιά» ταιριάζει με το «Puerto Rico» (επηρεασμένο από τους στίχους της αθάνατης επιτυχίας των Vaya Con Dios “Ay-ay-ya-ya-ya-ya, puerto rico“)
Και όμως αυτοί οι πολύ απλοί κανόνες, συνδυασμένοι με τόνους γραπτού υλικού, αρκούν για να διεξάγει πειστικές συζητήσεις, να δίνει σωστές απαντήσεις σε ερωτήσεις, ακόμα και να περνάει για άνθρωπος επί ώρα σε ένα ένα-προς-έναν chat.
Και όλα αυτά τα πετυχαίνει το τωρινό GPT-3 με 175 δισεκατομμύρια παραμέτρους. Ποιος ξέρει πόσο καλύτερα θα τα πάει το GTP-4 (το οποίο ανακοινώθηκε αυτή την εβδομάδα) με τα ένα ή περισσότερα τρισεκατομμύρια παραμέτρους που αναμένεται να έχει; Και, πόσο έξυπνο, άραγε, μπορεί να γίνει ένα τόσο απλό πρόγραμμα;
Αυτά, όμως, θα τα πιάσουμε στο επόμενο μας σημείωμα. Καλά να … [2]
===
[1] Μετάφραση για τους millenials: «σπρέχεν» (δηλαδή, «ομιλία» στα γερμανικά), λέγαμε κάποτε την ικανότητα κάποιου με τα λόγια, ειδικά στις γκομενοδουλειές. Για έναν καλό στο «ψηστήρι» υπήρχε η έκφραση «αυτός έχει σπρέχεν». Για να θυμούνται οι παλιοί, και να μαθαίνουν οι νεότεροι.
[2] «περνάτε» συμπληρώσατε νοερά; Φέρτε τον έλεγχο να σας βάλω άριστα! Έτσι όπως πάτε θα τη φάτε τη δουλειά του ChatGPT…