Cos'è un target
Il fine-tuning supervisionato insegna tramite l'esempio: ecco una situazione, ecco la risposta che vogliamo. In una chat, la situazione è la conversazione fino a quel momento e la risposta è un messaggio dell'assistente. Le risposte che Lei contrassegna come degne di essere apprese sono i target, chiamati anche risposte addestrabili. Tutto ciò che precede un target è il suo contesto.
{"messages": [
{"role": "system", "content": "You are Scalata's support assistant."},
{"role": "user", "content": "How do I reset my password?"},
{"role": "assistant", "content": "Open Settings → Security and choose Reset password. You'll get an email link valid for 30 minutes."}
]}Il modello apprende una mappatura: dato questo prompt di sistema e questa domanda, produci questa risposta. Attraverso centinaia di record, coglie ciò che le risposte hanno in comune — lo stile del percorso del menu, la lunghezza, il livello di dettaglio, il tono.
Come viene appreso un target
Per ogni target il modello legge il contesto e prevede la risposta un token alla volta. In ogni posizione assegna una probabilità a ogni possibile token successivo, e l'errore di addestramento — perdita di entropia incrociata — è basso quando ha assegnato un'alta probabilità al token che effettivamente segue. I pesi vengono quindi regolati in modo che i token del target diventino più probabili la volta successiva in cui appare un contesto simile. I token di contesto vengono letti ma non valutati; veda Loss masking.
Ne conseguono due implicazioni. Primo, il modello apprende tutto di un target: i suoi fatti, il fraseggio, la lunghezza e gli errori. Secondo, apprende ogni target nel suo contesto: una risposta corretta dopo una domanda potrebbe essere errata dopo una simile, e il modello può notare la differenza solo se il contesto la mostra.
Scegliere buoni target
- Corretto. Fatti errati, passaggi non funzionanti e nomi di menu obsoleti vengono appresi tanto fedelmente quanto quelli validi.
- La risposta che desidera, non la risposta che ha ottenuto. Se una risposta era quasi corretta, la corregga piuttosto che mantenerla così com'è.
- Autosufficiente. Una risposta che ha senso solo a causa di qualcosa che il modello non vedrà — un file allegato, uno schermo condiviso — gli insegna a fare riferimento a cose che non ci sono.
- Coerente. Domande simili dovrebbero ottenere risposte strutturate in modo simile, altrimenti il modello apprende l'incoerenza.
- Risposte reali. Messaggi di errore, rifiuti della piattaforma e risposte che annunciano solo un file generato non sono risposte da apprendere.
- Risposta 1: “Salve! Come posso aiutarLa oggi?” — un saluto. Innocuo, ma non vale la pena apprenderlo; lo lasci come contesto.
- Risposta 2: “La preghiamo di controllare le Sue impostazioni.” — vago. Lo corregga inserendo i passaggi effettivi, oppure lo lasci come contesto.
- Risposta 3: “Apra Impostazioni → Notifiche e disattivi ‘Riepilogo settimanale’.” — specifico e corretto. Lo contrassegni come target.
- Risultato: un target, con il saluto e la risposta vaga come contesto. Se corregge la risposta 2, può diventare un secondo target.
Errori comuni
- Contrassegnare ogni risposta dell'assistente come target per impostazione predefinita, inclusi saluti e riempitivi.
- Mantenere una risposta quasi corretta come target invece di correggerla.
- Includere risposte che dipendono da allegati o risultati di strumenti che il modello non avrà a disposizione.
- Addestrare su una risposta che in seguito si è rivelata errata.
Riferimenti e letture di approfondimento
Le fonti esterne si aprono in una nuova scheda.
- 01SFT TrainerHugging Face TRL docs · huggingface.coCome un trainer open-source si addestra solo sulle risposte dell'assistente.
- 02Supervised fine-tuningOpenAI API docs · developers.openai.comLe linee guida di un provider in hosting sulla preparazione degli esempi di addestramento.
- 03LIMA: Less Is More for AlignmentZhou et al., 2023 · arXiv · arxiv.orgFino a che punto possono arrivare 1.000 target scelti con cura.
- 04Supervised Fine-TuningHugging Face LLM Course · huggingface.coUna guida pratica al fine-tuning supervisionato sui dati di chat.