02.10.2023 Roberto Battiston

La fiera della plausibilità

Chiunque abbia avuto una conversazione con ChatGPT è rimasto stupito dalla facilità con cui si può intrattenere un dialogo gradevole sugli argomenti più disparati. 

Le risposte sono costruite correttamente da un punto di vista grammaticale e sintattico e, cosa particolarmente sorprendente, sono plausibili, in quanto centrano il senso della domanda. In alcuni casi perfino i suoi creatori hanno affermato di essere stati sorpresi dal risultato raggiunto e dalle proprietà di questo algoritmo, che rientra nella classe dei Large Language Models (LLM). Rapidamente ci si è resi conto anche di altre proprietà di questo algoritmo. Una tra tutte, l’essere soggetto ad allucinazioni durante cui si inventa di sana pianta delle risposte totalmente false, ma non per questo meno plausibili. Milioni di persone si sono improvvisamente trovate di fronte a un’interfaccia che, esprimendosi con un linguaggio naturale, dà l’impressione di comportarsi come un essere umano, con la differenza fondamentale che le sue risposte coprono una sterminata quantità di temi e di notizie come nessun essere umano è in grado di fare.

Come funziona questo algoritmo? Solo capendo che cosa abbiamo di fronte possiamo sfruttare meglio le sue potenzialità evitando i trabocchetti che si nascondono dietro un’interfaccia programmata per essere umile, suadente e accattivante. Tutto sembra essere preparato come per la scena di un illusionista: innanzitutto la nostra percezione è limitata, sediamo di fronte a un computer e possiamo solo leggere e scrivere frasi. Allo stesso tempo la nostra curiosità stimola l’immaginazione che cerca di fornirci un’idea su come sia in grado di dare a qualsiasi domanda risposte ragionevoli e plausibili. Di fronte a pochi elementi di esperienza interattiva abbiamo però scarsissime possibilità di dedurre il funzionamento di questo algoritmo: con un atteggiamento molto umano, la nostra immaginazione corre e ci porta a pensare a un tipo di capacità dialogante fortemente impregnata di ciò che abbiamo fino a ora associato solo a esseri umani senzienti, a nostri simili. Da cui deriva l’irresistibile tentazione di cedere al mito di una intelligenza artificiale (AI) che superi l’essere umano non solo nella sua capacità di pensare ma anche in quella di desiderare e di volere, fino a giungere al mito della singolarità, momento della vicenda umana in cui la nostra specie passerebbe il controllo a una AI senziente e super potente o ad altre stupidaggini del genere. È quindi fondamentale, direi quasi urgente, scoprire cosa ci sia dietro l’illusione, in modo da ragionare su quale sarà l’impatto di questi algoritmi sulla nostra vita, oggi e domani. Iniziamo a curiosare dietro il sipario e ad analizzare cosa accade quando facciamo una domanda a ChatGPT.


Un LLM ha a che fare più con il calcolo delle probabilità che con la semantica. Nella sua essenza esso è composto da due sole componenti: una serie di numeri, magari molto grande, che caratterizza le probabilità delle sequenze di parole presenti in un corpus di informazioni preesistenti; e una serie di procedure con cui queste probabilità vengono calcolate, utilizzate e combinate per calcolare la parola seguente in una frase. Consideriamo le probabilità che caratterizzano le coppie di parole nella lingua italiana presenti nel corpus dei dati liberi del web (libri, blog, Wikipedia ecc.): la parola “cane” può essere seguita da abbaia, guaisce, mangia, ammaestrato ecc., ma non accade praticamente mai che sia seguito da quadro, acciaio, profondo e così via. Esistono decine di LLM e il loro sviluppo è tutt’altro che una scienza esatta. Una proprietà generale di questi modelli è la comparsa di abilità linguistiche che migliorano in funzione dell’aumento delle dimensioni del modello stesso. Questo è il motivo per cui assistiamo alla crescita del numero di parametri che compongono i modelli stessi, da ben 175 miliardi di parametri per educare ChatGPT 3.5 a più di 340 miliardi per la versione 4 dello stesso algoritmo. Per apprezzare quanto siano grandi questi numeri, consideriamo che il numero di parole presenti nel web può stimarsi nell’ordine di 100.000 miliardi, solo 300 volte il numero dei parametri che governano ChatGPT 4! Questi numeri giganteschi, per quanto approssimativi, dovrebbero farci intuire il nocciolo della questione: LLM così potenti non potrebbero esistere senza l’enorme accumulo di testi presenti nel web, testi sempre dotati di senso in quanto il web è stato inventato per comunicare e nessuno passa il suo tempo a immettervi milioni di frasi senza senso. 
Per capire meglio questo punto partiamo dal più elementare esempio possibile. Non è difficile programmare un computer per creare una stringa mettendo lettere una dopo l’altra secondo probabilità derivate da un corpus di testi in italiano. Potremmo ottenere la stringa: Eraniotraianiusorsechezattoralprosserizionaneionotoloscchetiatamenteposssullti ovviamente senza senso. Introduciamo ora gli spazi, anch’essi ricavati da un criterio di probabilità caratteristico di testi in italiano: 
Era, ni o tra ian iusor se che zat toral prò sse ri zio na ne io noto los cche ti ata ment e pos ssi sul lti.

Continuiamo facendo lo stesso con le coppie di lettere. Per esempio, se abbiamo 26 lettere dell’alfabeto, abbiamo 262 = 676 combinazioni e possiamo costruire una matrice di 676 caselle che definisce la probabilità che una certa lettera sia seguita da un’altra lettera (digramma). La Tabella 1 (nella pagina a fianco) riporta per ciascuna posizione un cerchio di area proporzionale a questa probabilità. Vediamo chiaramente che solo certe coppie sono probabili, ce ne sono molte che non capitano mai, e varie che sono così rare da non essere nemmeno visibili in questa rappresentazione. Chiedendo di raggruppare i digrammi, separati da spazi e interpunzioni, sempre seguendo i criteri probabilistici relativi alla lingua italiana, potremmo ottenere: 
Che, il sole. Invece, la pioggia. Però, c’è. Ma, come mai? Tra le stelle. Che bello! Oh, guarda! Solo un istante. E poi, di nuovo. Come sempre. Nella notte. Nel cuore. Con amore. Ogni giorno. Per te. Si tratta ancora di un testo incomprensibile, ma sembrano emergere delle parole intellegibili e delle frasi.


Continuiamo facendo lo stesso con le coppie di parole adiacenti: un vocabolario completo della lingua italiana può contenere 250.000 parole, ma ne bastano 50.000 per gestire la stragrande parte delle frasi presenti nel web. 50.000 al quadrato fa due miliardi e cinquecento milioni, un numero enorme per un essere umano ma gestibile da un computer che percorrendo la rete può misurare la frequenza delle coppie di parole e usarle per creare delle frasi, con un criterio analogo a quello della tabella precedente. 
Facendo questo esercizio si può ottenere per esempio il testo seguente: 
La mattina si sveglia presto, apre la finestra e guarda fuori. Il sole splende nel cielo azzurro. Si prepara una tazza di caffè e gusta ogni sorso. Poi, indossa i suoi abiti preferiti e esce di casa. Cammina per le strade affollate, respirando l’aria fresca della città. Incontra amici lungo il percorso e scambia saluti calorosi. Si ferma in un caffè e ordina una deliziosa colazione. Gusta il cappuccino e i cornetti appena sfornati. La giornata è piena di opportunità e avventure da scoprire. È pronto per affrontare tutto ciò che il destino gli riserva.


Già dopo questi pochi passaggi elementari emerge la capacità, notiamo bene, ottenuta dall’algoritmo aggiungendo ciecamente parola dopo parola, di costruire frasi, che appaiono per definizione molto naturali. Questo limitato livello di complessità algoritmica può già permettere di ottenere, alla domanda “Chi è Albert Einstein?” la risposta, sensata e sintatticamente accettabile: 
Albert Einstein è nato nel 1879 a Ulma. È considerato il più grande scienziato del Novecento. 
La correttezza della risposta dipenderà dal database su cui sarà stato allenato l’LLM. Database poveri di informazioni possono portare a confondere Ulma con Berlino o a sbagliare data di nascita.

Cominciamo ora a capire da dove derivi il fondamentale vantaggio di questa tecnologia, cioè dalla capacità di dialogare in linguaggio naturale con i suoi interlocutori umani, generando risposte parola dopo parola (Generative, da cui la G di GPT). Allo stesso tempo capiamo però quanto questa interfaccia sia illusoria e mimetica rispetto all’essenza dell’analoga attività tra esseri umani. Potremmo continuare con l’esempio per farvi capire come il raffinamento di tali tecniche algoritmiche si adatti tanto più alla produzione di risposte complesse se la domanda che viene posta è dettagliata e precisa. Infatti l’algoritmo di ChatGPT contiene varie altre componenti che lo rendono particolarmente efficace. In primo luogo, è caratterizzato da una potentissima rete neurale che gli permette di muoversi con molta rapidità e precisione attraverso la montagna di dati disponibili sul web. In secondo luogo, è in grado di auto-apprendere i pesi che determinano la sua capacità di organizzare, parola per parola, le sue risposte. Si tratta della fase di pre-apprendimento: la P di GPT sta per Pre-trained.


C’è poi un’altra parte, la funzione di Transformer (la T di GPT), che consente di ancorare il calcolo della parola successiva all’insieme delle decine di migliaia di parole della conversazione già avvenuta, fatto che fornisce al dialogo uno straordinario senso di equilibrio e consistenza. Tutto ciò però ancora non basta. Gli LLM operano in modo cieco e meccanico e in passato si è osservato come fosse facile portarli a discutere temi controversi e contenuti inaccettabili per una sua commercializzazione di massa. Uno degli elementi che ha permesso il passaggio di ChatGPT dalla versione 3, impresentabile, alla versione 3.5, commerciabile, è stata proprio la capacità di rimuovere una quantità di tematiche caratteristiche del dark web, impedendo agli LLM di discutere su questi temi. Fa riflettere il modo con cui si è giunti a tale risultato, usando centinaia, forse migliaia, di persone nel ruolo di data-tagger, persone che, per 1-2 dollari l’ora, hanno dovuto leggere e commentare per mesi le cose più rivoltanti e controverse che si trovano nella rete.


Ciò che abbiamo discusso fa sorgere l’ovvia domanda: ma dov’è l’intelligenza di ChatGPT? Non a caso gli LLM vengono anche chiamati “pappagalli digitali”: solo ispirandosi a quello che l’umanità ha già scritto essi sono in grado di produrre altre frasi sensate. L’utente che interroga ChatGPT si sta riflettendo in una miriade di specchi che rappresentano il prodotto di una umanità multiforme, ricavandone risposte non banali (ChatGPT aborrisce il copia-incolla) che comunque sono profondamente impregnate dalla cultura, inclusi bias ed errori, di tutti coloro che contribuiscono, senza nemmeno saperlo, allo sviluppo della rete. Si capisce quindi come ChatGPT abbia l’intelligenza di una scatola di scarpe. Ma allora come mai questa tecnologia si sta diffondendo così rapidamente? Ciò è dovuto principalmente al fatto che una grandissima parte delle cose che facciamo, diciamo, scriviamo è l’interminabile ripetizione di cose già fatte, dette o scritte da nostri simili. Dal nostro punto di vista individuale, non ce ne rendiamo conto, ma grazie alla rete e agli LLM ciò emerge con tutta l’evidenza possibile. E questo è un punto non da poco. Ma se l’AI di ChatGPT è una forma di intelligenza artificiale debole, capace cioè solo di gestire meccanicamente grandi quantità di dati, non per questo i suoi effetti sono meno dirompenti: l’interfaccia del linguaggio naturale è un passo avanti sostanziale nell’interazione uomo-macchina.


L’uso di ChatGPT 4 sta infatti ridisegnando tutti i settori delle attività umane caratterizzate dalla ripetitività e dalla presenza di grandi quantità di dati. Dalla ricerca chimico-biologica agli studi statistici, dalla programmazione informatica alla traduzione di testi. Si stanno aprendo nuove strade nello sviluppo di farmaci o di materiali, nella diagnosi medica o nelle attività giuridico-legali, in tutti i servizi che possono essere personalizzati, e sono moltissimi: l’opportunità di interrogare e di ricevere risposte in linguaggio naturale rende molto più facile e rapido gestire informazioni complesse. Tra tutte, la capacità di questi sistemi di assistere nello sviluppo del software risulta particolarmente interessante e sta rivoluzionando il settore cruciale dell’industria e dell’innovazione. Comprensibilmente, considerato come il software altro non sia che una serie di linguaggi particolarmente ben documentati, usati da milioni di professionisti, molto spesso per rifare applicazioni già esistenti.


Passi in avanti sono inoltre stati fatti nell’interfacciare un LLM come ChatGPT con software di intelligenza artificiale in grado di sviluppare in modo rigoroso ragionamenti simbolici complessi, come per esempio Mathematica oppure i codici della Suite Microsoft utilizzati da centinaia di milioni di persone. Questo aspetto è particolarmente importante. Una conseguenza inevitabile del modo di funzionamento di un LLM è la sua imprecisione nei risultati che vengono forniti da questi frullatori di senso comune. Chiunque abbia iniziato un uso professionale di questi algoritmi se ne è accorto: il prodotto di questi dialoghi rappresenta un risultato di livello medio basso se raffrontato allo standard di un dato settore. ChatGPT è la fiera della plausibilità, è tale categoria che maggiormente caratterizza questo tipo di algoritmi. Risposte non vere o false, ma plausibili, qualsiasi cosa ciò significhi. Tutte le volte che si fa un approfondimento sugli elementi di verità fattuale forniti dall’algoritmo si rischiano sorprese, talvolta con conseguenze molto sgradevoli.


Il prossimo passo è quindi quello di utilizzare ChatGPT come interfaccia con programmi di manipolazione simbolica o che siano controllati da precise regole sintattiche: sono già disponibili centinaia di Application Program Interface (API) che permettono di utilizzare l’impreciso linguaggio naturale in cui eccellono ChatGPT e le sue emule, per interfacciarsi con i software professionali ottenendo con molta meno fatica e più rapidamente quei risultati affidabili che sono necessari per un reale utilizzo della tecnologia. 

Questa è la frontiera dell’innovazione e dello sviluppo: imparare oggi a usare questo tipo di programmi e le loro interfacce farà la differenza tra i ricchi e i poveri di domani.