L'intelligenza artificiale generativa ha catturato l'attenzione di molti negli ultimi anni, grazie alla sua capacità di sorprendere e progredire ad una velocità impressionante. Nella nostra ultima Masterclass "IA Generativa in Italia: nuovi modelli e benchmark di valutazione", con i nostri Enrico Bertino, Aldo Cocco e Matteo Muffo, abbiamo esplorato le pietre miliari che hanno portato allo sviluppo dei modelli di linguaggio moderni, concentrandoci in particolare sugli sviluppi in Italia.
Cos'è l'Intelligenza Artificiale Generativa?
L'intelligenza artificiale generativa si riferisce all'uso dell'AI per creare nuovi contenuti come testi, immagini, audio o video. Negli ultimi anni, abbiamo assistito a progressi incredibili in ciascuno di questi campi. Ad esempio, nella generazione di immagini, siamo passati dai primi modelli come DALL-E e CLIP, capaci di creare immagini semplici come una "sedia fatta di avocado", a modelli avanzati come Stable Diffusion e Midjourney, che generano immagini e video sorprendenti, rendendo difficile distinguere tra realtà e finzione.
In questo articolo, ci concentreremo sui modelli di linguaggio, ovvero quei modelli che generano testo a partire da un input testuale, noto come prompt.
Le pietre miliari nello sviluppo dei modelli di linguaggio
GPT-3: l'inizio di una nuova era
Rilasciato nel 2020 da OpenAI, GPT-3 ha segnato una svolta nel campo dei modelli di linguaggio. Con 175 miliardi di parametri, è stato uno dei primi modelli a dimostrare capacità sorprendenti nel zero-shot e few-shot learning, ovvero la capacità di eseguire compiti senza o con pochissimi esempi.
ChatGPT e l'allineamento etico
Successivamente, con l'introduzione di ChatGPT basato su GPT-3.5, si è posta maggiore enfasi sull'allineamento dei modelli con valori etici e risposte coerenti, grazie all'utilizzo del Reinforcement Learning from Human Feedback (RLHF). Questo ha permesso ai modelli di fornire risposte non solo accurate, ma anche eticamente appropriate.
GPT-4 e l'addestramento multimodale
Nel 2023, OpenAI ha rilasciato GPT-4, introducendo l'addestramento multimodale. Questo ha permesso ai modelli di gestire non solo testo, ma anche immagini, ampliando ulteriormente le loro capacità e rendendoli più versatili. GPT-4 ha mostrato notevoli miglioramenti nelle capacità di ragionamento, problem-solving e comprensione contestuale.
o1: un nuovo capitolo
Recentemente, è stato introdotto il modello o1, che rappresenta una nuova era nello sviluppo dei modelli di linguaggio. o1 ha spostato l'attenzione dalla complessità dell'addestramento alla fase di generazione, concentrandosi sul ragionamento e sulla capacità di esporre passaggi logici dettagliati. Questo consente al modello di risolvere problemi complessi di logica, avvicinandosi o addirittura superando le capacità umane in alcuni domini specifici.
Modelli di Linguaggio e Gestione delle Lingue
Un aspetto cruciale nel funzionamento dei modelli di linguaggio è come gestiscono le diverse lingue. Questi modelli vengono addestrati su grandi quantità di dati testuali, ma la maggior parte di questi dati è in inglese - spesso oltre il 90%. Ciò crea sfide significative per le lingue meno rappresentate, come l'italiano.
La tokenizzazione e le sfide linguistiche
La tokenizzazione è il processo in cui il testo viene suddiviso in "token", unità di informazione che possono essere parole intere o parti di esse. Le parole frequenti nei dati di addestramento, tipicamente in inglese, vengono rappresentate con meno token, rendendo il modello più efficiente in quella lingua. Al contrario, le parole in italiano spesso richiedono più token, riducendo l'efficienza e la precisione del modello nella nostra lingua.
Ad esempio, un testo in inglese potrebbe essere tokenizzato in 342 token, mentre lo stesso testo tradotto in italiano potrebbe richiederne 448. Questo non solo influisce sull'efficienza computazionale, ma può anche avere un impatto sui costi quando si utilizzano servizi basati sul numero di token elaborati.
I modelli di linguaggio in Italia
Nonostante le sfide, la comunità italiana ha iniziato a sviluppare modelli di linguaggio specifici per la nostra lingua. Ecco alcuni dei progetti più significativi.
Minerva
Minerva è un modello sviluppato dall'Università La Sapienza di Roma, che parte da modelli pre-addestrati multilingua e continua l'addestramento su dati in italiano. Questo approccio mira a combinare i vantaggi dei modelli multilingua con una specializzazione nella nostra lingua. Addestrato da zero in Italia con un dataset di oltre 500 miliardi di parole, e con motore hardware il supercomputer Leonardo di Cineca.
Modello Italia
Sviluppato da iGenius e Cineca, il consorzio interuniversitario formato 70 università italiane, Modello Italia è un large language model pensato per l’automazione della pubblica amministrazione italiana ed europea. Come Minerva, anche Modello Italia sfrutta il supercomputer Leonardo.
Modelli multilingua vs. Modelli verticali Italiani
Una domanda fondamentale è se sia meglio utilizzare modelli multilingua potenti oppure modelli verticali specifici per l'italiano.
Valutazione dei modelli
Per rispondere, è essenziale valutare le performance dei modelli. La valutazione dei modelli di linguaggio è complessa e può seguire diversi approcci.
LLM come giudice
Utilizzare un modello di linguaggio per valutare le risposte di un altro modello. Questo metodo può introdurre bias, specialmente se il modello valutatore non è più potente di quello valutato.
Ispezione diretta
Coinvolgere esperti umani nella valutazione delle risposte. Questo approccio è accurato ma non scalabile per grandi quantità di dati.
Benchmark statici
Utilizzare dataset predefiniti per testare le performance. Tuttavia, questi possono diventare rapidamente obsoleti e non riflettere le capacità più recenti dei modelli.
Chatbot Arena
Un progetto interessante è Chatbot Arena, sviluppato da ricercatori di Stanford e Berkeley. Questa piattaforma permette agli utenti di inserire un prompt e confrontare le risposte di due modelli in modo anonimo. Gli utenti votano la risposta migliore, contribuendo ad una classifica dinamica e continuamente aggiornata.
I risultati per la lingua italiana
Quali sono i migliori modelli di linguaggio per la lingua italiana?
Per rispondere a questa domanda, diversi modelli di linguaggio sono stati messi alla prova con alcune prove di italiano dei test Invalsi. Dai risultati emerge che le differenze tra i vari modelli dipendono principalmente dalla loro grandezza e dai dati utilizzati per l’addestramento.
In cima alla classifica troviamo Claude 3.5 Sonnet di Anthropic, che si distingue con un punteggio di 92.2, superando i modelli di OpenAI. A seguire ci sono Claude 3 Opus e Mistral-Large-Instruct-2407 di MistralAI. Purtroppo, il primo modello italiano in classifica, Llamantino, registra un punteggio di 56.6, evidenziando un grande divario rispetto ai leader.
Sfide e prospettive future
Le sfide attuali
La differenza di performance è dovuta a vari fattori.
In primo luogo, la quantità di dati di addestramento gioca un ruolo cruciale. I modelli multilingua sono addestrati su quantità enormi di dati, spesso utilizzando terabyte di testo provenienti da diverse fonti, il che permette loro di acquisire una comprensione più approfondita e generale del linguaggio.
Un altro aspetto fondamentale è l'architettura del modello. Modelli come GPT-4o possiedono architetture più avanzate e dimensioni maggiori, con centinaia di miliardi di parametri. Questa complessità consente loro di catturare nuance linguistiche e strutture semantiche complesse che modelli più piccoli e meno avanzati non possono replicare.
Inoltre, il transfer learning contribuisce significativamente alle prestazioni dei modelli multilingua. La capacità di trasferire conoscenze da una lingua all'altra avvantaggia questi modelli, specialmente in compiti con strutture semantiche comuni. Questo significa che l'apprendimento in una lingua può migliorare le performance in un'altra, ampliando le capacità del modello senza la necessità di dati specifici per ogni lingua.
Il ruolo dei dati sintetici
Una possibile soluzione per colmare il divario è l'utilizzo di dati sintetici generati artificialmente. Questo approccio potrebbe aumentare la quantità di dati disponibili per l'addestramento in italiano, sfruttando modelli esistenti per creare nuovi dataset.
Tecniche di data augmentation, come l'ampliamento dei dataset esistenti attraverso parafrasi, traduzione inversa e generazione controllata, possono arricchire il corpus di dati in italiano.
Un'altra strategia è il self-training, che prevede l'utilizzo di modelli pre-addestrati per annotare dati non etichettati, creando così nuovi esempi per l'addestramento. Queste tecniche possono migliorare significativamente le performance dei modelli in italiano, fornendo loro più dati su cui imparare e affinare le proprie capacità.
Collaborazioni e risorse computazionali
Per competere con i colossi internazionali, è fondamentale incrementare gli investimenti pubblici e privati, aumentando i fondi destinati alla ricerca e sviluppo nell'IA. Le collaborazioni accademiche e industriali possono creare sinergie tra università, istituti di ricerca e aziende tecnologiche, accelerando il progresso nel settore. Inoltre, l'accesso a risorse computazionali avanzate è essenziale. L'utilizzo di supercomputer come Leonardo di Cineca per addestrare modelli di dimensioni competitive può mettere i ricercatori italiani nella posizione di sviluppare modelli all'avanguardia che possano competere efficacemente su scala globale.
La competizione tra modelli multilingua e modelli verticali italiani è ancora aperta. Sebbene i modelli multilingua siano attualmente superiori in termini di performance, la ricerca in Italia sta compiendo passi significativi. Solo attraverso l'addestramento di modelli di dimensioni e capacità comparabili ai colossi internazionali potremo determinare se i modelli verticali in italiano potranno competere efficacemente.
È essenziale continuare a investire nella raccolta di dati di qualità, nello sviluppo di nuove architetture e nell'ottimizzazione delle risorse computazionali. La strada dell'IA generativa in Italia è sfidante, ma con il contributo di tutti potremo raggiungere traguardi importanti.
FAQ
Quali sono le sfide nell'addestramento di modelli di linguaggio in italiano?
Le principali sfide riguardano la disponibilità limitata di dati di addestramento in italiano, poiché la maggior parte di essi è in lingua inglese. Questo porta a una tokenizzazione inefficiente, le parole italiane spesso richiedono più token rispetto all'inglese, riducendo l'efficienza e aumentando i costi computazionali. Inoltre, le risorse computazionali limitate rappresentano un ostacolo significativo, poiché l'addestramento di modelli di grandi dimensioni richiede infrastrutture avanzate come supercomputer, non sempre facilmente accessibili.
Quali sono i principali modelli di linguaggio sviluppati in Italia e quali obiettivi hanno?
Tra i modelli più significativi sviluppati in Italia ci sono Minerva e Modello Italia. Minerva, sviluppato dall'Università La Sapienza di Roma, mira a combinare i vantaggi dei modelli multilingua con una specializzazione nella lingua italiana, utilizzando il supercomputer Leonardo di Cineca. Modello Italia, creato da iGenius e Cineca, è progettato per automatizzare processi nella pubblica amministrazione italiana ed europea, sfruttando anch'esso le potenzialità del supercomputer Leonardo.
Come vengono valutate le performance dei modelli di linguaggio e quali metodi sono utilizzati?
Le performance dei modelli di linguaggio vengono valutate attraverso diversi metodi. Uno di questi è l'utilizzo di un modello di linguaggio per valutare le risposte di un altro, anche se questo può introdurre bias, specialmente se il modello valutatore non è più potente di quello valutato. L'ispezione diretta coinvolge esperti umani per una valutazione accurata, ma non è scalabile per grandi quantità di dati. I benchmark statici utilizzano dataset predefiniti per testare le performance, ma possono diventare rapidamente obsoleti. Piattaforme come Chatbot Arena permettono confronti dinamici tra modelli attraverso il feedback degli utenti, offrendo una classifica aggiornata delle performance.