Quando l’assistente IA esegue bene il compito sbagliato
In breve
Lavoravo con ChatGPT ad un’attività impegnativa dal punto di vista tecnico e “cognitivo” ma ciò che mi restituiva l’assistente IA non mi soddisfaceva. Mi sono domandato – e ho domandato all’IA – se queste macchine prodigiose avessero il limite di non “pensare” adeguatamente, di non “comprendere” la mia richiesta. La risposta è stata che più che avere difficoltà a comprendere, l’IA mostra una tendenza: rispondere sulla base dell’operazione più familiare, anche quando il compito ne chiede un’altra, manifestare una sorta di “inerzia” nel pensiero.
Sono convinto della straordinaria potenza delle intelligenze artificiali generative. Più le metto alla prova su compiti complessi, più riescono a stupirmi: per ciò che riescono a fare e, qualche volta, anche per il modo inatteso in cui falliscono.
Sono anche convinto che, con tutte le cautele necessarie nell’uso delle parole, si possa dire che le IA «pensano». Non penso però che a questo termine debba essere attribuito lo stesso significato quando parliamo di un essere umano e quando parliamo di una macchina.
Non è soltanto una questione di risultati. Due sistemi possono produrre risposte che ci appaiono ugualmente intelligenti arrivandoci attraverso processi profondamente differenti. Il pensiero umano e quello delle attuali IA linguistiche non devono quindi essere considerati equivalenti soltanto perché, osservandone i prodotti, talvolta è difficile distinguerli.
Gli esseri umani, naturalmente, sono tutt’altro che immuni da rigidità, automatismi, bias e perseverazione negli errori. Ma le IA sono costruite attraverso processi radicalmente differenti dai nostri e hanno acquisito, attraverso l’addestramento, proprie regolarità nel trattamento dei problemi. Per questo non possiamo dare per scontato che, posti davanti allo stesso compito, noi e loro lo rappresentiamo nello stesso modo, individuiamo come rilevanti gli stessi elementi e percorriamo la stessa strada per arrivare a una risposta.
La loro straordinaria capacità linguistica e combinatoria può inoltre rendere questa differenza difficile da vedere: un risultato può apparire pertinente, articolato e persino creativo senza che il processo che lo ha prodotto corrisponda a quello che noi immaginiamo osservandolo.
Recentemente mi sono imbattuto quasi per caso in un episodio che mi ha permesso di osservare da vicino proprio questo problema. L’esperienza mi ha portato inizialmente a formulare una domanda ancora più radicale: che cosa succede se le IA, pur mostrando prestazioni che interpretiamo come intelligenti, non esercitano quel processo cognitivo che, riferito agli esseri umani, chiamiamo «comprensione» nel suo significato più profondo e più ampio?
Non avevo una risposta. Avevo però un caso concreto sul quale provare a ragionare.
Costruire un Cognitive Flexibility Hypertext con ChatGPT
Stavo lavorando con ChatGPT alla costruzione di un Cognitive Flexibility Hypertext (CFH) sull’intelligenza artificiale e la scuola.
Un CFH è un ambiente ipertestuale derivato dalla Cognitive Flexibility Theory, sviluppata da Rand Spiro e collaboratori per affrontare l’apprendimento avanzato in domini complessi e debolmente strutturati (ill-structured). Nel nostro progetto la domanda attorno alla quale organizzare il lavoro era:
Che cosa dovrebbe fare la scuola di fronte all’intelligenza artificiale?
Non volevamo dare una risposta.
Volevamo costruire un ambiente nel quale il lettore potesse incontrare situazioni reali, osservarle da differenti punti di vista, attraversarle secondo diverse prospettive e, progressivamente, costruirsi una propria risposta.
Abbiamo quindi cercato e documentato numerosi Casi: situazioni realmente accadute nelle quali l’intelligenza artificiale entrava in relazione con la scuola, la valutazione, il lavoro degli studenti e degli insegnanti, la responsabilità, il controllo, la privacy e numerose altre questioni.
In questa fase ChatGPT funzionava molto bene. I criteri erano relativamente espliciti: situazione reale, documentazione affidabile, pluralità di punti di vista, pertinenza rispetto al problema.
La difficoltà è comparsa dopo.
Quando cercare i Temi non significa cercare «di che cosa si parla»
Dai Casi dovevamo individuare i Temi e successivamente le Tematiche Trasversali.
Avevo fornito a ChatGPT spiegazioni concettuali dell’operazione e anche esempi di come fosse stata realizzata in precedenti CFH.
Eppure qualcosa continuava a non funzionare.
Di fronte a passaggi nei quali comparivano detector, valutazione, privacy, delega, responsabilità, sorveglianza, ChatGPT produceva categorie come «limiti dei detector», «privacy», «supervisione umana», «autorialità».
Erano categorie plausibili. Spesso erano perfettamente sostenute dai testi.
Il problema era un altro: ChatGPT stava facendo bene un’operazione diversa da quella che gli avevo chiesto.
Sembrava rispondere alla domanda:
Di che cosa parla questo passaggio?
La domanda che avrebbe dovuto guidare l’analisi era invece:
Che cosa sta succedendo qui che diventa significativo rispetto al problema: che cosa dovrebbe fare la scuola di fronte all’IA?
La differenza può sembrare sottile. Non lo è affatto.
Nel primo caso l’operazione tende a essere:
testo → contenuti semanticamente rilevanti → categoria
Nel secondo:
situazione → ciò che concretamente accade → aspetto dell’accaduto significativo rispetto al problema → astrazione → Tema → confronto fra Casi → Tematica Trasversale
Una Tematica Trasversale, abbiamo progressivamente chiarito, non è semplicemente un argomento che compare in più Casi. È un’astrazione attraverso la quale possiamo riconoscere, in situazioni concretamente differenti, manifestazioni diverse di qualcosa che diventa significativo rispetto al problema che stiamo esplorando.
ChatGPT continuava invece ad essere attratto dalla prima operazione.
Non erano risposte sbagliate
Questo è probabilmente l’aspetto che mi ha maggiormente interessato.
Se ChatGPT avesse prodotto sciocchezze, il problema sarebbe stato immediatamente evidente. Non lo faceva.
Produceva risposte pertinenti, concettualmente sensate, linguisticamente molto ben costruite e spesso accompagnate da ottime giustificazioni.
L’errore non era necessariamente dentro la risposta. Era nel rapporto tra la risposta e l’operazione che avrebbe dovuto produrla.
ChatGPT dava buone risposte alla domanda sbagliata.
Ed è proprio la sua straordinaria competenza linguistica a rendere più difficile accorgersene. La fluidità del linguaggio, la pertinenza dei concetti utilizzati e la capacità di argomentare a sostegno della propria proposta producono facilmente l’impressione che il modello abbia compreso il problema.
Ma una buona superficie linguistica non garantisce che sia stata costruita una rappresentazione adeguata del compito.
«Non hai ancora capito che cosa ti sto chiedendo»
A quel punto ho cominciato a correggere ChatGPT. Una volta. Poi un’altra. Poi un’altra ancora.
Ed è accaduto qualcosa di curioso. ChatGPT incorporava le mie correzioni, ma spesso sembrava incorporarle all’interno del modo precedente di affrontare il problema.
Se «privacy» era troppo generico, poteva diventare qualcosa come «tensione tra utilizzazione dei dati degli studenti e tutela della loro privacy».
La formulazione era migliore. Più dinamica. Più sofisticata. Ma il problema poteva rimanere identico.
Avevamo migliorato il prodotto senza essere sicuri di aver modificato l’operazione che lo generava. Anzi, l’operazione non era stata proprio modificata.
È stata necessaria una lunga sequenza di tentativi, errori, correzioni e nuove concettualizzazioni per arrivare progressivamente a esplicitare la procedura:
testo → ciò che concretamente accade → aspetto significativo rispetto al problema → astrazione/categoria → Tema → confronto fra Casi → Tematica Trasversale
Retrospettivamente mi sono accorto che non stavamo semplicemente raffinando delle formulazioni. Stavamo cercando di modificare la rappresentazione operativa del compito utilizzata da ChatGPT.
Eppure glielo avevo spiegato
Qui il problema diventa ancora più interessante.
Una spiegazione semplice avrebbe potuto essere: avevo scritto male il prompt. Ma non era esattamente così.
ChatGPT aveva ricevuto concettualizzazioni ed esemplificazioni. Avevo spiegato che cosa dovesse fare e avevo fornito esempi di come quell’operazione fosse stata compiuta in precedenza.
Il modello era inoltre perfettamente capace di parlare della Cognitive Flexibility Theory, dei Casi, dei Temi e delle Tematiche Trasversali. Poteva spiegare la logica dell’operazione che gli stavo chiedendo.
Eppure, nel momento in cui doveva compierla autonomamente, tendeva a fare qualcos’altro.
È emersa così una distinzione che considero importante: avere disponibile linguisticamente una regola non significa necessariamente utilizzarla come principio che governa l’operazione.
In termini umani diremmo: sa spiegare quello che dovrebbe fare, ha visto come si fa, ma quando deve farlo continua a procedere secondo un altro schema.
Non sto sostenendo che nel modello avvenga qualcosa di psicologicamente equivalente. Sarebbe un’antropomorfizzazione indebita. Sto descrivendo il comportamento osservato.
Credevo che questa volta avesse capito
A un certo punto mi è sembrato che il problema fosse finalmente risolto.
Avevamo esplicitato ulteriormente il procedimento. Avevo chiesto a ChatGPT di non partire dalle Tematiche Trasversali già ipotizzate e di non cercare semplicemente argomenti ricorrenti nei testi. Prima di formulare un Tema avrebbe dovuto ricostruire che cosa stesse concretamente accadendo nel Caso e chiedersi perché quell’accadimento fosse significativo rispetto al problema del nostro CFH.
La sequenza era diventata:
testo → che cosa accade → perché è significativo rispetto al problema del CFH → Tema
Ho quindi chiesto a ChatGPT di analizzare nuovamente uno dei Casi. Il risultato sembrava eccellente.
Questa volta l’analisi non si limitava a etichette come «privacy», «bias» o «supervisione umana». Per ogni passaggio ChatGPT identificava il testo di partenza, descriveva che cosa stava accadendo, spiegava perché fosse significativo rispetto al problema del CFH e soltanto alla fine formulava il Tema.
Da un Caso riguardante l’utilizzo di un sistema algoritmico da parte dell’amministrazione fiscale olandese ricavò undici Temi, tra i quali i criteri utilizzati dai sistemi algoritmici per valutare le persone, l’influenza della selezione algoritmica sulle decisioni successive, la possibilità effettiva di controllo umano, la comprensibilità delle decisioni, la possibilità di contestarle e correggerle, le discriminazioni prodotte attraverso sistemi algoritmici e le garanzie necessarie alla loro introduzione.
L’analisi era documentata, coerente e metodologicamente molto più sofisticata delle precedenti. Eppure qualcosa continuava a non convincermi.
Ho allora fatto quella che potremmo chiamare una prova del nove. Ho chiesto a ChatGPT di immaginare che quelli fossero i Temi emersi non da un solo Caso, ma dall’intero corpus, e di provare a ricavarne le possibili Tematiche Trasversali.
Ne ha prodotte cinque. Erano ottime domande. Riguardavano i criteri con cui un sistema può valutare le persone, l’influenza dell’IA sulle decisioni umane e istituzionali, il significato di un effettivo controllo umano, la possibilità di comprendere e contestare una decisione e le garanzie necessarie quando un sistema produce conseguenze sulle persone.
Ho fatto una seconda prova: gli ho chiesto se quelle questioni fossero significative rispetto ai problemi dell’IA e della scuola che avevamo già affrontato in numerosi articoli.
Anche questa volta ChatGPT ha costruito una risposta molto convincente. Alcune questioni risultavano già presenti nel nostro lavoro; altre sembravano addirittura far emergere aspetti nuovi e interessanti.
Avrei potuto concludere che finalmente avevamo trovato il metodo giusto. Non ne ero convinto.
Ho allora analizzato manualmente lo stesso Caso.
La mia lettura era molto diversa. Non vedevo undici Temi. Ne vedevo essenzialmente uno: l’affidamento di un giudizio a un sistema meccanico, anche quando i criteri sulla base dei quali quel giudizio viene formulato sono stati definiti da persone.
Quali criteri utilizzare, chi li determina, quali conseguenze produce il giudizio, quanto sia possibile controllarlo o contestarlo potevano essere aspetti, sottotemi o implicazioni di quella questione. Non necessariamente altrettanti Temi autonomi.
Naturalmente due persone possono analizzare lo stesso materiale e arrivare legittimamente a risultati differenti. L’analisi qualitativa contiene inevitabilmente interpretazione. Il fatto che io individuassi un Tema e ChatGPT undici non dimostrava quindi, di per sé, che ChatGPT avesse sbagliato.
La differenza che mi interessava era un’altra. Avevamo nuovamente rappresentato il compito in due modi diversi.
ChatGPT sembrava ancora chiedersi, anche dopo tutte le correzioni:
quali questioni significative posso ricavare dai diversi elementi presenti in questo Caso e collegare al problema del CFH?
Io stavo cercando invece di capire:
qual è il fenomeno o quali sono i fenomeni significativi che questo Caso rende visibile rispetto al problema che stiamo esplorando?
La differenza è sottile soltanto linguisticamente.
La prima rappresentazione favorisce la scomposizione: ogni elemento significativo del testo può diventare una categoria concettuale autonoma.
La seconda richiede prima di costruire una rappresentazione complessiva di ciò che sta accadendo e soltanto successivamente di distinguere il fenomeno dai suoi aspetti, dalle sue condizioni e dalle sue conseguenze.
La cosa che trovo più interessante è che il nuovo prompt aveva esplicitamente introdotto proprio il passaggio attraverso «che cosa accade». ChatGPT lo aveva eseguito. Aveva compilato correttamente quella parte dell’analisi.
Ma aver inserito formalmente il nuovo passaggio nella procedura non garantiva che fosse cambiata la rappresentazione complessiva del compito. Il vecchio modo di affrontare il problema poteva essere sopravvissuto dentro una procedura linguisticamente nuova.
E c’è un particolare ancora più istruttivo. Quando gli ho sottoposto le due prove del nove, ChatGPT non ha riconosciuto una possibile anomalia: le Tematiche ricavate riproducevano la scomposizione in undici aspetti con cui erano stati estratti i Temi. Al contrario, è riuscito a mostrare molto bene perché fossero sensate, pertinenti e persino capaci di far emergere questioni nuove rispetto al nostro precedente lavoro sull’IA e la scuola.
In altre parole, non soltanto aveva prodotto un risultato plausibile: era anche capace di costruire un’ottima giustificazione della sua plausibilità.
Questo episodio ha reso per me ancora più problematica l’idea di identificare la comprensione con la capacità di spiegare ciò che si sta facendo.
ChatGPT conosceva ormai la regola. Sapeva descriverla. Aveva ricevuto esempi. Aveva incorporato nel nuovo procedimento le correzioni ricevute. Era capace di mostrare passo per passo come la stava applicando.
E tuttavia rimaneva aperta la possibilità che stesse ancora eseguendo molto bene un compito diverso da quello che io pensavo di avergli affidato.
Perché proprio quell’errore?
Ho allora posto direttamente a ChatGPT questa domanda.
Prima di riferire la risposta, una cautela che la stessa esperienza impone. La spiegazione che un modello dà del proprio errore non è un’osservazione dei propri meccanismi interni, ai quali non ha accesso: è a sua volta una ricostruzione plausibile, prodotta con la stessa fluidità con cui era stato prodotto l’errore. Va quindi presa come un’ipotesi da discutere, non come una testimonianza.
La prima ipotesi emersa è stata relativamente semplice. Il compito richiesto dal CFH assomigliava superficialmente a un compito estremamente familiare per un modello linguistico: leggere testi, riconoscere i contenuti principali, trovare somiglianze, classificare, generalizzare e attribuire etichette.
«Tema», «tematica», «trasversale», «analizzare», «individuare» sono tutti segnali perfettamente compatibili con questa operazione.
ChatGPT sembrava quindi ricondurre il nuovo compito a qualcosa che sapeva già fare molto bene:
testi → contenuti → ricorrenze → categorie
Ma il CFH richiedeva un’altra strada. Non doveva cercare principalmente ciò che i Casi avevano semanticamente in comune. Doveva riconoscere che cosa accadeva in ciascuna situazione, interrogare quell’accadimento rispetto al problema del CFH e successivamente astrarre strutture capaci di manifestarsi in forme concretamente differenti.
Ho cominciato a pensare a una sorta di inerzia dello schema.
Non utilizzo «schema» per sostenere che dentro un LLM esistano strutture cognitive equivalenti agli schemi della psicologia umana. Lo uso per descrivere il comportamento: davanti a un compito nuovo che assomiglia a operazioni molto familiari, il modello sembra avere una forte tendenza a ricondurlo a quelle operazioni.
Nel nostro caso questa strada aveva inoltre un enorme vantaggio: funzionava abbastanza bene da non sembrare sbagliata.
Riconoscere un compito non è necessariamente imparare il compito
A questo punto ho chiesto a ChatGPT di cercare se nella ricerca sugli LLM fosse stato osservato qualcosa di compatibile con ciò che era accaduto.
Un lavoro di Jane Pan e colleghi distingue, nell’in-context learning, due fenomeni: task recognition e task learning.
Nel task recognition il modello utilizza gli esempi per riconoscere quale tipo di compito abbia davanti e applica conoscenze e regolarità acquisite precedentemente. Nel task learning, invece, deve ricavare dal contesto una nuova relazione che non coincide semplicemente con quelle già disponibili nel pretraining. Gli esperimenti degli autori, condotti su GPT-3, LLaMA e OPT in compiti controllati di classificazione, mostrano che queste due componenti possono essere distinte sperimentalmente.
È difficile non vedere l’analogia con quello che è accaduto nel nostro lavoro, anche se sarebbe scorretto trasformare l’analogia in una dimostrazione del meccanismo effettivamente intervenuto.
Il mio compito poteva essere riconosciuto prematuramente come «analisi tematica di testi». Una volta riconosciuto in questo modo, diventavano immediatamente disponibili procedure che il modello padroneggiava benissimo. Solo che avevo chiesto un’altra cosa.
L’episodio successivo mostrava che questa forma di riconoscimento poteva persistere persino dopo che avevamo modificato esplicitamente la procedura per impedirla. Il modello poteva incorporare il nuovo passaggio senza che fosse necessariamente cambiato il problema che, operativamente, sembrava risolvere.
Potremmo quindi formulare l’ipotesi che ChatGPT non stesse semplicemente sbagliando la soluzione: stava riconoscendo il problema come appartenente alla famiglia sbagliata di problemi.
Neppure gli esempi garantiscono che venga appresa la relazione giusta
Questo rende ancora più interessante il fatto che avessi fornito esempi.
Potremmo pensare: se spiego la regola e mostro come applicarla, il problema dovrebbe essere risolto. Non necessariamente.
In uno studio del 2022, Sewon Min e colleghi hanno mostrato, per una serie di compiti di classificazione e scelta multipla e sui modelli studiati, che alterare casualmente le associazioni corrette tra esempi ed etichette danneggiava sorprendentemente poco alcune prestazioni di in-context learning. Gli esempi fornivano al modello anche altre informazioni: il formato richiesto, la distribuzione degli input, lo spazio delle possibili risposte.
Non significa che gli esempi siano inutili né che i modelli non possano apprendere relazioni nuove dal contesto. Significa qualcosa di più sottile: un esempio contiene molte regolarità e non possiamo dare per scontato che il modello utilizzi proprio quella che noi intendiamo insegnargli.
Un lavoro successivo di Joonwon Jang e colleghi ha chiamato demonstration shortcut la tendenza osservata negli esperimenti a fare affidamento sui semantic priors acquisiti nel pretraining invece che sulle nuove relazioni tra input ed etichette mostrate nelle dimostrazioni. Gli autori mostrano anche che questo comportamento può essere corretto almeno in parte mediante opportune procedure di calibrazione.
Ancora una volta: questi studi non dimostrano che nel mio CFH sia accaduto esattamente questo. I compiti sperimentali sono diversi e molto più controllati. Ma descrivono un fenomeno sufficientemente vicino da rendere plausibile l’ipotesi che avevo cominciato a formulare osservando ChatGPT al lavoro.
Forse il problema era proprio che ChatGPT sapeva fare troppo bene qualcos’altro
Questa è la parte che trovo più interessante.
La difficoltà non sembra derivare semplicemente da un’incapacità. Potrebbe derivare anche da una competenza molto forte nella direzione sbagliata.
ChatGPT è straordinariamente efficace nell’individuare somiglianze semantiche, sintetizzare, categorizzare, costruire concetti sovraordinati e produrre formulazioni linguisticamente convincenti. Di fronte al nostro compito aveva quindi immediatamente disponibile una strada molto potente. Solo che quella strada non portava dove volevamo andare.
Le mie spiegazioni e i miei esempi dovevano competere con una modalità di trattamento del problema che produceva già risultati plausibili. E le mie prime correzioni potevano essere assorbite da quella stessa modalità senza modificarla davvero.
Non bastava quindi correggere la risposta. Non bastava nemmeno precisare la regola.
Avremmo dovuto riuscire a modificare non soltanto la risposta e non soltanto la procedura esplicita, ma quale problema ChatGPT stava effettivamente risolvendo. L’esperienza successiva mi ha mostrato che non avevo ancora ragioni sufficienti per affermare che ci fossimo riusciti.
Un errore anche umano, con una differenza
Questa inerzia ha un nome preciso nella psicologia umana: effetto Einstellung. Nei suoi esperimenti con le brocche d’acqua, Abraham Luchins mostrò già nel 1942 che chi ha imparato una procedura efficace continua ad applicarla anche quando ne esiste una più semplice o quando non è più adatta al problema. La competenza acquisita impedisce di vedere il problema in modo diverso. È esattamente il «sapere fare troppo bene qualcos’altro».
L’analogia riporta l’errore della macchina dentro una famiglia di errori che conosciamo bene. Del resto l’ho osservato decine di volte con i miei studenti, quando spiegavo che cosa fossero i Temi e le Tematiche Trasversali: anche loro, con spiegazioni ed esempi, tendevano a etichettare l’argomento invece di riconoscere il fenomeno.
Ma l’analogia mostra anche una differenza. In una persona l’Einstellung di solito si incrina con un fallimento visibile: la procedura smette di funzionare, compare un’esitazione, una domanda, un risultato che non torna. Nel modello la procedura sbagliata continua a «funzionare»: produce sempre un risultato plausibile, e il fallimento non arriva mai a renderla visibile. Manca proprio il segnale che, negli esseri umani, mette in crisi lo schema.
Un’altra lettura: la parte tacita del compito
C’è anche un’altra lettura possibile, che non esclude la precedente. Il compito che chiedevo contiene una parte di conoscenza tacita, nel senso di Michael Polanyi: sappiamo più di quanto sappiamo dire.
Che cosa sia un fenomeno e che cosa un suo aspetto, a quale livello di astrazione si collochi un Tema, quando un accadimento diventi significativo rispetto al problema: sono criteri che applico con sicurezza perché li ho esercitati per anni, ma che nessuna spiegazione esplicita contiene per intero.
Con i miei studenti, infatti, le spiegazioni non bastavano quasi mai. Funzionava, e non sempre, una conversazione sugli errori, più tentativi, la presentazione di esempi, l’analisi fatta insieme, e soprattutto l’adattamento della mia tecnica alla persona che avevo davanti. È il modo in cui si trasmette la conoscenza tacita: per apprendistato, non per istruzione.
Se è così, la domanda non è soltanto perché l’IA non capisse, ma anche che cosa del mio metodo non avessi ancora reso esplicito. E il lavoro con ChatGPT avrebbe avuto una funzione inattesa: costringermi a esplicitare una procedura che fino a quel momento abitava soprattutto nella mia pratica.
Una seconda esperienza
Successivamente ho ripreso e completato la costruzione del CFH con un altro assistente, Claude, su un corpus più ampio di casi. Il risultato è stato decisamente migliore. Ma, osservando come era stato ottenuto, non credo che la differenza stia soltanto in spiegazioni migliori o in un modello più capace. Sono cambiate soprattutto la forma del compito e la collocazione dei controlli.
Ogni Tema era scritto dentro il testo del Caso, legato alla frase da cui nasceva: un vincolo che spinge a partire da ciò che accade, anche se non lo garantisce. Il filtro fra Casi era strutturale: un Tema contava solo se compariva in almeno tre Casi, e il conteggio era fatto da un programma, non a impressione. Io non ho controllato i Temi uno per uno, ma li ho giudicati a ritroso, a partire dalla sensatezza e dall’utilità delle Tematiche Trasversali. E la scelta di formulare le Tematiche nella prospettiva delle criticità da prevenire e delle opportunità da sfruttare le ha orientate verso il significato rispetto al problema: proprio il piano che chiedevo a ChatGPT.
Va detto con onestà che anche in quella seconda esperienza alcuni Temi rimanevano etichette del tipo «di che cosa si parla»: «regole», «formazione», «valutazione». L’errore non era scomparso; era stato recuperato al livello successivo.
Ne ricavo un’indicazione pratica. Invece di ripetere la regola, conviene cambiare la forma del risultato richiesto. Se chiedo ogni Tema come una frase con un soggetto, un’azione e una conseguenza («chi fa che cosa, con quale effetto per la scuola»), è molto più difficile cavarsela con un’etichetta. A volte non serve spiegare meglio: serve un compito costruito in modo da rendere impraticabile la scorciatoia.
Un errore particolarmente insidioso
Siamo abituati a cercare gli errori dell’intelligenza artificiale nei suoi prodotti: un’informazione inventata, un calcolo sbagliato, una fonte inesistente, una conclusione logicamente infondata.
L’esperienza del CFH mi ha mostrato un errore diverso. Il prodotto può essere corretto, pertinente e intelligente preso isolatamente, mentre è sbagliata l’operazione attraverso la quale quel prodotto viene costruito rispetto allo scopo assegnato.
È un errore più difficile da riconoscere. Per accorgersene bisogna conoscere abbastanza bene il problema da poter valutare non soltanto che cosa l’IA ha prodotto, ma che cosa sta facendo.
Ed è precisamente qui che il controllo umano diventa essenziale.
Il problema non è che l’IA sia stupida
Sarebbe paradossale ricavare da questa esperienza la conclusione che ChatGPT o le altre IA non siano abbastanza potenti. La mia esperienza mi porta semmai nella direzione opposta. Il problema nasce anche dalla sua potenza.
Una macchina capace di produrre rapidamente una risposta mediocre è relativamente facile da controllare. Una macchina capace di produrre una risposta sbagliata per il compito ma concettualmente plausibile, argomentata, elegante e perfettamente pertinente ai materiali è molto più difficile da controllare.
Per questo credo sia fuorviante discutere dell’IA soltanto chiedendoci se «ragioni come noi». A volte arriva dove arriveremmo noi. A volte arriva altrove. A volte arriva nello stesso posto attraverso una strada differente. E qualche volta la strada differente cambia il significato stesso del risultato.
Non dobbiamo necessariamente attribuire a queste differenze categorie psicologiche umane. Possiamo però osservarle.
Il caso del CFH mi ha mostrato che non posso presumere che una macchina, solo perché ha ricevuto una spiegazione, sa ripeterla, ha visto degli esempi e produce risposte convincenti, stia effettuando l’operazione mentale – o, più prudentemente, computazionale – che io credo di averle richiesto.
Controllare l’IA significa anche controllare il suo modo di affrontare il problema
Questo modifica, almeno per me, il significato di «controllo umano». Non significa semplicemente controllare alla fine se ci sono errori. Significa mantenere il controllo sul problema, sui criteri con cui viene affrontato e sul significato attribuito ai risultati.
Nel lavoro sul CFH potevo accorgermi dell’errore perché conoscevo ciò che volevo costruire. Avevo un modello concettuale indipendente da ChatGPT con il quale confrontare ciò che ChatGPT produceva.
Se mi fossi affidato completamente al modello proprio perché «ne sapeva più di me», probabilmente avrei ottenuto un CFH formalmente elegante e concettualmente plausibile. Ma sarebbe stato un’altra cosa.
Questo episodio mi sembra quindi suggerire una regola molto semplice: più deleghiamo all’IA un compito che richiede interpretazione, più dobbiamo sapere abbastanza di quel compito da poter riconoscere non soltanto una risposta sbagliata, ma anche una risposta ottima ottenuta facendo la cosa sbagliata.
È una forma di controllo molto più impegnativa della semplice verifica dei fatti.
Mettere alla prova la comprensione: il transfer case
Se non possiamo inferire la comprensione né dalla capacità di spiegare la regola né dall’esecuzione formalmente corretta della procedura, come possiamo metterla alla prova? Una risposta viene dalla stessa Teoria della Flessibilità Cognitiva: il transfer case.
Si costruisce un Caso in cui le due operazioni, etichettare l’argomento e riconoscere il fenomeno, portano a risultati nettamente diversi: per esempio un Caso che parla molto di privacy, ma in cui ciò che accade di significativo rispetto al problema è un’altra cosa. Se il modello produce comunque «privacy», sappiamo quale compito sta eseguendo.
È un test discriminante: non chiede di spiegare la regola, ma di applicarla proprio dove la regola e l’abitudine divergono. È lo stesso criterio con cui valutiamo la comprensione negli studenti.
Chi controlla il controllore
Resta un problema. Un modello invitato a valutare il proprio risultato tende a giustificarlo: le mie prove del nove, sottoposte allo stesso modello che aveva prodotto i Temi, hanno confermato la plausibilità invece di far emergere l’anomalia. Non è un tratto esclusivo di ChatGPT. Anche Claude, commentando una prima versione di questo articolo, ha costruito una critica coerente e ben argomentata su una lettura frettolosa di un passaggio, e ha riconosciuto l’errore solo quando gliel’ho fatto notare.
Ne ricavo due indicazioni. La prima: separare chi produce da chi valuta, affidando la verifica a una nuova conversazione, priva del contesto che ha generato il risultato, oppure a un’altra persona. La seconda: invertire i ruoli. Nella ricerca qualitativa la codifica si controlla con un secondo codificatore. Con l’IA si può fare lo stesso: analizzo io e l’IA fa da secondo codificatore che obietta, oppure l’IA propone e io verifico un campione. Messa nel ruolo di chi contesta, anziché di chi conferma, l’IA è spesso più utile.
Pensieri diversi?
Non traggo da questo episodio una teoria generale della mente artificiale.
Non posso dimostrare, sulla base di questa esperienza, che gli esseri umani siano sempre cognitivamente flessibili – sappiamo benissimo quanto anche noi siamo prigionieri di schemi, abitudini, bias e automatismi – né che un LLM sia strutturalmente incapace di ristrutturare un problema. La ricerca mostra, al contrario, che gli LLM possono apprendere nuove relazioni dal contesto e che questa capacità varia con modelli, compiti e condizioni.
Posso però descrivere quello che è successo.
Avevo fornito a ChatGPT una concettualizzazione e degli esempi. ChatGPT era in grado di parlarne correttamente. Quando ha dovuto operare autonomamente, ha ripetutamente privilegiato un’altra struttura del problema, più vicina a operazioni che padroneggiava molto bene. Le correzioni hanno inizialmente migliorato i risultati senza necessariamente cambiare quella struttura.
Dopo numerose iterazioni abbiamo creduto di essere riusciti a ottenere un comportamento sufficientemente vicino all’operazione richiesta. Un’analisi successiva ha però riaperto il problema: ChatGPT aveva incorporato le correzioni nella procedura ed era capace di esplicitarle, ma poteva continuare a organizzare il compito secondo una struttura differente da quella che intendevo io.
Questo non dimostra che ChatGPT «non comprende». Mostra qualcosa che, per me, è più interessante.
L’esperienza suggerisce che non possiamo inferire la comprensione neppure dal fatto che il modello sappia incorporare nella propria procedura le correzioni che gli abbiamo dato e sappia mostrarci, passo per passo, di averlo fatto. L’esecuzione formalmente corretta della procedura non garantisce, da sola, che il problema sia stato rappresentato nello stesso modo da chi ha dato il compito e da chi lo sta eseguendo.
È possibile che l’intelligenza linguistica e quella umana percorrano, almeno in alcune situazioni, strade differenti. Ma è anche possibile che, in altre, sbaglino in modo simile e si distinguano soprattutto per la visibilità dell’errore e per il modo in cui lo si può correggere.
Proprio per questo lavorare con l’IA non significa soltanto imparare a darle istruzioni migliori. Significa anche costruire compiti e controlli che rendano visibile il modo in cui affronta il problema, e imparare a non confondere la plausibilità del suo pensiero con l’adeguatezza del suo modo di pensare al problema che le abbiamo affidato.
Riferimenti
Jang, J. et al. (2024). Rectifying Demonstration Shortcut in In-Context Learning. Proceedings of NAACL 2024.
Luchins, A. S. (1942). Mechanization in problem solving: The effect of Einstellung. Psychological Monographs, 54(6).
Min, S., Lyu, X., Holtzman, A., Artetxe, M., Lewis, M., Hajishirzi, H., Zettlemoyer, L. (2022). Rethinking the Role of Demonstrations: What Makes In-Context Learning Work? Proceedings of EMNLP 2022.
Pan, J., Gao, T., Chen, H., Chen, D. (2023). What In-Context Learning «Learns» In-Context: Disentangling Task Recognition and Task Learning. Findings of ACL 2023.
Polanyi, M. (1966). The Tacit Dimension. Garden City, Doubleday.

