Logo VRAMfarm VRAMfarm
IT
Registrati

12 novembre 2026 · Team VRAMfarm

Addestrare una LoRA Flux con le tue foto: 20 immagini, 24 GB e circa due ore

Una griglia di venti ritratti che entra in una GPU ed esce come un piccolo file LoRA: addestrare una LoRA Flux con le tue foto

Venti buone foto, circa 2.000 step di training e una scheda da 24 GB: è tutto ciò che serve a una LoRA di somiglianza per Flux.1 dev. Su una RTX 4090 a noleggio il training vero e proprio dura da 1 a 2,5 ore, e un primo tentativo con configurazione e immagini di prova arriva a circa 1,24 € di tempo GPU. La maggior parte delle LoRA venute male fallisce prima che parta la GPU, su foto e didascalie, quindi quei due passaggi meritano la stessa cura dei comandi.

Il dataset: quante foto e quali

Per una persona, l’intervallo utile è 15–30 foto. Con meno di 10 il modello non riesce a separare il tuo volto dall’illuminazione di quegli scatti precisi. Oltre 40 raramente aiuta e rende più difficile mantenere la qualità uniforme. Venti foto nitide e varie battono cento foto simili.

Com’è fatto un buon set:

  • Varietà dove vuoi flessibilità. Angolazioni diverse (frontale, tre quarti, profilo), luce (giorno, interni, sera), sfondi, vestiti ed espressioni. Tutto ciò che resta costante nel set finisce dentro la LoRA. Se in 15 foto indossi lo stesso maglione nero, quel maglione te lo ritrovi in ogni immagine.
  • Soprattutto testa e spalle, qualche mezzo busto e figura intera. Circa due terzi di primi piani danno al volto abbastanza pixel; il resto insegna le proporzioni.
  • Solo tu nell’inquadratura. Ritaglia via le altre persone, o lascia fuori la foto. Un secondo volto confonde il training più di qualsiasi altra cosa.
  • Niente filtri pesanti, modalità bellezza o upscale con l’IA. La LoRA impara il filtro come parte del tuo volto.
  • Almeno 1024 pixel sul lato corto dopo il ritaglio. Le foto del telefono vanno bene. Le immagini piccole vengono ingrandite dal trainer e risultano morbide.

Non serve ritagliare tutto in quadrato: ai-toolkit e kohya dividono le immagini in bucket per proporzioni. Metti le immagini in una sola cartella dal nome neutro, come dataset, con nomi di file come 01.jpg, 02.jpg. Il tuo nome non deve stare nei nomi dei file che si trovano su una macchina a noleggio.

Per una LoRA di stile (uno stile di illustrazione, il look di un prodotto) valgono più o meno gli stessi numeri: 20–50 immagini che condividono lo stile e cambiano soggetto.

Didascalie e trigger word

Ogni immagine ha un file di testo con lo stesso nome (01.txt accanto a 01.jpg). La didascalia dice al modello quale parte dell’immagine è il nuovo concetto e quale è ordinaria.

Scegli una trigger word che non significhi ancora nulla, come annx o mrkv. Una parola vera come “anna” ha già un significato nel modello e combatte contro il tuo training. Poi scrivi didascalie brevi che citano la trigger word e descrivono ciò che cambia da una foto all’altra:

photo of annx, a woman with curly hair, smiling, sitting at a cafe table, daylight
photo of annx, close-up portrait, serious expression, dark background

Due regole decidono gran parte del risultato. Descrivi le cose che vuoi poter cambiare (vestiti, sfondo, luce), perché ciò che è descritto viene trattato come separato dal concetto. Non descrivere il volto nel dettaglio, perché è proprio quello che la trigger word deve assorbire.

Flux qui è indulgente. Didascalie con il solo photo of annx funzionano sorprendentemente bene per un singolo volto, e molti addestrano così. Le didascalie dettagliate aiutano quando il set è disomogeneo o quando in seguito vuoi cambiare liberamente vestiti e ambientazioni. I captioner automatici (FluxGym usa Florence-2; JoyCaption è molto diffuso) ti risparmiano di scrivere, ma leggi il risultato e togli tutto ciò che è sbagliato, soprattutto le descrizioni del volto.

ai-toolkit, FluxGym o kohya: quale trainer

Sono tutti e tre gratuiti e girano su un server vuoto con PyTorch e Jupyter.

Trainer Come si usa Adatto per Preset di VRAM
ai-toolkit (Ostris) Un config YAML e un comando; interfaccia web opzionale I migliori default per Flux, immagini di esempio durante il training, anche FLUX.2, Qwen-Image, Wan Config da 24 GB; opzione low_vram per meno
FluxGym Una semplice pagina web: carichi, scrivi le didascalie, addestri Prima LoRA, nessun file di configurazione Preset da 12, 16 e 20 GB
kohya sd-scripts Riga di comando con molte opzioni Controllo fine, gli script che FluxGym usa sotto Qualsiasi, con fp8 e block swapping

Se ti trovi bene con il terminale, prendi ai-toolkit: il suo config di esempio train_lora_flux_24gb.yaml è un punto di partenza sensato e produce immagini di esempio ogni qualche centinaio di step, che è il modo per scegliere il checkpoint migliore. FluxGym è più semplice per un primo tentativo, soprattutto su una scheda da 16 GB.

Entrambi addestrano su Flux.1 dev. Su Hugging Face è un modello ad accesso riservato: per ai-toolkit, accetta la licenza nella pagina del modello e crea un token di lettura; FluxGym scarica i file del modello al primo avvio, come descritto nel suo README. I pesi di Flux.1 dev hanno una licenza non commerciale; controlla i termini aggiornati prima di usare le immagini per lavori a pagamento. Se per te conta, ai-toolkit può addestrare su Flux.1 schnell (Apache 2.0) con un training adapter.

VRAM, tempi e costi per scheda

Flux.1 dev ha 12 miliardi di parametri, circa 24 GB in bf16. I trainer lo caricano a 8 bit, il che dimezza quel valore e lascia spazio alla LoRA, all’ottimizzatore e alle immagini a 1024 px. Per questo 24 GB è la dimensione comoda. Con 16 GB il trainer sposta anche blocchi del modello nella RAM di sistema e indietro a ogni step: funziona, ma va sensibilmente più piano.

Un training tipico: 20 foto, 2.000 step, rank 16, bucket di risoluzione fino a 1024 px.

Scheda VRAM Durata del training (intervallo) Costo del training a metà intervallo
RTX 4080, RTX 5080 (trucchi per 16 GB) 16 GB 3–6 h 1,40 € su una RTX 4080
RTX 3090 24 GB 2,5–4 h 0,90 €
RTX 4090 24 GB 1–2,5 h 0,89 €
RTX 5090 32 GB 0,8–1,6 h 0,84 €
H100 80 GB 0,5–1 h 2,93 €

Prendi i tempi come intervalli per pianificare, non come benchmark: risoluzione, rank, numero di immagini di esempio e versione del trainer li spostano. Addestrare solo a 512 px dimezza circa il tempo, con meno dettaglio fine. Una H100 è la più veloce ma raramente la più economica; una LoRA è un lavoro troppo piccolo per sfruttarla tutta. La RTX 4090 e la RTX 3090 sono le scelte abituali, e la 3090, più economica, spesso vince sul prezzo per LoRA quando non guardi l’orologio. La pagina dei prezzi riporta le tariffe attuali.

Sugli step: circa 100 step per foto è un buon inizio, quindi 1.500–2.500 per un set di 15–25. Learning rate 1e-4 e rank 16 (i default di ai-toolkit) vanno bene per i volti. Salva un checkpoint ogni 250 step e giudica dai sample. Il migliore spesso non è l’ultimo.

Avviare il training su un server a noleggio

Avvia un server vuoto PyTorch + Jupyter su una scheda da 24 GB. Driver e versione CUDA della macchina sono mostrati prima dell’avvio; i trainer attuali vogliono CUDA 12.x o più recente, quindi controllalo lì. Apri Jupyter → File → New → Terminal, oppure collegati via SSH (guida alla chiave SSH).

Carica la cartella dataset con il pulsante di upload di Jupyter (prima comprimila in zip, poi unzip dataset.zip). Poi installa ai-toolkit, seguendo il suo README per le versioni esatte:

cd /workspace
git clone https://github.com/ostris/ai-toolkit
cd ai-toolkit
pip install -r requirements.txt
echo "HF_TOKEN=<your read token>" > .env
cp config/examples/train_lora_flux_24gb.yaml config/annx.yaml

In config/annx.yaml imposta name, trigger_word: "annx", folder_path: "/workspace/dataset", steps: 2000 e i prompt di esempio (usaci la tua trigger word). Poi avvialo dentro tmux, così continua a girare quando chiudi il browser:

tmux new -s lora
python run.py config/annx.yaml
# stacca la sessione con Ctrl+B, poi D; per tornare: tmux attach -t lora

Il primo avvio scarica Flux.1 dev e i suoi text encoder, circa 30–35 GB. Quei minuti si pagano, e i gigabyte contano come traffico alla tariffa della macchina indicata prima dell’avvio. Checkpoint e immagini di esempio compaiono in /workspace/ai-toolkit/output/<name>/. Apri i sample in Jupyter man mano che arrivano; se allo step 1.250 sembrano già giusti, puoi fermarti prima.

FluxGym fa girare una pagina web su una sua porta. Su un server vuoto PyTorch dall’esterno sono raggiungibili solo SSH e Jupyter, quindi apri FluxGym con un tunnel SSH (ssh -L 7860:localhost:7860 ... con host e porta presi da I miei server) e visita http://localhost:7860 sul tuo computer.

Un training tiene occupata la GPU, quindi la protezione dall’inattività lo lascia stare. Quando finisce, la GPU si quieta. Se stai dormendo e non c’è niente collegato, dopo circa due ore ricevi un avviso di inattività, e un’ora dopo il server salva /workspace e si ferma (la cartella di un server PyTorch si può salvare; dove il salvataggio non è possibile ricevi solo gli avvisi). Quelle ore di inattività si pagano. Per fermarti proprio alla fine, aggiungi una chiamata all’API dopo python run.py, o metti semplicemente una sveglia.

Le tue foto su una macchina a noleggio

È la domanda che si fa sottovoce, quindi ecco una risposta diretta.

Le nostre GPU arrivano da host verificati, non da data center di nostra proprietà. Prima dell’avvio vedi il paese della macchina. Il tuo server gira in un container suo, separato dagli altri clienti, e il suo disco viene cancellato quando il server si ferma. L’host gestisce il computer fisico, e chiunque abbia il controllo fisico di una macchina in linea di principio può leggere ciò che contiene. Vale per qualsiasi server a noleggio, da un marketplace a un grande cloud, ed è questo il rischio che stai valutando.

Per un set di ritratti, queste abitudini lo riducono a pochissimo:

  • Togli i metadati prima di caricare. Le foto del telefono contengono coordinate GPS e nome del dispositivo. exiftool -all= *.jpg sul tuo computer li rimuove.
  • Carica solo il set di training, non la tua libreria di foto, e usa nomi di file neutri.
  • Cancella il dataset a training finito (rm -rf /workspace/dataset /workspace/dataset.zip), soprattutto prima di Salva e ferma, così le foto non restano nella cartella salvata.
  • Tratta la LoRA come una tua foto. Riproduce il tuo volto a richiesta. Non pubblicarla se non è quello che vuoi.
  • Scegli il paese della macchina se per te conta; è indicato prima dell’avvio.

Le foto di altre persone richiedono il loro consenso. Per il GDPR un volto riconoscibile è un dato personale, e un modello che genera nuove immagini di qualcuno va oltre la condivisione di una foto. Chi può vedere cosa lo trovi in i miei dati sono al sicuro su una GPU a noleggio?.

Conservare la LoRA e usarla in ComfyUI

Una LoRA Flux a rank 16 pesa circa 100–170 MB, a rank 32 circa il doppio. Scarica da Jupyter il checkpoint che ti è piaciuto (tasto destro → Download), così ne hai una copia a casa. Poi, in /workspace/ai-toolkit/output/<name>/, cancella i checkpoint che non ti servono e usa Salva e ferma. La cartella salvata conserva /workspace per il prossimo server, anche su un’altra scheda, a 0,03 € per GB al mese; qualche LoRA insieme sta ben sotto il gigabyte. Flux.1 dev sta nella cache di Hugging Face fuori da /workspace, quindi non viene archiviato e non aggiunge 30 GB al tuo conto. I dettagli sono in cosa succede ai tuoi file quando fermi una GPU.

Per generare, avvia ComfyUI, metti il file in /workspace/ComfyUI/models/loras, aggiungi un nodo LoraLoader tra il modello e il sampler e usa la trigger word nel prompt. L’app pronta Flux usa Flux.1 schnell, dove una LoRA dev funziona ma ti somiglia meno; per la piena somiglianza scarica Flux.1 dev in ComfyUI. La guida a ComfyUI mostra dove va ogni file e come scaricare Flux dev con il tuo token.

Parti con una forza di 0,8–1,0. Se ogni immagine assomiglia alle tue foto più che a te in una scena nuova, abbassa la forza o torna a un checkpoint precedente. Se la somiglianza è debole, alzala, oppure addestra altri 500 step.

Domande sull’argomento

La mia LoRA funziona nell'app pronta Flux?

L'app usa Flux.1 schnell. Una LoRA addestrata su Flux.1 dev di solito si carica in schnell, ma la somiglianza è più debole. Per il risultato migliore scarica tu Flux.1 dev in ComfyUI, oppure addestra su schnell con il training adapter per schnell di ai-toolkit.

Posso addestrare una LoRA con le foto del mio partner o di un cliente?

Tecnicamente sì, ma prima chiedi un consenso chiaro, meglio se per iscritto. Un volto è un dato personale, e una LoRA che riproduce l'aspetto di qualcuno può essere usata in modi in cui una singola foto non può.

Come capisco se la LoRA è sovraddestrata?

Tutti i sample cominciano ad assomigliarsi: una sola espressione, gli sfondi e i vestiti delle tue foto, pelle troppo nitida o colori bruciati. Torna a un checkpoint precedente, di solito quello di 250–500 step prima.

Posso addestrare allo stesso modo una LoRA per FLUX.2 o Qwen-Image?

ai-toolkit li supporta entrambi, con i loro config di esempio. Sono modelli più grandi (Qwen-Image ha circa 20 miliardi di parametri, FLUX.2 dev circa 32 miliardi), quindi 24 GB funzionano solo con una quantizzazione più spinta e l'offloading; una scheda da 48 GB o più è la scelta comoda. Controlla gli esempi aggiornati del trainer per i preset di memoria esatti.

Trova la GPU in cui entra il tuo modello

Scegli un modello e vedi la scheda più economica con VRAM sufficiente, con fatturazione al minuto in euro.