Come distinguere un buon modello di AI generativa da uno scarso? Quali sono i test a nostra disposizione, e quanto sono affidabili? Domande tutt’altro che scontate, tanto più che le risposte possono influenzare l’esito della battaglia commerciale miliardaria tra le “big tech” per la supremazia nel settore dell’IA.
Indice degli argomenti
La sfida di misurare l’intelligenza delle macchine
“Sovrumano” [1], l’ultimo libro pubblicato sul tema dell’Intelligenza Artificiale generativa da Nello Cristianini, affronta un tema importante che mi ha sempre appassionato: come possiamo misurare l’intelligenza delle macchine?
È vero, è una domanda che oramai viene da lontano: Alan Turing per primo l’ha affrontata in un famoso articolo del 1950 [2], ma oggi che i sistemi di IA generativa rivaleggiano con gli umani in molti compiti, sembra che le risposte date fino ad ora, e persino gli strumenti che abbiamo usato, improvvisamente, non siano più adeguati.
Per dare un’idea di quanto sta accadendo, ci sono avvisaglie che mettono in discussione le stesse fondamenta del “Test di Turing”, vale a dire che il giudice delle capacità della macchina è l’essere umano: una macchina è tanto più intelligente quanto più riesce ad ingannare una persona, facendosi credere un essere umano. Da sempre, il metro di paragone per una macchina sono le abilità (le intelligenze) dell’essere umano, e la valutazione propone metodi per rendere il confronto quanto più oggettivo, trasparente e riproducibile.
Come vedremo, e come evidenzia Cristianini nel suo libro, man mano che l’IA generativa progredisce, ci troviamo a dover alzare l’asticella di cosa riteniamo intelligente. Se vincere una partita a scacchi era ritenuta una sfida per dimostrare l’intelligenza delle macchine intelligenza all’inizio degli anni ’90, oggi non ci vediamo poi così tanta intelligenza, un po’ come non ce ne vediamo in una calcolatrice che fa i conti. E man mano che l’asticella dell’intelligenza si alza, il compito dell’essere umano, scoprire se nell’altra stanza c’è una persona o una intelligenza artificiale, si complica parecchio. A qualcuno è venuto il dubbio: non è che una buona intelligenza artificiale se la caverebbe meglio nel ruolo di valutatore? Sarebbe “l’IA che valuta l’IA”: una provocazione o una prospettiva concreta?
Ma partiamo dall’inizio: quali sono le metodologie attuali per valutare l’intelligenza delle macchine?
Come si valutano i modelli di AI generativa: i test e le classifiche dei modelli linguistici
La metodologia più utilizzata per valutare le prestazioni di un large language model (LLM) consiste nel porre al modello una batteria di domande a scelta multipla (per ogni domanda vengono proposte quattro possibili risposte, tra cui quella corretta), per poi calcolare l’accuratezza del modello, vale a dire la percentuale di risposte corrette rispetto al totale delle domande. Si ottengono quindi valori compresi tra 0 e 1, e un modello è tanto più performante quanto più si avvicina ad 1.
Le domande sono nell’ordine delle migliaia per ciascuna batteria, e vengono preparate con l’intenzione di mettere in difficoltà i modelli. Ci sono domande che chiedono la soluzione di un problema matematico, domande di logica e ragionamento, domande per verificare la comprensione del linguaggio, domande sulla conoscenza di senso comune (Quale è il colore di una banana?). Ci sono poi batterie di domande specializzate per le varie discipline del sapere, come ad esempio la medicina, in cui viene chiesto al modello di fornire una diagnosi per un certo caso clinico.
Qui sotto un esempio di domanda a scelta multipla, preso dal benchmark MMLU [3] tradotto in italiano (la risposta corretta è la C).:
Qual è la capacità cranica media approssimativa dell’Homo erectus?
A. sotto i 650 cc B. 1700 cc C. 1200 cc D. poco meno di 1000 cc
Insomma, stiamo parlando di un vero e proprio esame a cui un modello viene sottoposto!
Inutile dire che per la lingua inglese esistono centinaia di batterie di domande e risposte, mentre per altre lingue, incluso l’italiano, si fatica ad arrivare a qualche decina. Tradurre, automaticamente, dall’inglese all’italiano rischia di introdurre errori, e in ogni caso una domanda che riguarda la cultura anglosassone potrebbe essere poco significativa per la cultura italiana.
Alla fine della valutazione si ottiene una classifica (leaderboard) dei modelli, in base alle risposte che hanno dato. Prendiamo come esempio Evalita-LLM [4], una leaderboard accessibile pubblicamente su Hugging Face, che si propone di valutare modelli sulla lingua italiana. Ci sono dieci batterie di domande, ognuna delle quali è specializzata su una certa abilità del modello: ragionamento logico (textual entailment), conoscenza lessicale (word in context), riconoscimento di espressioni d’odio (hate speech), eccetera. In totale sono circa ventimila domande, quindi si tratta di un esame attendibile.
Ci sono due modalità di interrogazione. Nella prima (zero-shot) non viene fornito nessun aiuto: si pone la domanda nel modo più neutro possibile, per non favorire nessun modello, e si aspetta che il modello scelga una tra le opzioni proposte (normalmente sono presentate in ordine casuale, anche qui per evitare “favoritismi”). Nella seconda modalità (few-shot) vengono dati alcuni aiuti, sotto forma di esempi di domanda e risposta corretta. Gli esempi sono pochi, cinque o dieci, e sono ovviamente uguali per tutti i modelli. Come è lecito aspettarsi, i modelli rispondono meglio quando vengono aiutati: nella nostra leaderboard per l’italiano, Gemma-3-27B, uno dei migliori modelli ad accesso libero (open-source) distribuito da Google, ottiene una accuratezza su tutte le batterie di 0,45 nella configurazione zero-shot e di 0,57 con cinque esempi, quindi guadagna 12 punti di accuratezza: non male con solo cinque domande di esempio.
Sembra tutto semplice, ma in realtà non è affatto banale mettere tutti i concorrenti al nastro di partenza nelle stesse condizioni. Tecnicamente significa che dobbiamo assicurarci di usare gli stessi iper-parametri (hyper parameters) per ciascun modello, evitando favoritismi. Ogni modello di IA generativa, infatti, può essere configurato in modo da variare le scelte delle parole che usa per rispondere ad una domanda, in particolare la quantità di parole nuove e il numero di parole tra cui scegliere. La prima strada, ottimizzare gli iper-parametri per ogni modello e per ogni batteria di domande, porterebbe a prestazioni migliori, ma è troppo costosa in termini computazionali. Alcune librerie software (ad esempio llm-eval-harness [5], una tra le più usate) preferiscono un approccio più radicale: tutti i modelli usano gli stessi iper-parametri, decisi sulla base delle configurazioni più frequenti, e per tutte le domande: qualcuno potrebbe lamentarsi, ma è semplice e mette tutti gli LLM alla pari.
Configurare gli iper-parametri del modello è solo l’inizio: come vedremo ci sono almeno altri cinque motivi che rendono difficile valutare in modo oggettivo le performance dei LLM. Andiamo con ordine.
Il rischio di contaminazione dei dati di addestramento
Forse il problema di maggiore impatto per la valutazione degli LLM, e al tempo stesso di difficile soluzione, riguarda il fatto che gli LLM potrebbero conoscere in anticipo le domande, e anche le risposte, dei test che utilizzano. Come ciò possa accadere è presto detto. Le batterie di domande sono in larga parte accessibili su siti internet, sia per motivi di trasparenza e riproducibilità, sia per permettere un’analisi raffinata dei comportamenti di un modello da parte di chi lo sviluppa. Contemporaneamente, sappiamo che gli LLM vengono addestrati con grandi quantità di dati testuali, molti dei quali provengono da internet. Quindi, anche in modo inconsapevole, alcuni LLM potrebbero aver utilizzato le batterie di domande e risposte per l’addestramento, risultando in un vantaggio rispetto a LLM che non sono stati “contaminati” con le domande e le risposte. Aggiungiamo che non è affatto semplice stabilire se un certo modello sia stato contaminato o meno: poche migliaia di domande sono una goccia nel mare dei trilioni di parole che alimentano il pre-addestramento (pre-training) dei modelli, e stabilire una relazione diretta tra dati e accuratezza delle risposte al momento resta un tema di ricerca. Come conseguenza non esistono allo stato attuale test affidabili per stabilire il livello di contaminazione di un LLM, e quindi i test di valutazione di cui stiamo parlando potrebbero essere inquinati e poco affidabili.
Benchmark che invecchiano troppo in fretta
Una seconda problematica deriva dal fatto che, negli ultimi due anni (da quando OpenAI ha rilasciato ChatGPT), gli LLM stanno facendo incredibili progressi. Significa che una batteria di domande che due anni fa veniva risolta con difficoltà, oggi probabilmente risulta un test molto più facile, e quindi poco significativo, almeno per la media degli LLM attuali. Quindi le nostre batterie di domande “invecchiano” tanto velocemente quanto maggiore è il ritmo dei miglioramenti della tecnologia.
La soluzione al problema è una sorta di rincorsa a produrre benchmark (le batterie di domande) sempre più difficili. Siamo arrivati a domande matematiche di tale complessità per le quali, tra gli umani, solo esperti matematici sono in grado di dare una risposta. Il metro di paragone per gli LLM non sono più persone di media cultura, ma professori universitari!
La variabilità delle risposte e la sensibilità ai prompt
E’ stato verificato che molti LLM sono particolarmente sensibili anche a minime variazioni della stessa domanda. In pratica, se formuliamo la domanda in modo leggermente diverso, otteniamo risultati che possono variare parecchio. Quindi, a seconda di come formuliamo la domanda, possiamo ottenere classifiche diverse, e questo non è un problema da poco, visto quanto contano le classifiche dei LLM.
Facciamo un esempio. Se chiedo ad una persona “Quale è il monte più alto d’Europa”, oppure “Quale è la montagna più alta d’Europa”, mi aspetto la stessa risposta, “il Monte Elbrus”. Se le risposte sono diverse, ad esempio una giusta e una sbagliata, comincio a preoccuparmi. Forse non mi sono spiegato bene, oppure questa persona in effetti non sa la risposta e tira ad indovinare. Questa situazione si verifica piuttosto spesso con gli LLM, particolarmente con quelli di dimensioni più piccole (sono meno stabili rispetto ai LLM più grandi), tanto che le classifiche che si ottengono sono poco affidabili.
Come possiamo rimediare alla eccessiva sensibilità ai prompt (alle domande) degli LLM? Una strada per mitigare il problema è quella di prevedere alcune varianti alla stessa domanda, verificare le risposte per ciascuna variante, e poi considerare la media delle risposte come accuratezza del modello per quella domanda. In molti casi accade che le differenze sono significative: avremo un prompt che funziona bene, e altri che funzionano male. Nella leaderboard Evalita-LLM che abbiamo menzionato, abbiamo usato sei varianti per ogni batteria di domande, ottenendo comportamenti interessanti. Non è una soluzione pienamente soddisfacente, perché in realtà non sappiamo quante varianti dobbiamo considerare, ma almeno mette in primo piano la questione della sensibilità ai prompt, in attesa che i modelli diventino più stabili.
“The dataset presented in this paper will be made publicly available for research purposes. A link to the resource will be provided upon acceptance of the paper.”
Valutare le risposte aperte e il ruolo dell’IA giudice
Fino ad ora abbiamo parlato di test organizzati come batterie di domande a scelta multipla, per le quali viene calcolata la percentuale delle risposte esatte. Ci chiediamo ora se questa modalità possa essere applicata a tutte le capacità di un LLM che siamo interessati a valutare. La risposta è semplicemente no. Intuitivamente, una cosa è scegliere la risposta corretta tra quattro possibili opzioni, e una cosa diversa è chiedere al modello di generare una risposta senza poter scegliere. E’ la differenza che passa tra svolgere un compito scritto “a crocette” e una interrogazione orale: anche se la domanda è la stessa, rispondere a voce richiede la capacità di articolare la risposta in una sequenza di frasi. E poi c’è la questione che non sai mai se la tua risposta è quello che la professoressa voleva sentirsi dire: magari è giusta, ma potevi dirlo meglio, e quindi prendi un voto più basso.
E qui si apre una questione tecnica tutt’altro che semplice. Come facciamo a valutare se una risposta ad una domanda aperta è corretta, e magari anche quanto è corretta? Tipici compiti a domande aperte (contrapposti ai compiti a scelta multipla) sono fare un riassunto, dare una spiegazione, tradurre da una lingua all’altra, dirci come si fa a fare qualcosa, fare una conversazione. In tutti questi casi le risposte che può dare un modello, giuste o sbagliate, sono praticamente infinite. Ad esempio, se chiedessi a cento LLM diversi di riassumere in 50 parole il contenuto di questo articolo, sicuramente otterrei cento riassunti diversi, anche se simili. Come possiamo fare una classifica di questi riassunti, dal migliore al peggiore? La modalità utilizzata in questi casi prevede di chiedere ad alcuni esperti di produrre ciascuno un riassunto (vengono chiamati reference). Dopodiché si calcola quanto un riassunto generato dal LLM assomiglia ai reference, si assegna un punteggio di somiglianza, e sulla base di questo si produce la classifica. D’accordo, ma come facciamo a calcolare la somiglianza tra due riassunti? Non è che è un gatto che si morde la coda? Per valutare un riassunto devo saper calcolare la somiglianza tra due testi, ma per fare questo devo capire se contengono le stesse informazioni, che alla fine è proprio quello che mi aspetto da un riassunto.
Fino a poco tempo fa i riassunti generati dai modelli erano di bassa qualità, ed erano sufficienti misure di somiglianza piuttosto approssimative. Una di queste misure, ROUGE [6], semplicemente calcola la quantità delle sequenze di due, tre, quattro parole che sono in comune tra i due testi da confrontare. Si guardano le parole, ma non il loro significato. Poteva essere una ragionevole approssimazione quando un riassunto era una sorta di copia in piccolo del testo iniziale con le frasi più importanti, ma con i recenti LLM, che sanno fare un uso raffinato del linguaggio, una metrica come ROUGE non è assolutamente in grado di cogliere le somiglianze di significato che vanno al di là dell’uso delle stesse parole. E quindi, i LLM ci mettono nella scomoda posizione del gatto che si morde la coda.
Qualcuno ha provato a venirne fuori con una brillante idea: visto che gli LLM sono così performanti, affidiamoci a loro per giudicare se un riassunto automatico assomiglia ad un riassunto prodotto da un umano esperto. Si chiama llm-as-a-judge [7], e consiste nell’affidare la valutazione di un task generativo ad un modello ritenuto sufficientemente potente per svolgere il ruolo di giudice. C’è ancora uno scetticismo diffuso verso llm-as-a-judge, in particolare nella comunità scientifica. A mio parere, questa appare attualmente la strada più promettente per risolvere la questione di come valutare le domande a risposta aperta.
La valutazione nei contesti dinamici e interattivi
L’ultimo problema che affrontiamo riguarda la valutazione in contesti d’uso cosiddetti “dinamici”. In questi contesti il comportamento degli LLM deve essere valutato considerando i comportamenti precedenti, e quindi la nostra batteria di domande non può essere definita in anticipo, ma piuttosto le domande vanno create dinamicamente, a seconda del contesto.
Ad esempio, supponiamo che un LLM-assistente debba aiutare un robot ad aggiustare una lavatrice. Il robot cerca di individuare il guasto provando varie ipotesi, il motore, il cestello, l’alimentazione, lo scarico. Ogni volta chiede consiglio al LLM-assistente ponendo una domanda (Come posso staccare la corrente?), e in base alla risposta pone un’altra domanda (Ho capito, ma dove trovo l’alimentatore?). Come facciamo a sapere se il LLM-assistente ha dato le risposte corrette? Si potrebbe dire che se il robot ha raggiunto il suo obiettivo (aggiustare la lavatrice), allora le risposte sono giuste, ma questa valutazione non ci dice niente delle singole risposte e nemmeno se ci potevano essere risposte migliori di quelle date. E d’altra parte, produrre batterie di domande per ogni possibile situazione di dialogo tra robot e LLM-assistente sembra davvero poco sensato.
Ancora una volta, gli strumenti a nostra disposizione si rivelano insufficienti per catturare la complessità di situazioni dinamiche. E anche in questo caso potrebbe venirci in aiuto un potente LLM-giudice, che osserva da fuori il robot mentre cerca di aggiustare la lavatrice, prende appunti, e alla fine assegna un punteggio a seconda di quanto il LLM-assistente sia stato di aiuto al robot, magari dando consigli su come migliorare. Dopo tutto è quello che faremo noi umani, solamente che per noi è diventato troppo costoso farlo.
Prospettive future della valutazione dell’intelligenza artificiale
Facciamo il punto della situazione per quanto riguarda la valutazione dei modelli di AI generativa. Abbiamo individuati cinque sfide che devono essere affrontate per definire metodologie oggettive, trasparenti e riproducibili:
(i) risolvere il problema della contaminazione degli LLM con le domande e le risposte di valutazione;
(ii) la necessità di alzare continuamente l’asticella delle domande, per far fronte ai rapidi progressi degli LLM;
(iii) almeno allo stato attuale, far fronte alla sensibilità dei modelli a minime variazioni delle domande;
(iv) trovare soluzioni per la valutazione di domande a risposta aperta;
(v) infine, affrontare la valutazione in contesti dinamici, quando non è possibile definire in anticipo le batterie di domande.
Sono problemi in buona parte ancora aperti che ci impongono soluzioni raffinate, e probabilmente a loro volta basate su modelli di IA ancora più potenti. Ho l’impressione che in questo campo ci aspettino parecchie novità: dovremmo abituarci all’idea dell’IA che valuta l’IA!
Ringraziamenti
Il lavoro riportato in questo articolo si è svolto nel contesto del progetto MUR PE0000013-FAIR (Future Artificial Intelligence Research), con attività che hanno coinvolto lo Spoke 2 (Fondazione Bruno Kessler) in collaborazione con l’Università di Torino e Domyn (ex iGenius).
Bibliografia
[1] Nello Cristianini: Sovrumano – Oltre i limiti della nostra intelligenza, Il Mulino, 2025.
[2] Alan Turing, Computing Machinery and Intelligence, Mind, vol. 49, 1950, pp. 433-460.
[3] Xiang Yue et al.: MMMU: A Massive Multi-discipline Multimodal Understanding and Reasoning Benchmark for Expert AGI, https://arxiv.org/abs/2311.16502, 2025.
[4] Evalita-LLM leaderboard https://huggingface.co/spaces/evalitahf/evalita_llm_leaderboard
[5] llm-eval-harness
https://github.com/EleutherAI/lm-evaluation-harness
[6] Chin-Yew Lin: ROUGE: A Package for Automatic Evaluation of Summaries, Association for Computational Linguistics 2004.
[7] JIAWEI GU et a.: A Survey on LLM-as-a-Judge, 2024.











