Vai al contenuto

Chunking

Ultimo aggiornamento:

Che cos'è il chunking

I sistemi di ricerca e i modelli linguistici funzionano meglio con passaggi mirati che con documenti interi. Un manuale di 40 pagine tratta decine di argomenti, quindi un unico embedding dell'intero manuale sarebbe una media confusa di tutti. Il chunking divide il manuale in passaggi dedicati a un solo tema, così ognuno può essere trovato da solo.

Ogni chunk viene salvato con un riferimento alla sua fonte, così il sistema sa da quale pagina o file proviene una risposta.

Come funziona

Esistono diverse strategie comuni, e molti sistemi le combinano:

  • Dimensione fissa: il testo viene diviso ogni N caratteri o token. È semplice, ma può spezzare frasi e concetti a metà.
  • Basato sulla struttura: la divisione segue paragrafi, titoli o frasi, così le unità naturali restano intere.
  • Sovrapposizione: un po' di testo della fine di un chunk viene ripetuto all'inizio del successivo, per non perdere il contesto al confine.
  • Chunking semantico: un nuovo chunk inizia dove cambia l'argomento, individuato tramite gli embedding.

Scegliere la dimensione dei chunk

La dimensione dei chunk è un compromesso. I chunk piccoli sono precisi ma possono perdere contesto, per esempio una frase come «questo vale per tutti gli ordini» senza la frase che spiega cosa sia «questo». I chunk grandi conservano il contesto ma diluiscono l'embedding, quindi corrispondono a meno domande specifiche, e occupano più spazio nella finestra di contesto del modello.

Esempio: la pagina FAQ di un hotel tratta orari di check-in, parcheggio, animali e colazione. Senza chunking, una domanda sugli animali recupererebbe l'intera pagina e la risposta potrebbe mescolare dettagli estranei. Con un chunking per paragrafi, la sezione sugli animali diventa un chunk a sé e offre al modello una fonte pulita e mirata.

Perché conta per i chatbot aziendali

Il chunking è facile da trascurare, ma incide su ogni risposta. Chunk fatti male causano due errori tipici: l'informazione giusta non viene recuperata perché è sepolta in un passaggio che parla d'altro, oppure viene recuperata senza la frase che ne indica le condizioni. Contenuti ben strutturati aiutano. Sezioni brevi con titoli chiari si dividono bene, mentre lunghi muri di testo o tabelle convertite in testo semplice sono più difficili da spezzare in modo pulito.

Come lo gestisce intoCHAT

intoCHAT divide automaticamente i tuoi contenuti in chunk quando addestri una fonte. Il testo viene diviso seguendo paragrafi e frasi, con una piccola sovrapposizione tra chunk vicini, così i concetti a cavallo di un confine restano interi. Ogni chunk riceve poi un embedding e viene cercato con la ricerca ibrida. Non devi scegliere una dimensione: la cosa più utile che puoi fare è mantenere ben strutturati i contenuti di partenza.

Domande frequenti

Qual è una buona dimensione dei chunk per la RAG?

Non esiste una dimensione migliore in assoluto. Dipende dai contenuti, dal modello di embedding e dal tipo di domande. Molti sistemi usano passaggi di qualche centinaio di parole o meno e li regolano dopo averli provati con domande reali.

Perché i chunk si sovrappongono?

La sovrapposizione ripete un po' di testo della fine di un chunk all'inizio del successivo. Evita che frasi e contesto a cavallo di un confine vengano separati, così possono essere recuperati insieme. Troppa sovrapposizione crea risultati duplicati, per questo di solito è ridotta.

Posso controllare il chunking in intoCHAT?

intoCHAT gestisce il chunking in automatico, quindi non ci sono impostazioni da regolare. Puoi migliorare i risultati organizzando i contenuti con titoli chiari e paragrafi brevi. Anche le coppie di domanda e risposta sono un modo diretto per dare all'agente una risposta precisa a una domanda importante.

Guardalo rispondere dal tuo sito

Incolla l’indirizzo del tuo sito e chatta con un agente creato dalle tue pagine. Ci vuole circa un minuto.

Crea il tuo agente gratis

Piano gratuito, nessuna carta di credito.