Un modello linguistico di grandi dimensioni (LLM per brevità) è un tipo di programma di intelligenza artificiale (AI) in grado di riconoscere e generare testo, tra le altre attività. Tali modelli vengono addestrati su enormi quantità di dati, da qui il nome “Large” e si basano sull’apprendimento automatico: in particolare, un tipo di rete neurale chiamata Transformer Model.
In termini più semplici, un LLM è un programma per computer a cui sono stati forniti abbastanza esempi per essere in grado di riconoscere e interpretare il linguaggio umano o altri tipi di dati complessi. Molti vengono formati sui dati raccolti da Internet: migliaia o milioni di gigabyte di testo. Ma la qualità dei campioni influisce sulla capacità dei LLM di apprendere il linguaggio naturale, quindi i programmatori di un LLM possono limitarlo ad un set di dati più raffinato, per avere risposte più accurate.
Gli LLM utilizzano il deep learning per comprendere come funzionano insieme caratteri, parole e frasi. Il deep learning implica l’analisi probabilistica di dati non strutturati, che alla fine consente al modello di deep learning di riconoscere le distinzioni tra pezzi di contenuto senza intervento umano.
Gli LLM vengono quindi ulteriormente addestrati tramite l’ottimizzazione: vengono messi a punto o tempestivamente adattati al compito particolare che il programmatore desidera che svolgano, come interpretare domande e generare risposte o tradurre testo da una lingua a un’altra.
A cosa servono gli LLM?
Uno degli usi più noti è la loro applicazione come intelligenza artificiale generativa: quando viene loro posta una domanda, possono produrre testo in risposta. LLM ChatGPT, ad esempio, può generare saggi, poesie e altre forme testuali in risposta agli input dell’utente.
Qualsiasi set di dati ampio e complesso può essere utilizzato per addestrare i LLM, compresi i linguaggi di programmazione. Alcuni LLM possono aiutare i programmatori a scrivere codice. Possono scrivere funzioni su richiesta oppure, dato del codice come punto di partenza, possono finire di scrivere un programma. Gli LLM possono essere utilizzati anche in:
- Analisi del sentimento, per determinare se il tono emotivo del messaggio è positivo, negativo o neutro
- Ricerca sul DNA
- Assistenza clienti
- Chatbot
- Ricerca in linea
Esempi di LLM nel mondo reale includono ChatGPT (di OpenAI), Bard (Google), Llama (Meta) e Bing Chat (Microsoft). Copilot di GitHub è un altro esempio, ma per la codifica anziché per il linguaggio umano naturale.
Quali sono alcuni vantaggi e limiti degli LLM?
Una caratteristica chiave degli LLM è la loro capacità di rispondere a domande imprevedibili. Un programma per computer tradizionale riceve comandi nella sintassi accettata o da un determinato insieme di input da parte dell’utente. Un videogioco ha un insieme finito di pulsanti, un’applicazione ha un insieme finito di comandi su cui l’utente può fare clic o digitare e un linguaggio di programmazione è composto da precise istruzioni if/then o cicli finiti.
Al contrario, un LLM può rispondere al linguaggio umano naturale e utilizzare l’analisi dei dati per rispondere a una domanda o a un suggerimento non strutturato in un modo sensato. Mentre un tipico programma per computer non riconoscerebbe una richiesta del tipo “Quali sono le quattro più grandi band rock della storia?”, un LLM potrebbe rispondere con un elenco di quattro di queste band e una difesa ragionevolmente convincente del motivo per cui sono le migliori.
In termini di informazioni che forniscono, tuttavia, gli LLM possono essere affidabili solo quanto i dati che acquisiscono. Se vengono fornite informazioni false, forniranno informazioni false in risposta alle domande degli utenti. Gli LLM a volte hanno anche “allucinazioni”: creano informazioni false quando non sono in grado di produrre una risposta accurata.
Ad esempio, nel 2022 il notiziario Fast Company ha chiesto a ChatGPT del precedente trimestre finanziario della società Tesla; mentre ChatGPT ha fornito in risposta un articolo di notizie coerente, gran parte delle informazioni all’interno sono state inventate.
In termini di sicurezza, le applicazioni rivolte agli utenti basate su LLM sono soggette a bug come qualsiasi altra applicazione. Gli LLM possono anche essere manipolati tramite input dannosi per fornire determinati tipi di risposte rispetto ad altri, comprese risposte pericolose o non etiche. Infine, uno dei problemi di sicurezza con gli LLM è che gli utenti possono caricarvi dati sicuri e riservati per aumentare la propria produttività. Ma gli LLM utilizzano gli input che ricevono per addestrare ulteriormente i loro modelli e non sono progettati per essere depositi sicuri; potrebbero esporre dati riservati in risposta alle domande di altri utenti.
Come funzionano i LLM?
Machine e Deep Learning
A livello base, gli LLM si basano sull’apprendimento automatico. L’apprendimento automatico è un sottoinsieme dell’intelligenza artificiale e si riferisce alla pratica di fornire a un programma grandi quantità di dati per addestrare il programma a identificare le caratteristiche di tali dati senza l’intervento umano.
Gli LLM utilizzano un tipo di apprendimento automatico chiamato deep learning. I modelli di deep learning possono essenzialmente addestrarsi a riconoscere le distinzioni senza l’intervento umano, sebbene in genere sia necessaria una certa messa a punto da parte dell’uomo.
L’apprendimento profondo utilizza la probabilità per “imparare”. Ad esempio, nella famosa frase “The quick brown fox jumped over the lazy dog,”, le lettere “e” e “o” sono le più comuni e compaiono quattro volte ciascuna. Da ciò, un modello di deep learning potrebbe concludere (correttamente) che questi caratteri sono tra quelli che hanno maggiori probabilità di apparire nel testo in lingua inglese.
Realisticamente, un modello di deep learning non può effettivamente concludere nulla da una singola frase. Ma dopo aver analizzato trilioni di frasi, potrebbe imparare abbastanza per prevedere come terminare logicamente una frase incompleta, o addirittura generare frasi proprie, senza tuttavia conoscerne realisticamente il significato…
Reti neurali
Per consentire questo tipo di apprendimento profondo, gli LLM sono basati su reti neurali. Proprio come il cervello umano è costituito da neuroni che si collegano e si inviano segnali tra loro, una rete neurale artificiale (tipicamente abbreviata in “rete neurale”) è costituita da nodi di rete che si collegano tra loro. Sono composti da diversi “strati”: uno strato di input, uno strato di output e uno o più strati intermedi. Gli strati si scambiano informazioni solo se i loro output superano una determinata soglia.
Modelli di trasformatori
Il tipo specifico di reti neurali utilizzate per gli LLM sono chiamati, come già detto, modelli di trasformazione. I modelli Transformer sono in grado di apprendere il contesto, aspetto particolarmente importante per il linguaggio umano, che dipende fortemente dal contesto. I modelli Transformer utilizzano una tecnica matematica chiamata auto-attenzione per rilevare i modi sottili in cui gli elementi di una sequenza si relazionano tra loro. Ciò li rende più bravi a comprendere il contesto rispetto ad altri tipi di machine learning. Permette loro di capire, ad esempio, come la fine di una frase si collega all’inizio e come le frasi di un paragrafo si collegano tra loro.
Ciò consente agli LLM di interpretare il linguaggio umano, anche quando tale linguaggio è vago o scarsamente definito, organizzato in combinazioni mai incontrate prima o contestualizzato in modi nuovi. Ad un certo livello “comprendono” la semantica nel senso che possono associare parole e concetti in base al loro significato, dopo averli visti raggruppati insieme in quel modo milioni o miliardi di volte.