← Tutte le lezioni
Lezione 08 Fondamenti 7:07

Fine-tuning e LoRA

Specializzare un modello senza riaddestrarlo da zero. E la domanda che viene prima: ti serve davvero il fine-tuning, o basta un prompt migliore o un RAG?

Il video parte solo se lo chiedi: nessuna richiesta a YouTube prima del click.

Il fine-tuning prende un modello già addestrato e lo addestra ancora un po’, su un insieme di dati piccolo e curato, per specializzarlo. Il medico generico che frequenta una scuola di specializzazione: non dimentica la medicina generale, ci aggiunge competenza.

La domanda da farsi prima

Il fine-tuning è affascinante ed è quasi sempre la risposta sbagliata come primo tentativo. Vale la pena essere brutali con questa tabella:

Cosa vuoi ottenereFine-tuning?Cosa provare prima
Un tono o uno stile costante
Un formato di output rigidoforseesempi nel prompt
Aggiungere conoscenza specificaquasi maiRAG
Dati che cambiano nel temponoRAG
Andare meglio su un compito precisoprompt engineering

Regola d’oro: prima il prompt, poi il RAG, e solo se non bastano il fine-tuning. Il motivo è pratico: la conoscenza infilata dentro i pesi è congelata lì, aggiornarla costa un nuovo addestramento, e c’è il rischio di peggiorare capacità che il modello aveva già. Un archivio esterno lo aggiorni cambiando un file.

LoRA: ristrutturare senza demolire

Il fine-tuning completo riaddestra tutti i pesi: per un modello da 8 miliardi di parametri significa hardware da laboratorio. LoRALow-Rank Adaptation — cambia il gioco.

L’analogia è la ristrutturazione di casa. Invece di demolire e ricostruire, congeli la struttura portante e aggiungi modifiche mirate: una parete qui, un impianto là.

Tecnicamente: i pesi originali restano intatti e congelati, e accanto a loro si addestrano due matrici piccole che ne modificano il comportamento. I parametri da addestrare crollano — spesso sotto l’1% del totale — e con loro la memoria necessaria.

Il risultato è un file di poche decine di megabyte, l’adattatore, che si applica al modello originale al momento dell’uso. Puoi tenerne diversi e cambiarli come si cambiano le lenti.

QLoRA aggiunge un ulteriore passo: il modello base viene quantizzato a 4 bit e l’adattatore addestrato sopra. È la combinazione che ha portato il fine-tuning su hardware consumer.

Cosa serve davvero

Il collo di bottiglia non è la quantità di dati, è la loro qualità. Cinquecento esempi scritti bene e coerenti fra loro battono cinquemila esempi raccogliticci. Gli esempi devono somigliare a quello che vuoi ottenere: se ti serve un certo tono, tutti gli esempi devono avere quel tono, senza eccezioni.

L’errore classico è l’overfitting: il modello impara a memoria gli esempi invece di generalizzare. Si riconosce perché va benissimo sui dati di addestramento e male su tutto il resto. Antidoti: tenere da parte una fetta di dati per la verifica, fermarsi presto, non esagerare con i cicli di addestramento.

Va tenuto d’occhio anche il dimenticare catastrofico: specializzando troppo, il modello può perdere capacità generali che aveva. LoRA ne soffre meno del fine-tuning completo, proprio perché i pesi originali restano dove sono.

Come si capisce se è servito

La parte che manca a quasi tutti i tutorial: finito l’addestramento, come stabilisci che il modello è migliorato e non solo diverso? Servono tre misure, e vanno fatte tutte e tre.

MisuraComeA cosa risponde
Tenuta sul compitoSu esempi mai visti in addestramentoHa imparato o ha memorizzato?
Confronto col baseStessi esempi, modello di partenzaIl fine-tuning ha aggiunto qualcosa?
RegressioniPrompt generici fuori dal dominioHa perso capacità che aveva?

La terza è quella che si salta e che fa male: un modello specializzato benissimo può essere diventato inutile su tutto il resto. Bastano venti prompt generali, prima e dopo, per accorgersene.

La regola operativa: tieni fuori dall’addestramento il 10-20% degli esempi e usali solo per misurare. Se il risultato è ottimo sul materiale di addestramento e mediocre su quello tenuto da parte, hai un caso da manuale di sovra-adattamento.

Un modello, tante lenti

Conseguenza pratica del meccanismo: siccome i pesi originali restano intatti e l’adattatore è un file a parte, si possono tenere più adattatori e cambiarli a caldo sopra un unico modello caricato in memoria.

                     ┌── adattatore "tono aziendale"
modello base 8B  ────┼── adattatore "estrazione dati"
(caricato una volta) └── adattatore "classificazione ticket"

Su hardware limitato il vantaggio è evidente: invece di tre modelli specializzati da diversi gigabyte l’uno, un modello solo più tre file da poche decine di megabyte. È anche il modo giusto di pensare la specializzazione — non “un modello per ogni compito” ma “un modello, tante lenti”.

Quanto costa davvero

I tutorial mostrano il notebook che gira in venti minuti e lasciano credere che sia quello il lavoro. Il tempo vero è distribuito in modo molto diverso.

preparare e ripulire i dati    ████████████████████  60-70%
addestrare                     ████                  10%
valutare e confrontare         ██████                20%
esportare e integrare          ██                    5%

E non è un giro solo. Il primo tentativo serve quasi sempre a scoprire che i dati avevano un problema — esempi incoerenti, un formato sbagliato, casi troppo simili fra loro. Metti in conto tre giri prima di avere qualcosa di usabile.

Un modo per accorciare: parti in piccolo. Cento esempi e pochi cicli producono un modello mediocre, ma in mezz’ora ti dicono se la strada è giusta, se il formato regge e se la valutazione che hai preparato misura davvero quello che ti interessa. Meglio scoprire un errore di impostazione su cento esempi che su cinquemila.

La lista di controllo prima di partire

Cinque domande che fanno risparmiare giornate.

DomandaSe la risposta è no
Ho provato prompt migliori e non bastano?Torna al prompt: costa zero e spesso basta
Il problema è come risponde, non cosa sa?Se è conoscenza, serve il RAG
Ho almeno 300-500 esempi coerenti?Raccoglili prima: senza dati non si parte
Ho tenuto da parte esempi per la verifica?Falla ora, o non saprai se è migliorato
So dire in una frase cosa deve cambiare?Se non lo sai dire, il modello non lo indovina

L’ultima è la più sottovalutata. “Voglio che risponda meglio” non è un obiettivo addestrabile. “Voglio che risponda in massimo tre frasi, sempre citando l’articolo di riferimento, senza formule di cortesia” lo è — ed è anche il criterio con cui misurerai il risultato.

In sintesi

ConcettoIn una riga
Fine-tuningAddestrare ancora un modello già addestrato, su dati mirati
LoRACongela i pesi originali e addestra due piccole matrici accanto
QLoRALoRA su un modello base quantizzato a 4 bit: gira su hardware normale
AdattatoreIl file leggero prodotto, applicabile e sostituibile a piacere
Ordine giustoPrompt → RAG → fine-tuning, mai il contrario
ValutazioneTre misure: esempi nuovi, confronto col base, regressioni
Adattatori multipliUn modello caricato, tante specializzazioni intercambiabili
Il tempo veroDue terzi sui dati, un decimo sull’addestramento
Prima di partireCinque domande: se una risposta è no, il fine-tuning non è la mossa

Lezioni collegate

  • Pre-training, SFT e RLHF

    Un modello moderno nasce in tre fasi: impara la lingua, impara a rispondere, impara a rispondere bene. Ogni fase cambia radicalmente il suo comportamento.

  • La quantizzazione

    Ridurre la precisione dei numeri per far entrare un modello da miliardi di parametri in un portatile. Quanto si perde davvero, e dove conviene fermarsi.

Guarda su YouTube