Hai presente quando senti parlare di fine tuning e ti sembra sempre la stessa cosa raccontata in dieci modi diversi?
Full fine tuning, LoRA, QLoRA, RLHF, DPO, distillazione, merging.
In realtà non sono varianti dello stesso piatto: sono tecniche con obiettivi diversi, costi diversi e contesti d’uso diversi.
Metterle tutte nello stesso calderone è il modo più rapido per sbagliare la scelta.
In questo articolo le metto in fila dalla più invasiva alla più leggera, spiegando ogni volta cosa cambia davvero sotto il cofano, quanto costa e quando ha senso usarla.
Di cosa parleremo..
Cosa significa fare fine tuning, in una frase
Il fine tuning è la fase in cui si parte da un modello già pre-addestrato e lo si specializza su un compito o un dominio, aggiornando in tutto o in parte i suoi parametri. Prima c’è il pre-training, in cui il modello assorbe la lingua da enormi quantità di testo, poi il post-training, che lo rende un assistente utilizzabile.
Il fine tuning è il pezzo in cui un modello generico diventa bravo in qualcosa di preciso.
Vale la pena chiarire subito un equivoco: il fine tuning non è la stessa cosa del prompt engineering né del RAG. Con un prompt cambi l’istruzione e puoi avere un comportamento coerente (ma non consistente, può ancora allucinare molto), con il RAG aggiungi documenti o specifiche parti di essi al momento della risposta (comportamento consistente con allucinazioni estremamente ridotte), ma in entrambi i casi il modello resta quello di prima con i relativi consumi.
Con il fine tuning, invece, il modello cambia davvero, perché cambiano i numeri che lo fanno funzionare.
TIP: prima di pensare al fine tuning, chiediti se ti basta un prompt ben scritto o un RAG. Moltissimi problemi come “il modello non conosce il mio settore” si risolvono in dieci minuti con il contesto giusto, senza addestrare nulla.
La mappa: cinque famiglie di tecniche
Quasi tutto quello che leggerai qui ricade in cinque famiglie. Tenerle a mente aiuta a non confondere una tecnica di ottimizzazione dei costi con una tecnica di allineamento del comportamento.
- Full fine tuning: aggiorna tutti i pesi del modello. È il metodo da manuale.
- PEFT (parameter-efficient fine tuning): aggiorna pochissimi parametri aggiunti. Comprende adattatori, LoRA e prompt tuning.
- Fine tuning supervisionato: SFT e instruction tuning, costruiti su coppie di input e output attesi.
- Allineamento con rinforzo: RLHF, RLAIF, DPO, ORPO, GRPO. Qui l’obiettivo è far seguire al modello preferenze e comportamenti desiderati.
- Distillazione e merging: tecniche trasversali che non seguono il classico ciclo di training.

Full fine tuning: il metodo da manuale
Nel full fine tuning aggiorni tutti i pesi del modello, senza trucchi. È il metodo storicamente più diretto e ancora oggi il più potente quando hai dati abbondanti e budget hardware serio: il modello può cambiare in profondità, non solo aggiungere un comportamento in superficie.
I costi, però, sono reali e su tre fronti.
Primo, l’addestramento: servono GPU con molta memoria e tempi lunghi e ogni errore sui dati si paga caro.
Secondo, lo storage: ogni esperimento produce una copia completa del modello, che per un modello grande sono decine di gigabyte.
Terzo, il serving: se hai cinque task diversi e hai fatto full fine tuning cinque volte, in produzione dovrai gestire cinque copie separate del modello.
C’è poi il rischio classico, il catastrophic forgetting: se il dataset è piccolo o troppo specifico, il modello migliora sul compito ma peggiora su tutto il resto, dimenticando competenze generali che prima padroneggiava.
TIP: il full fine tuning ha senso quando il nuovo compito è molto diverso da quello per cui il modello è nato, oppure quando hai milioni di esempi di qualità. Per ritoccare lo stile o il formato, di solito è uno spreco di risorse.
Continued pre-training e domain adaptation
Il continued pre-training (o domain adaptation) assomiglia al fine tuning, ma cambia la natura dei dati. Qui non dai coppie di domanda e risposta: continui a far “leggere” il modello su un corpus di dominio, per esempio documenti legali, cartelle cliniche o manuali tecnici. L’obiettivo non è insegnargli un compito, ma fargli assorbire il vocabolario, le convenzioni e i concetti di quel mondo.
È spesso il passo che precede un fine tuning supervisionato. Prima il modello impara la lingua del dominio, poi impara a rispondere bene su quel dominio. La dose conta: troppo continued pre-training e rischi di sbilanciare il modello verso il nuovo corpus, con le stesse conseguenze del catastrophic forgetting.
Instruction tuning: insegnare a rispondere
L’instruction tuning è un fine tuning supervisionato fatto con una forma particolare di dati: istruzioni e risposte attese. È il passaggio che trasforma un modello grezzo, capace solo di completare frasi, in un assistente che risponde a una richiesta. Quando un modello “non segue le istruzioni” o “ignora il formato richiesto”, il colpevole quasi sempre è un instruction tuning debole o assente.
Da qui deriva anche la SFT, la supervised fine tuning in senso stretto: dataset puliti, esempi rappresentativi, output di alta qualità. La regola d’oro è banale ma viene dimenticata spesso: la qualità batte la quantità.
Mille esempi eccellenti valgono più di centomila esempi sciatti, perché il modello imita anche gli errori e le incoerenze che trova nei dati.
Adattatori e prompt tuning: cambiare senza toccare il modello
La famiglia PEFT (messa a punto efficiente dei parametri) nasce da una constatazione pratica: per specializzare un modello non serve riscrivere miliardi di parametri. Gli adattatori aggiungono piccoli moduli a collo di bottiglia tra i layer esistenti e addestrano solo quelli, lasciando il modello base congelato.
Il prompt tuning e il prefix tuning vanno ancora più in là: non aggiungono layer, ma imparano dei vettori di attivazione che vengono anteposti all’input, come un prompt invisibile scritto non a parole ma in numeri.
Il vantaggio comune è la modularità: un solo modello base in memoria, tanti piccoli artefatti per tanti compiti, da caricare e scaricare a seconda della richiesta.
Il limite è che queste tecniche tendono a funzionare meglio su compiti di adattamento leggero che su cambiamenti profondi di comportamento.
LoRA: il fine tuning che pesa poco
LoRA (Low-Rank Adaptation) è oggi la tecnica PEFT più usata e la ragione è semplice: ottiene buona parte dei benefici del full fine tuning con una frazione dei costi. L’idea è che l’aggiornamento dei pesi durante il fine tuning abbia una struttura interna semplice, catturabile da matrici di rango basso. Così, invece di aggiornare una matrice enorme, LoRA ne addestra due piccole il cui prodotto approssima la modifica.
In pratica il modello base resta congelato e tu addestri solo queste matrici, che pesano pochi megabyte. In produzione puoi tenere i due pezzi separati e sommarli al volo, oppure fondere le matrici nel modello base e ottenere un modello unico senza alcun costo extra a runtime.
Se vuoi il confronto numerico tra full, LoRA e QLoRA, l’ho già fatto in un articolo dedicato: tipi di fine tuning a confronto.
QLoRA, DoRA e le varianti
QLoRA è la versione che ha reso il fine tuning accessibile a chi non ha un data center. Prima di addestrare, quantizza il modello base a 4 bit (formato NF4), riducendone drasticamente l’occupazione di memoria, poi applica LoRA sopra la versione compressa. Con QLoRA si riesce ad addestrare modelli enormi su una singola GPU, con una perdita di qualità contenuta e controllabile.
Attorno a LoRA è nata una famiglia di varianti.
DoRA separa magnitudine e direzione dei pesi e le addestra separatamente, con risultati spesso migliori.
LoRA+ usa tassi di apprendimento diversi per le due matrici.
IA3 moltiplica delle attivazioni con vettori appresi, riducendo ulteriormente il numero di parametri.
Sono migliorie di secondo livello: se non hai ancora scelto la tecnica base, non è da qui che devi partire.
Il fine tuning con il rinforzo: RLHF, DPO e soci
Qui cambia la domanda. Non ti interessa solo cosa il modello sa, ma come si comporta: se è utile, se evita contenuti pericolosi, se rispetta lo stile che vuoi. Questa è la fase di allineamento e si appoggia al reinforcement learning.
Il metodo storico è il RLHF (Reinforcement Learning from Human Feedback): si addestra un modello a prevedere le preferenze umane su coppie di risposte e poi si usa questa “guida” per migliorare il modello con un algoritmo come PPO. Funziona molto bene, ma è complesso, instabile e delicato da calibrare. Il RLAIF sostituisce in parte il feedback umano con quello di un altro modello, riducendo costi e tempi.
Negli ultimi anni si è diffusa una scorciatoia elegante: il DPO (Direct Preference Optimization) impara direttamente dalle coppie di preferenze, senza costruire un modello di ricompensa separato. Più semplice da addestrare e più stabile. Da lì sono nate varianti come ORPO, IPO e KTO, ognuna con un modo diverso di trattare le preferenze. Nel campo del ragionamento si usa molto il GRPO, che confronta più risposte generate dallo stesso modello e premia quelle migliori, tecnica centrale nei modelli che “pensano” prima di rispondere.
TIP: non confondere SFT e alignment. Con la SFT insegni al modello cosa rispondere, con l’RLHF e il DPO gli insegni cosa preferire. Sono due mestieri diversi, spesso complementari.

Distillazione: imparare dall’insegnante
La distillazione è un’altra bestia ma è una delle mie preferite. Qui non vuoi che un modello migliori: vuoi creare un modello più piccolo, più veloce ed economico che faccia solo una parte di quello che fa il grande ma che lo faccia benissimo.
Si prende un modello “insegnante” già addestrato e lo si usa per generare dati o per guidare un modello “studente” più compatto.
Esistono diverse varianti.
Nella distillazione classica lo studente imita le distribuzioni di probabilità dell’insegnante, non solo la risposta finale e da qui impara più di quanto imparerebbe dalle sole etichette.
Nella distillazione black box, dove non hai accesso agli interni, ti limiti alle risposte testuali.
La mia combo preferita è quella teacher+RAG => JEV => student / student + RAG
Il risultato è un modello più leggero che conserva gran parte delle capacità del maestro ma che è bravissimo in un compito specifico, ed è il motivo per cui oggi girano modelli sorprendentemente bravi su hardware modesto.
Model merging: unire pesi invece di addestrare
Il model merging è la tecnica più controintuitiva della lista. Se hai due modelli fine-tuned che sono bravi in cose diverse, non devi riaddestrare nulla: puoi combinarne i pesi.
Tecniche come SLERP interpolano i pesi, TIES e DARE riducono le interferenze tra i parametri, la task arithmetic somma e sottrae “direzioni” di capacità.
Costa quasi zero, perché non è addestramento ma aritmetica sui pesi e in certi casi produce un modello che regge bene su più compiti contemporaneamente. Non è magia: funziona quando i modelli di partenza condividono la stessa base, altrimenti si ottiene un risultato incoerente.
Linear probing e transfer learning classico
Il linear probing è l’antenato delle tecniche PEFT (messa a punto efficiente dei parametri). Congeli l’intero modello pre-addestrato e addestri solo un piccolo classificatore applicato alle sue rappresentazioni interne. È rapidissimo e sorprendentemente efficace, perché le rappresentazioni apprese durante il pre-training sono già molto ricche. Non serve per far “parlare” un modello in un certo modo, ma è perfetto per capire in pochi minuti quanto un modello è adatto a un certo tipo di dato.
Quale tecnica scegliere: confronto rapido
La tabella seguente riassume le differenze operative tra le tecniche principali.
| Tecnica | Cosa modifica | Costo | Quando usarla |
|---|---|---|---|
| Full fine tuning | Tutti i pesi | Alto | Compito molto diverso, dati abbondanti |
| Continued pre-training | Tutti i pesi su un corpus di dominio | Alto | Vocabolario e concetti di un settore |
| Instruction tuning / SFT | Tutti o parte dei pesi | Medio | Far seguire istruzioni e formati |
| Adattatori | Piccoli moduli aggiunti | Basso | Molti compiti su un solo modello base |
| Prompt e prefix tuning | Vettori di prompt appresi | Molto basso | Adattamenti leggeri, esperimenti rapidi |
| LoRA | Due matrici a rango basso | Basso | Standard de facto del fine tuning pratico |
| QLoRA | LoRA su modello a 4 bit | Molto basso | Modelli grandi su una sola GPU |
| RLHF / DPO / GRPO | Pesi in base a preferenze | Medio-alto | Comportamento, sicurezza, stile |
| Distillazione | Crea un modello nuovo e più piccolo | Medio | Ridurre costi e latenza |
| Model merging | Combina pesi esistenti | Quasi nullo | Unire capacità di modelli diversi |
Fine tuning o RAG?
Questa è la domanda che dovresti porti prima di ogni altra e la risposta più comune è “entrambi, ma non nello stesso ordine“. Se il problema è che il modello non conosce informazioni aggiornate o specifiche della tua azienda, il RAG è quasi sempre la scelta giusta: aggiorni i documenti, non il modello.
Se invece il problema è che il modello non si comporta come vorresti, che sbaglia formato, tono o procedura, allora il fine tuning è la strada.
Nella pratica i due si combinano: fine tuning per insegnare il comportamento, RAG per fornire la conoscenza. Un modello addestrato a usare bene il contesto, alimentato da documenti sempre aggiornati, fa molto più di ciascuna delle due cose da sola.
TIP: la domanda giusta non è “il fine tuning può risolvere questo?”, ma “il modello sta sbagliando perché non sa una cosa o perché non si comporta come voglio?”. Le due risposte portano a tecniche diverse.
Domande frequenti
Qual è la tecnica di fine tuning più usata oggi?
LoRA, spesso in versione QLoRA. Costi bassi, buoni risultati e artefatti di pochi megabyte l’hanno resa lo standard de facto per chi non addestra modelli da zero.
LoRA è peggio del full fine tuning?
Su compiti di adattamento leggero la differenza è trascurabile, spesso a favore di LoRA per via della minore tendenza a dimenticare. Su cambiamenti profondi e con moltissimi dati, il full fine tuning può ancora dare qualcosa in più.
Che differenza c’è tra SFT e RLHF?
La SFT insegna al modello cosa rispondere imitando esempi, l’RLHF e il DPO gli insegnano cosa preferire confrontando alternative. La prima è imitazione, la seconda è ottimizzazione di preferenze.
La distillazione è un tipo di fine tuning?
In senso stretto no: il fine tuning adatta un modello esistente, la distillazione ne crea uno nuovo e più piccolo a partire da uno più grande. Si combinano spesso, perché lo studente di oggi può essere il modello che domani farai fine-tune.
Posso fare fine tuning senza una GPU costosa?
Sì. Con QLoRA e un modello di dimensioni contenute si lavora su una singola GPU consumer. Aiuta anche partire da dataset piccoli ma di alta qualità: il collo di bottiglia raramente è l’hardware, quasi sempre sono i dati.
Se stai muovendo i primi passi e vuoi capire la struttura di un modello prima di scegliere la tecnica, ti conviene partire dalle basi: cosa sono i parametri di un modello e la differenza tra modello e algoritmo. Sono i due mattoni su cui poggia tutto il resto.


