Che cos'è
Un modello sottoposto a fine-tuning su qualche decina di chat di solito apprende rapidamente il tono e il formato. Ciò che non apprende sono i fatti che non ha mai visto: quali piani includono le esportazioni, quanto dura un link condiviso, come si chiama un'impostazione. Le valutazioni lo mostrano chiaramente: un modello del genere ottiene buoni punteggi per tono e formato, ma scarsi per la correttezza. I fatti di solito risiedono nei documenti: articoli di supporto, manuali, pagine di prodotto.
La generazione di Q&A riscrive quei documenti nel formato compreso dall'addestramento supervisionato. Un modello legge ogni sezione del testo e scrive alcune coppie di domande e risposte al riguardo. Tali coppie si uniscono al set di dati come esempi ordinari, in modo che i fatti raggiungano il modello attraverso la stessa preparazione, addestramento e valutazione delle chat.
Perché non addestrare semplicemente sul testo stesso? La ricerca suggerisce che i modelli apprendono male i fatti da una singola copia. Ovadia et al. (2023) hanno scoperto che i modelli "faticano ad apprendere nuove informazioni fattuali attraverso il fine-tuning non supervisionato" e che vedere molte varianti dello stesso fatto è d'aiuto. Yang et al. (2024) notano che un modello deve vedere un fatto in "centinaia o migliaia di rappresentazioni diverse" per apprenderlo durante il pre-addestramento. Le domande scritte con parole diverse sono esattamente tali varianti e insegnano anche al modello a recuperare il fatto quando gli viene richiesto.
Inserire i documenti in un set di dati
- Caricare i file: PDF, Word, PowerPoint, testo, Markdown o HTML.
- Selezioni i file già presenti in Scalata; il testo estratto viene riutilizzato.
- Incolli gli indirizzi delle pagine web. Solo pagine pubbliche: il testo principale viene conservato, mentre i menu e i piè di pagina vengono scartati. Gli indirizzi che puntano all'interno della Sua rete vengono rifiutati.
- Importi le righe di testo normale di un dataset Hugging Face (pagine web, libri…). Le righe vengono unite in documenti fino a 40.000 caratteri.
- Selezioni i file da una fonte di dati collegata come Google Drive, OneDrive, Amazon S3 o Snowflake. Vengono elencati solo i documenti leggibili, i file superiori a 50 MB non possono essere selezionati e la fonte viene solo letta, mai modificata.
Il testo di ogni documento viene letto una volta e può essere controllato con Visualizza testo prima di essere utilizzato. Questo controllo vale un minuto del proprio tempo: un PDF scansionato con un testo scadente, o una pagina composta principalmente da elementi di navigazione, produce domande di scarsa qualità.
Come funziona
- Suddivisione in sezioni. Il testo viene diviso in sezioni di circa 900 parole. Le sezioni adiacenti si sovrappongono leggermente, in modo che un fatto che cade su un limite appaia per intero in almeno una di esse.
- Lettura di una sezione alla volta. Il modello generatore scelto legge una sezione e scrive alcune coppie realistiche di domande e risposte.
- Domande come gli utenti. Sono formulate nel modo in cui le persone scrivono effettivamente ("come faccio a condividere questo"), non come domande d'esame.
- Risposte solo dalla sezione. Il generatore non può utilizzare fatti che non siano presenti nel testo che ha di fronte. Una sezione su cui non c'è nulla da chiedere, come un elenco di riferimenti, non produce alcuna domanda.
- Il proprio tono. Se il set di dati contiene già delle chat, vengono mostrate al generatore alcune risposte reali in modo che le risposte suonino in linea con il proprio prodotto.
- Esempi ordinari. Le coppie finiscono nel set di dati, dove è possibile revisionarle, modificarle o eliminarle prima della preparazione.
{"messages": [
{"role": "user", "content": "does the client need an account to open a shared report?"},
{"role": "assistant", "content": "No. The link opens without an account and expires after 7 days. You can revoke it any time under Share → Manage links."}
]}- Un articolo di 2.500 parole sulla condivisione dei report viene inserito nel dataset. La visualizzazione del testo mostra paragrafi puliti, quindi è pronto.
- Viene diviso in tre sezioni: parole 1–900, 800–1.700 e 1.600–2.500. La frase sulla scadenza dei link dopo 7 giorni si trova alla parola 850, quindi appare per intero sia nella sezione 1 che nella sezione 2.
- Il generatore scrive tre coppie per sezione: nove esempi. Una domanda è “il cliente ha bisogno di un account per aprirlo?”, con risposta tratta solo dalla sezione 2.
- Lei revisiona tutti e nove gli esempi e corregge una risposta che confondeva due impostazioni. Revisioni un campione a ogni esecuzione: una risposta generata è valida solo quanto la sezione da cui proviene.
- I nove esempi vengono addestrati con le Sue chat. I punteggi di correttezza della valutazione sulle domande di condivisione Le indicheranno che ha funzionato.
Ottenere coppie di qualità
- Utilizzi solo documenti attuali. Le coppie tratte da un manuale obsoleto insegnano fatti obsoleti, con sicurezza.
- Preferisca testi puliti. Gli articoli di guida e le pagine dei prodotti funzionano meglio; le pagine di tabelle, riferimenti o navigazione offrono poco.
- Mescoli con chat reali. Le coppie generate trasmettono i fatti; le chat reali trasmettono il comportamento multi-turno e i casi limite che gli utenti presentano effettivamente.
- Non sovraccaricare il modello con nuovi fatti. Gekhman et al. (2024) hanno scoperto che gli esempi di fine-tuning contenenti conoscenze nuove per il modello vengono appresi più lentamente e, una volta appresi, lo rendono più incline alle allucinazioni. Mantenere le risposte ancorate ai fatti e prendere in considerazione il recupero (retrieval) per i fatti che cambiano spesso.
Generazione di Q&A o pre-addestramento continuo?
| Confronto | Q&A generate | Pre-addestramento continuo |
|---|---|---|
| Provider | Tutti i provider | Hugging Face; modelli aperti Vertex AI |
| Testo necessario | Funziona a partire da poche pagine | Decine di migliaia di parole o più |
| Insegna | Fatti, sotto forma di risposte | Solo conoscenza; per rispondere è necessaria un'esecuzione supervisionata successiva |
| Può revisionarlo? | Sì, ogni coppia | Solo il testo di origine |
Scegliere la generazione di Q&A quando si desiderano risposte migliori in tempi brevi e su qualsiasi provider. Scegliere il pre-addestramento continuo quando si dispone di un ampio corpus di documentazione e si addestrano modelli aperti, idealmente seguito dalla generazione di Q&A o dall'addestramento tramite chat che ne consegue.
Impostazioni
Quanto testo legge il generatore in una volta sola. Circa 900 parole, con una leggera sovrapposizione tra le sezioni adiacenti affinché un fatto posto al limite venga visto per intero. Sezioni più ampie forniscono al generatore un contesto maggiore, ma tendono a produrre domande solo sui fatti più rilevanti; quelle più piccole coprono i dettagli in modo più uniforme, ma perdono il contesto circostante.
Il modello che legge ogni sezione e scrive le coppie. Un modello capace segue la regola "rispondi solo dalla sezione" in modo più affidabile e scrive domande più naturali. La generazione è un costo una tantum per documento e di solito è ridotto rispetto all'addestramento; la stima viene mostrata prima di iniziare.
Errori comuni
- Saltare la revisione. Una risposta generata è accurata solo quanto la sua sezione e il generatore può comunque confondere due fatti tra loro.
- Inserire documenti obsoleti o in bozza. Il modello apprende qualsiasi cosa dica il testo.
- Addestrare solo sulle coppie generate. Senza chat reali, il modello potrebbe rispondere bene sui fatti ma gestire male le conversazioni reali.
- Non controllare Visualizza testo sui file scansionati o pesantemente formattati, dove il testo estratto potrebbe risultare incomprensibile.
- Giudicare il risultato in base al tono. La generazione di Q&A punta alla correttezza, pertanto è opportuno leggere i punteggi di correttezza della valutazione.
Riferimenti e letture di approfondimento
Le fonti esterne si aprono in una nuova scheda.
- 01Fine-Tuning or Retrieval? Comparing Knowledge Injection in LLMsOvadia et al., 2023 · arXiv · arxiv.orgI modelli apprendono male i nuovi fatti dal testo grezzo; molte varianti di un fatto sono d'aiuto.
- 02Synthetic continued pretrainingYang et al., 2024 · arXiv · arxiv.orgRiscrivere un piccolo corpus in un testo sintetico molto più vario affinché un modello possa apprendere da esso.
- 03Physics of Language Models: Part 3.1, Knowledge Storage and ExtractionAllen-Zhu & Li, 2023 · arXiv · arxiv.orgEsperimenti controllati che dimostrano come la conoscenza debba essere vista in forme variegate per poter essere recuperata tramite domande.
- 04Does Fine-Tuning LLMs on New Knowledge Encourage Hallucinations?Gekhman et al., 2024 · arXiv · arxiv.orgPerché insegnare molti fatti nuovi attraverso il fine-tuning può aumentare le allucinazioni.
- 05Instruction Pre-Training: Language Models are Supervised Multitask LearnersCheng et al., 2024 · arXiv · arxiv.orgArricchire il testo grezzo con coppie istruzione-risposta generate durante il pre-addestramento continuo.