Fine-Tuning · LLM LoRA On-Premise

LoRA: Addestramento a Matrice Ridotta per modelli AI on-premise

Come personalizzare un modello linguistico di grandi dimensioni con una GPU standard, pochi dati aziendali e senza inviare nulla in cloud. Guida pratica per PMI italiane.

Addestrare un modello AI da zero richiede migliaia di GPU e mesi di tempo — fuori dalla portata di qualsiasi PMI. Ma personalizzare un modello già esistente sul proprio dominio aziendale è un'altra storia. LoRA (Low-Rank Adaptation) è la tecnica che ha reso questo possibile su hardware accessibile: una singola GPU da gaming, pochi gigabyte di dati, qualche ora di addestramento. Il risultato è un modello che parla il linguaggio della tua azienda — letteralmente.

Il problema che LoRA risolve

I grandi modelli linguistici (LLM) come Llama 3, Mistral o Phi-4 vengono addestrati su enormi quantità di testo generico. Conoscono quasi tutto, ma non il tuo specifico dominio: il gergo tecnico dei tuoi macchinari, le clausole contrattuali standard del tuo settore, le procedure operative specifiche della tua azienda.

Il metodo tradizionale per specializzare un modello — il full fine-tuning — richiede di aggiornare tutti i miliardi di parametri del modello. Per un modello da 7 miliardi di parametri, questo significa:

LoRA risolve tutto questo con un'idea matematicamente elegante: invece di modificare i pesi originali del modello, aggiunge una piccola struttura ausiliaria che impara l'adattamento necessario.

Come funziona: la matematica semplificata

Ogni strato di un modello trasformer contiene matrici di pesi che trasformano i dati in ingresso. Queste matrici sono grandi — per un modello da 7B parametri, alcune possono avere dimensioni di 4096×4096, cioè oltre 16 milioni di valori per singolo strato.

L'intuizione chiave di LoRA: gli aggiornamenti necessari per l'adattamento a un nuovo dominio hanno una struttura a basso rango. Non serve modificare tutti i 16 milioni di valori — basta aggiungere due piccole matrici il cui prodotto approssima l'aggiornamento necessario.

W' = W + ΔW = W + B × A

L'aggiornamento ΔW viene scomposto nel prodotto di due matrici di rango ridotto

W = pesi originali (congelati, non modificati) A = matrice di proiezione discendente (d × r) B = matrice di proiezione ascendente (r × d) r = rango (tipicamente 4–64, molto minore di d)

Se il modello originale ha una matrice 4096×4096 (≈16M parametri), con rango r=16 bastano due matrici: 4096×16 + 16×4096 = circa 131K parametri. Una riduzione di oltre il 99% dei parametri da addestrare, con risultati spesso indistinguibili dal full fine-tuning.

I numeri concreti: hardware necessario

<1%

parametri addestrabili rispetto al full fine-tuning

16 GB

VRAM sufficienti per fine-tuning LoRA su modello 7B

2–8h

tempo tipico di addestramento su RTX 4090 con dataset aziendale

Metodo Full Fine-Tuning LoRA (r=16)
Parametri addestrabili (7B model)7.000.000.000~4.700.000
VRAM minima80+ GB (A100)16–24 GB (RTX 4090)
Tempo (500 esempi)Giorni2–8 ore
Costo hardware indicativo15.000–50.000€Hardware già disponibile
Rischio catastrophic forgettingAltoBasso (pesi originali intatti)
Deploy: dimensioni aggiuntiveNuovo modello completoSolo adapter (~50–200 MB)

LoRA vs RAG: quando usare quale

Prima di decidere se fare fine-tuning con LoRA, è importante capire la differenza con RAG (Retrieval Augmented Generation) — l'altro approccio principale per specializzare un modello su dati aziendali.

Regola pratica: se hai bisogno che il modello trovi e citi informazioni dai tuoi documenti, usa RAG. Se hai bisogno che il modello ragioni e risponda come un esperto del tuo dominio, considera LoRA. Spesso la combinazione ottimale è LoRA + RAG.

Aspetto RAG LoRA Fine-Tuning
Cosa faRecupera documenti rilevanti e li passa al modello come contestoModifica i pesi del modello per incorporare la conoscenza del dominio
Aggiornamento datiAggiorna il database vettoriale (veloce, nessun riaddestramente)Richiede nuovo addestramento LoRA (ore)
Citazione fontiCita sempre la fonte esattaNon cita, "sa" il dominio
Dataset necessarioDocumenti aziendali (qualsiasi quantità)Esempi input/output (min. 200–500)
Caso d'uso idealeRicerca in archivi, chatbot su documentiTono aziendale, gergo specifico, ragionamento su dominio
Complessità implementazioneBassa–MediaMedia–Alta

Casi d'uso LoRA per PMI italiane

Ecco quando il fine-tuning con LoRA porta un vantaggio reale rispetto al solo RAG:

Il processo pratico con Gaulin

Un progetto di fine-tuning LoRA on-premise segue questi passi:

1. Raccolta e preparazione del dataset

Il dataset di addestramento è la parte più critica. Servono esempi nel formato istruzione → risposta ideale. Per la maggior parte dei casi d'uso aziendali, bastano 200–1.000 esempi di alta qualità. Gaulin supporta la preparazione del dataset a partire dai vostri documenti esistenti.

2. Scelta del modello base e dei parametri LoRA

Si seleziona il modello base più adatto (Llama 3, Mistral, Phi-4 in base all'hardware disponibile) e si configurano i parametri LoRA: rango r, alpha, layer target. Per la maggior parte dei casi, r=16 con alpha=32 è un buon punto di partenza.

3. Addestramento on-premise

L'addestramento avviene interamente sui server dell'azienda usando tool come LLaMA-Factory o Axolotl. I dati aziendali non escono mai dalla rete. La durata tipica va da 2 a 8 ore su una RTX 4090.

4. Valutazione e deploy dell'adapter

Il risultato dell'addestramento è un piccolo adapter LoRA (file da 50–200 MB) che si carica sopra il modello base in Ollama o vLLM. Il modello base rimane invariato — l'adapter può essere aggiornato o rimosso senza impattare il resto del sistema.

Vuoi personalizzare un modello AI sul tuo dominio?

Valutiamo insieme se LoRA, RAG o una combinazione dei due è la scelta giusta per il tuo caso specifico. Analisi gratuita in 30 minuti.

Prenota la chiamata gratuita →

Domande frequenti su LoRA

LoRA è una tecnica di fine-tuning efficiente per modelli AI di grandi dimensioni. Invece di aggiornare tutti i miliardi di parametri del modello, LoRA introduce due piccole matrici di rango ridotto (A e B) per ogni strato da addestrare. Il prodotto A×B approssima l'aggiornamento necessario con una frazione dei parametri originali — tipicamente meno dell'1% — riducendo drasticamente la VRAM e il tempo di addestramento.

Con LoRA è possibile fare fine-tuning di modelli da 7B parametri (come Mistral o Llama 3 7B) con una singola GPU da 16–24GB VRAM, come una NVIDIA RTX 4090 o una A10G. Modelli da 13B richiedono circa 24–48GB VRAM. Senza LoRA, gli stessi modelli richiederebbero hardware 4–8 volte più costoso. Per piccoli dataset aziendali e modelli 7B, una RTX 4090 è spesso sufficiente.

LoRA conviene quando hai almeno 200–500 esempi di alta qualità nel tuo dominio e vuoi che il modello risponda con il gergo e il ragionamento specifico della tua azienda. Per la ricerca in documenti aziendali e la citazione delle fonti, RAG è più semplice da implementare e manutenere. LoRA ha senso quando il modello deve "pensare" nel linguaggio dell'azienda, non solo trovare informazioni. Spesso la combinazione ottimale è un modello fine-tunato con LoRA + RAG per i dati più aggiornati.

RAG aggiunge contesto al modello al momento della query recuperando documenti rilevanti e passandoli come input. LoRA modifica i pesi del modello durante una fase di addestramento preliminare. RAG è più flessibile e aggiornabile senza riaddestrare; LoRA produce un modello che incorpora la conoscenza del dominio nei propri parametri. Per i dati che cambiano spesso (normative, listini) usa RAG. Per il tono, il gergo e il ragionamento settoriale, LoRA è spesso superiore.

Sì, se l'addestramento avviene on-premise. Gaulin esegue il fine-tuning LoRA direttamente sui server del cliente: il dataset aziendale non viene mai inviato a server cloud di terze parti. Né durante l'addestramento né durante l'inferenza i dati escono dalla rete aziendale. Questa è la differenza fondamentale rispetto ai servizi di fine-tuning cloud di OpenAI, Google o AWS.