PassioniInformaticaAI e GPU

Guida: Fine-tuning di un LLM su dati custom

04/03/2026

Addestrare il modello sui tuoi dati

Il fine-tuning adatta un modello pre-addestrato al tuo dominio specifico: terminologia, stile, conoscenze proprietarie.

1. Quando fare fine-tuning

  • Il RAG non basta (serve cambiare lo stile/comportamento)
  • Task molto specifico (classificazione, estrazione dati)
  • Serve un modello più piccolo e veloce per un compito preciso

2. Preparare il dataset

# Formato JSONL (una riga per esempio)
{"messages": [{"role": "system", "content": "Sei un esperto di sicurezza."}, {"role": "user", "content": "Cos e un firewall?"}, {"role": "assistant", "content": "Un firewall e un sistema di sicurezza che..."}]}
{"messages": [{"role": "user", "content": "Come configuro SSH?"}, {"role": "assistant", "content": "Per configurare SSH in sicurezza..."}]}

3. Fine-tuning con Unsloth (efficiente)

from unsloth import FastLanguageModel

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name="unsloth/llama-3.2-8b-bnb-4bit",
    max_seq_length=2048,
    load_in_4bit=True
)

model = FastLanguageModel.get_peft_model(model,
    r=16, lora_alpha=16,
    target_modules=["q_proj","k_proj","v_proj","o_proj"],
    lora_dropout=0, bias="none"
)

# Training con il tuo dataset
from trl import SFTTrainer
trainer = SFTTrainer(
    model=model, tokenizer=tokenizer,
    train_dataset=dataset,
    max_seq_length=2048,
    args=TrainingArguments(
        per_device_train_batch_size=2,
        num_train_epochs=3,
        learning_rate=2e-4,
        output_dir="outputs"
    )
)

4. Esportare per Ollama

# Salvare in GGUF
model.save_pretrained_gguf("modello-custom", tokenizer, quantization_method="q4_k_m")

# Creare Modelfile per Ollama
# FROM modello-custom-q4_k_m.gguf
ollama create mio-modello -f Modelfile

Il fine-tuning con LoRA richiede meno VRAM del training completo: un modello 7B si addestra su una singola RTX 3060 da 12 GB.

← Guida: Open WebUI — interfaccia chat per Ollama Guida: NVIDIA Container Toolkit per Docker →
← Torna all'elenco