Risorse/Addestramento del modello/Dalle chat agli esempi di addestramento

Concetto

Ruoli dei messaggi

Come una conversazione viene archiviata sotto forma di messaggi di sistema, utente e assistente, e come questi ruoli diventano il singolo flusso di token che un modello legge effettivamente.

Capitolo 3Lettura di 3 min4 riferimenti

I tre ruoli

Una chat viene archiviata come un elenco di messaggi e ogni messaggio ha un ruolo che indica da chi proviene:

  • system — istruzioni permanenti che inquadrano l'intera conversazione: chi è l'assistente, cosa dovrebbe e non dovrebbe fare. Scritte da chi implementa il modello, non pronunciate da nessuno nella chat.
  • user — ciò che la persona ha chiesto o detto.
  • assistant — ciò che il modello ha risposto.

Alcuni provider utilizzano altri nomi per lo stesso concetto — model invece di assistant, un campo separato per le istruzioni di sistema o developer per le istruzioni — e alcuni aggiungono un ruolo tool per i risultati restituiti dalle funzioni richiamate dal modello. La struttura è la stessa.

Cosa legge effettivamente il modello

Un modello legge un'unica sequenza piatta di token, non un elenco di oggetti. Un template di chat converte i messaggi in quella sequenza, inserendo token speciali che indicano dove inizia e finisce ogni turno e a chi tocca. Il modello ha appreso questi marcatori durante l'instruction tuning. È così che sa che l'utente ha finito, che è il suo turno di parlare e quando fermarsi.

Messaggi, come archiviati
systemLei è l'assistente di supporto.
userCome posso reimpostare la mia password?
assistantApra Impostazioni → Sicurezza e scelga Reimposta password.
Cosa legge il modello
<|im_start|>system
You are the support assistant.<|im_end|>
<|im_start|>user
How do I reset my password?<|im_end|>
<|im_start|>assistant
Open Settings → Security and choose
Reset password.<|im_end|>
A sinistra: i messaggi come archiviati. A destra: la stessa chat dopo il template di chat del modello, qui un template in stile ChatML utilizzato da alcune famiglie di modelli aperti. Marcatori speciali indicano al modello di chi è il turno e dove finisce ogni turno.

Ogni famiglia di modelli ha il proprio template. Utilizzarne uno sbagliato, o non utilizzarne affatto, produce un input che il modello non ha mai visto in quella forma, e la qualità cala drasticamente. I servizi di addestramento in hosting applicano il template corretto per Lei; per i modelli aperti, librerie come Hugging Face Transformers lo archiviano insieme al tokenizer.

Come i ruoli plasmano l'addestramento

Nel fine-tuning supervisionato i ruoli decidono cosa viene appreso. Il modello viene addestrato a produrre messaggi assistant; i messaggi system e user sono il contesto che legge ma che non è addestrato a scrivere. Ecco perché un dataset di chat insegna al modello a rispondere come il Suo assistente piuttosto che a fare domande come i Suoi utenti.

I ruoli spiegano anche perché il prompt di sistema è così importante. Un modello sottoposto a fine-tuning con un particolare messaggio di sistema apprende il proprio comportamento in presenza di quel messaggio, e si comporta in modo più simile al modello addestrato quando riceve le stesse istruzioni in fase di esecuzione.

Una chat, tre ruoli
  1. system: “Sei l'assistente di supporto per un prodotto di fatturazione. Rispondi con brevi passaggi numerati.”
  2. user: “Come aggiungo una partita IVA a una fattura?”
  3. assistant: “1. Apri Impostazioni → Azienda. 2. Inserisci la partita IVA. 3. Salva — ora apparirà sulle nuove fatture.”
  4. Nell'addestramento, i primi due messaggi fungono da contesto. Il terzo è ciò che il modello impara a scrivere, dato quel contesto.

Regole imposte dalla maggior parte dei formati di addestramento

  • I turni si alternano tra utente e assistente.
  • Dopo qualsiasi messaggio di sistema, la conversazione inizia con l'utente.
  • Di solito c'è un solo messaggio di sistema, all'inizio.
  • Un record termina con un messaggio dell'assistente se deve insegnare qualcosa.

Errori comuni

  • Inserire le istruzioni in un messaggio utente durante l'addestramento ma nel prompt di sistema in fase di esecuzione, o viceversa.
  • Addestrare con un prompt di sistema e implementare con un altro.
  • Formattare manualmente l'input di un modello aperto invece di utilizzare il suo template di chat.
  • Lasciare messaggi consecutivi dello stesso ruolo, che la maggior parte dei formati rifiuta.

Riferimenti e letture di approfondimento

Le fonti esterne si aprono in una nuova scheda.

  1. 01Chat templatesHugging Face Transformers docs · huggingface.coCome i messaggi vengono trasformati nell'input di un modello, con template reali.
  2. 02Chat TemplatesHugging Face LLM Course · huggingface.coUn capitolo del corso su ruoli e template nel fine-tuning.
  3. 03Model Spec (2025/12/18)OpenAI · model-spec.openai.comCome un provider classifica le istruzioni dai messaggi di sistema, dello sviluppatore e dell'utente.
  4. 04Training language models to follow instructions with human feedbackOuyang et al., 2022 · arXiv · arxiv.orgDa dove deriva il comportamento di rispetto delle istruzioni e di alternanza dei turni.

Trasformate settimane di lavoro esperto in pochi minuti

Scoprite come Scalata si adatta al vostro team, ai vostri dati e ai vostri Controlli.

Contatta il team vendite