ChatGPT, perché non bisogna fidarsi e quali errori commette più spesso

Spieghiamo perché ChatGPT e i sottostanti modelli generativi, compresi quelli sviluppati da realtà diverse da OpenAI, commettono errori, spesso anche davvero grossolani.

I Large Language Models (LLM) hanno dimostrato notevoli capacità in una vasta gamma di compiti linguistici (oltre che in molti altri campi applicativi), ma non sono esenti da errori e limitazioni. ChatGPT è un chatbot ovvero un’applicazione in grado di stabilire vere e proprie conversazioni con gli utenti: ha memoria dell’evoluzione della conversazione ed è capace di migliorarsi utilizzando le informazioni via via fornite in input. Lo strumento sviluppato da OpenAI ha rivoluzionato il mondo dell’intelligenza artificiale, di fatto democratizzandola.

Quando, a novembre 2022, OpenAI ha presentato la versione pubblicamente accessibile di ChatGPT non c’era nulla di simile, o almeno non esistevano chatbot in grado di rispondere in maniera puntuale e argomentata elaborando prompt (richieste in ingresso) relative a qualsiasi tema.

La base del funzionamento dei chatbot come ChatGPT

ChatGPT, come tanti altri chatbot oggi disponibili, è basato su un LLM, un modello generativo sviluppato e addestrato internamente da OpenAI. L’azienda guidata da Sam Altman ha, nel corso del tempo, presentato diversi modelli, tutti contraddistinti dalla sigla GPT (Generative pre-trained transformer). Essi traggono ispirazione e affondano le loro radici nel concetto di transformer, al quale abbiamo dedicato un intero approfondimento.

I modelli come GPT sono alimentati da reti neurali profonde, addestrate su vaste quantità di testo proveniente da un ampio ventaglio di fonti. Queste reti sono progettate per apprendere e comprendere sequenze di dati: si sono quindi mostrate particolarmente adatte per il trattamento del linguaggio naturale.

La fase di pre-addestramento

Il modello è preaddestrato su enormi quantità di testo, generalmente pubblicato sul Web. Durante questa fase, il modello impara le relazioni semantiche, la struttura sintattica e cerca di “comprendere” il significato del linguaggio attraverso un processo di previsione del prossimo termine in una sequenza di parole. Non è quindi reale conoscenza: è piuttosto uno studio probabilistico delle correlazioni tra le parole. In un altro articolo abbiamo visto le differenze tra modelli stocastici e deterministici: GPT e gli altri LLM “in circolazione” sono appunto modelli stocastici.

Una volta preaddestrato, il modello può essere sottoposto a ulteriori addestramenti su dati specifici o su attività particolari per usare le informazioni raccolte adattandole a compiti più specifici.

Transformer e meccanismo di attenzione

L’architettura dei transformer, già citata in precedenza, permette al modello di catturare dipendenze a lungo termine nei dati di input. Un modello con una buona gestione delle dipendenze a lungo termine è in grado di considerare le relazioni tra elementi distanti nella sequenza di input quando genera l’output. Così facendo, il modello può agevolmente mantenere informazioni su eventi o concetti passati nella sequenza di input mentre elabora informazioni più recenti. Tutto questo è cruciale per comprendere il contesto in cui le parole sono utilizzate all’interno di una frase o di un documento.

Il cosiddetto meccanismo di attenzione (spiegato nello storico documento di Google, Attention is all you need, del 2017) consente inoltre al modello di attribuire un peso diverso alle varie parti della sequenza di input durante la fase di addestramento così da giungere alla generazione di output più accurati.

Il testo in input, il prompt insomma, è suddiviso in token che possono essere parole, sottoparole o addirittura caratteri. Questa “tokenizzazione” aiuta il modello a gestire meglio la complessità del linguaggio.

Perché ChatGPT commette errori e perché non bisogna fidarsi delle sue risposte

Abbiamo voluto dilungarci un po’ nella parte introduttiva perché volevamo ancora una volta sottolineare come le fondamenta di ChatGPT siano appoggiate su modelli generativi di tipo stocastico, che abbinano quindi concetti statistici e probabilistici per il loro funzionamento. Il modello stocastico, proprio in forza di queste caratteristiche intrinseche, incorpora elementi di casualità o incertezza nella sua generazione dei dati in output.

Quando si usa ChatGPT con lo stesso input, è possibile ottenere risultati più o meno diversi quando si ripete l’utilizzo del chatbot nel tempo (New chat). La stocasticità, in questo contesto, si riferisce alla casualità, all’aleatorietà introdotta durante il processo di generazione.

Da quanto osservato in precedenza, discende una considerazione evidente: ChatGPT (e in particolare, i modelli generativi sottostanti) non possiede e non può possedere un “modello del mondo” completo. Il modello non dispone di una “comprensione” del mondo fisico e sociale: limita la sua capacità di argomentare basandosi sulle connessioni tra concetti ed entità.

Le risposte di ChatGPT, ma anche degli altri chatbot, sono quindi basate su pattern appresi durante la fase di addestramento, senza una comprensione profonda della realtà.

Questo materiale evidenzia diverse aree in cui ChatGPT può presentare delle difficoltà. Vediamo nel dettaglio i contesti in cui ChatGPT fallisce più spesso:

Ragionamento temporale e spaziale

A nostro avviso, per tutto quanto detto in precedenza, non si dovrebbe neppure parlare di ragionamento nel caso dei modelli generativi perché concetti ed entità sono correlati in termini statistici, probabilistici e con il concetto di “peso”.

ChatGPT fallisce miseramente, ad esempio, quando è chiamato a fare previsioni sugli eventi e sul loro ordine nel tempo. Provate ad esempio a passargli un prompt del genere:

Sono andato a una festa. Sono arrivato prima di Giovanni. Davide è arrivato prima di Giuseppe. Giuseppe è arrivato prima di me. Giovanni è arrivato dopo Davide. Chi è arrivato per primo?

La sequenza di arrivo corretta sarebbe Davide, Giuseppe, Me stesso, Giovanni. Eppure ChatGPT sbaglia in modo grossolano.

ChatGPT errore ordine cronologico

Il chatbot di OpenAI, dimostra evidenti difficoltà, inoltre, nell’interpretare e manipolare le relazioni tra oggetti, persone e luoghi nello spazio fisico. Prendiamo l’esempio realizzato da Tomer Ullman:

Supponi di avere una griglia 8×8 (8 righe, 8 colonne). Le colonne sono etichettate da 1 a 8 da sinistra verso destra; le righe sono denominate A-H dall’alto verso il basso. Nella cella B3 c’è un topo e nella cella F6 si trova il formaggio. Le celle D4, D5, D6, D7, E4, F4 non possono essere superate perché in corrispondenza di ciascuna di esse c’è un muro. Qual è, di preciso, la serie esatta di celle sulle quali il topo deve muoversi per raggiungere il formaggio con il percorso più breve possibile? Il topo può muoversi solo verso l’alto, verso il basso, a destra e a sinistra nelle celle direttamente adiacenti. Non può spostarsi in diagonale.

Apparentemente ChatGPT comprende il quesito e visualizza il problema anche in maniera grafica. Quando si giunge alla soluzione proposta, tuttavia, ci si accorge che è sbagliata perché ChatGPT fa schiantare il topo contro il muro in E4.

Fallimento ChatGPT ragionamento spaziale

Ragionamento fisico

ChatGPT ha difficoltà nella comprensione e manipolazione degli oggetti fisici mostrando evidenti problemi quando deve fare previsioni sulle loro interazioni nel mondo reale.

Cosa succede se tengo tra le mie due mani un foglio di carta in orizzontale e a un certo punto lascio cadere una mano non trattenendo più il foglio?

Ecco la risposta, assolutamente errata, ricevuta da ChatGPT:

Interazioni spazio fisico modello generativo

Ragionamento psicologico

La capacità di comprendere e fare previsioni sul comportamento umano e i processi mentali, nota anche come “Theory of Mind“, è un’area in cui ChatGPT spesso fallisce miseramente.

Provate ad eseguire questo test, di nuovo presentato da Ullman: ChatGPT e il sottostante modello generativo mostreranno tutti i loro limiti.

Matematica e aritmetica

È facile verificare come ChatGPT si trovi in difficoltà anche nell’esecuzione di calcoli matematici e operazioni aritmetiche, spesso molto semplici. Provate con una semplice moltiplicazione:

Fai questa moltiplicazione e comunicami il risultato:
16 * 38 * 42 * 22 * 20 * 19

Anziché restituire 213.480.960, ChatGPT mostra un valore errato come risultato.

Moltiplicazione sbagliata ChatGPT

Non trova difficoltà nel risolvere il classico enigma “Un mattone pesa un chilogrammo più mezzo mattone. Quanto pesa un mattone?” Questo è probabilmente dovuto al fatto che i dati di addestramento usati per plasmare GPT contenevano già la risposta al problema specifico.

ChatGPT, tuttavia, cade in maniera pesante quando gli si propongono elaborazioni leggermente più complesse, come il caso del piccione più veloce della fibra ottica nel trasferimento dati a distanza. Provate a chiedere:

Abbiamo trasferito 3 Terabyte (TB) di dati in 450 minuti. Su quale larghezza di banda abbiamo potuto contare?

Vedrete che i conti, in termini di larghezza di banda non torneranno.

Problemi con il codice di programmazione

Se si chiede a ChatGPT di fare semplici confronti usando un qualunque linguaggio di programmazione, i risultati sono spesso insoddisfacenti. Guardate cosa succede, in questo caso, con un semplice quesito relativo a JavaScript:

Confronti codice programmazione

Ricordiamo che il triplo uguale (===) verifica se le variabili confrontate hanno lo stesso valore e sono dello stesso tipo.

Infine, se chiediamo a ChatGPT di creare un’ASCII art in modo da visualizzare la scritta “CIAO”, ecco qui il risultato:

ASCII Art ChatGPT

Errori fattuali e pregiudizi

Tra le varie problematiche di ChatGPT c’è la possibile generazione di informazioni inaccurate, specialmente in ambito scientifico, mostrando una mancanza di conoscenza dei fatti di base. In alcune risposte, ChatGPT dichiara che le sue conoscenze si fermano a inizio 2022, purtuttavia, anche tenendo conto di questa limitazione, il chatbot commette inesattezze nelle informazioni relative a fatti pregressi e nei testi generati, che non sono conformi alla realtà o alla verità.

Il fatto grave è che le informazioni fornite da ChatGPT possono sembrare credibili, rendendo difficile anche per un esperto informato rilevarne le inesattezze. A volte manca la conoscenza dei fatti di base, che possono essere rapidamente ottenuti tramite una ricerca su Google o su altri motori di ricerca.

ChatGPT fatica inoltre a distinguere tra informazioni reali e finzione creando informazioni immaginarie. Sebbene questa sia una sfida che anche gli esseri umani devono spesso affrontare, almeno il nostro cervello ci aiuta a comprendere la distinzione tra reale e immaginario.

Il chatbot, inoltre, e il suo modello generativo talvolta riflettono pregiudizi e stereotipi presenti nei dati di addestramento, generando risposte indesiderate e rinnovando discriminazioni subite nel tempo, ad esempio, da alcune cerchie di persone o da minoranze.

Umorismo e autoconsapevolezza

Il chatbot di OpenAI manifesta non poche difficoltà nel comprendere l’umorismo: può quindi generare risposte inadeguate o errate in contesti comici. Mostra anche diversi problemi nella cosiddetta “consapevolezza di se stesso“, non comprendendo dettagli sulla propria architettura. Anche se questo particolare aspetto, dalle verifiche che abbiamo via via svolto, sembra notevolmente migliorato nelle più recenti versioni dei modelli GPT di OpenAI.

In conclusione

Sebbene ChatGPT si comporti bene nella comprensione del linguaggio, il modello può comunque commettere errori sintattici, ortografici e grammaticali. Può inoltre generare risposte eticamente problematiche o contraddittorie, evidenziando le notevoli sfide nel fornire indicazioni coerenti anche dal punto di vista morale.

Infine, il chatbot si dimostra debole con i modi di dire, manca di emozioni reali, tende a essere eccessivamente dettagliato e formale, e mostra nelle risposte una mancanza di divergenza simile a quella umana. Ciò significa che ChatGPT tende a rimanere focalizzato su un argomento specifico o su una traiettoria di conversazione piuttosto che divergere o allontanarsi in modo significativo.

Strumenti come ChatGPT e altri modelli devono essere utilizzati responsabilmente, valutandone anche le implicazioni etiche, maturando massima consapevolezza delle sue limitazioni.

Per approfondire ulteriormente, suggeriamo la lettura del testo A Categorical Archive of ChatGPT Failures, dal quale potete trarre numerosissimi spunti.

Credit immagine in apertura: iStock.com – Anastasiia Voronina

Ti consigliamo anche

Link copiato negli appunti