Quando scrivi una domanda a un assistente come ChatGPT, Claude o Gemini e ricevi una risposta fluida, è naturale pensare che dall'altra parte ci sia qualcosa che "capisce" come capisce una persona. In realtà il meccanismo di base è sorprendentemente semplice da descrivere, anche se enorme da realizzare: un modello linguistico di grandi dimensioni (in inglese Large Language Model, LLM) è un sistema che prevede quale pezzo di testo viene dopo. Capire questo principio aiuta a usarlo meglio e a fidarsi nel modo giusto.
Dal testo ai token
Un modello non legge lettere né parole intere: lavora su token, cioè frammenti di testo. Un token può essere una parola breve ("casa"), una parte di parola ("intellig", "enza") o un segno di punteggiatura. La frase "Il gatto dorme sul divano" può diventare sei o sette token, a seconda di come è stato costruito il vocabolario del modello.
Ogni token viene trasformato in una lista di numeri, chiamata vettore. È su questi numeri che il modello fa i suoi calcoli. Questo spiega alcune stranezze che forse hai notato:
- i modelli a volte sbagliano a contare le lettere di una parola, perché non "vedono" le lettere singole ma blocchi;
- i servizi a pagamento conteggiano l'uso in token, non in parole;
- le lingue meno rappresentate nei dati tendono a richiedere più token per esprimere lo stesso concetto.
La previsione della parola successiva
Il cuore del funzionamento è una domanda ripetuta all'infinito: dato tutto il testo precedente, qual è il token più probabile adesso? Il modello calcola una distribuzione di probabilità su tutto il suo vocabolario. Se il testo è "La capitale della Francia è", il token "Parigi" avrà una probabilità altissima, mentre "Lione" ne avrà una molto più bassa.
Il modello sceglie un token, lo aggiunge al testo e ripete il calcolo. Una risposta di trecento parole è quindi il risultato di centinaia di previsioni consecutive. Non esiste una "risposta già pronta" che viene recuperata da un archivio: ogni frase viene costruita un pezzo alla volta.
Il ruolo della temperatura
Se il modello scegliesse sempre il token più probabile, le risposte sarebbero ripetitive e prevedibili. Per questo si introduce un parametro chiamato temperatura: valori bassi rendono le scelte più conservative e coerenti, valori alti introducono più varietà. È il motivo per cui la stessa domanda posta due volte può produrre risposte diverse.
Come impara: l'addestramento
Per arrivare a prevedere bene, il modello passa attraverso fasi distinte.
- Pre-addestramento. Il modello legge una quantità enorme di testo e, per ogni frammento, prova a indovinare il token successivo. Quando sbaglia, i suoi parametri interni (miliardi di numeri chiamati pesi) vengono corretti di poco. Ripetendo questo processo moltissime volte, il modello assorbe grammatica, stile, fatti ricorrenti e schemi di ragionamento presenti nei testi.
- Affinamento con istruzioni. Un modello che sa solo continuare un testo non è ancora un buon assistente. Viene quindi addestrato su esempi di domande e risposte ben fatte, così impara a seguire richieste, rispondere in modo ordinato e rifiutare compiti inappropriati.
- Apprendimento dal giudizio umano. In molte pipeline, persone valutano coppie di risposte indicando la migliore; queste preferenze vengono usate per orientare ulteriormente il comportamento del modello.
Il contesto: la memoria di lavoro
Tutto ciò che il modello "sa" durante una conversazione sta nella finestra di contesto: il testo della chat, le istruzioni di sistema, eventuali documenti allegati. Il modello non ricorda le conversazioni passate per conto proprio; se un servizio sembra ricordarle, è perché l'applicazione reinserisce quelle informazioni nel contesto.
All'interno del contesto entra in gioco il meccanismo di attenzione, introdotto con l'architettura chiamata Transformer. In parole semplici, per ogni token il modello valuta quanto sono rilevanti tutti gli altri token del testo. Nella frase "Ho messo il libro nello zaino perché era leggero", l'attenzione aiuta a collegare "era leggero" a "libro" o a "zaino" in base al contesto complessivo.
Cosa un modello linguistico non è
Comprendere il meccanismo aiuta anche a evitare aspettative sbagliate:
- non è un motore di ricerca: se non è collegato a fonti esterne, risponde con ciò che ha assorbito durante l'addestramento, che può essere incompleto o datato;
- non è un database di fatti verificati: produce testo plausibile, che di solito coincide con il vero ma non sempre;
- non ha intenzioni proprie: segue gli schemi appresi e le istruzioni ricevute.
| Caratteristica | Modello linguistico | Motore di ricerca |
|---|---|---|
| Cosa restituisce | Testo nuovo generato | Collegamenti a pagine esistenti |
| Fonte | Parametri appresi | Indice di documenti |
| Aggiornamento | Fino alla data di addestramento | Continuo |
| Rischio tipico | Affermazioni inventate | Fonti di bassa qualità |
Perché funziona così bene
Può sembrare strano che "prevedere la parola successiva" basti a scrivere codice, riassumere contratti o spiegare la fisica. Il punto è che, per prevedere bene il testo umano, il modello deve costruire al suo interno rappresentazioni utili di concetti, relazioni e procedure. Più dati, più parametri e un addestramento migliore portano a rappresentazioni più ricche. Non è comprensione nel senso umano, ma è una forma di competenza statistica molto potente.
In sintesi
- Un modello linguistico genera testo prevedendo un token alla volta in base al contesto.
- Impara da enormi quantità di testo, poi viene affinato per seguire istruzioni.
- La finestra di contesto è la sua unica memoria durante una conversazione.
- Produce testo plausibile, non necessariamente vero: le informazioni importanti vanno verificate.