Chiedere al LLM di autodiagnosticare e autocorreggere il prompt per migliorare la qualità della risposta.
Retrieval Augmented Generation (RAG) è senza dubbio uno strumento potente, facilmente realizzabile utilizzando framework come LangChain o LlamaIndex. Tale facilità di integrazione potrebbe dare l’impressione che RAG sia una soluzione magica facile da realizzare per ogni caso d’uso. Tuttavia, nel nostro percorso volto ad aggiornare il nostro strumento di ricerca di articoli editoriali per offrire risultati di ricerca semanticamente più ricchi e risposte dirette alle domande, abbiamo riscontrato che la configurazione RAG di base è carente e abbiamo scoperto molte sfide. Costruire un RAG per una dimostrazione è semplice e veloce e spesso produce risultati sufficientemente impressionanti per un piccolo sottoinsieme di scenari. Tuttavia, il percorso finale verso il raggiungimento dello status di “pronti per la produzione”, dove la qualità eccezionale è obbligatoria, presenta sfide significative. Ciò è particolarmente vero quando si ha a che fare con una vasta base di conoscenza piena di migliaia di articoli specifici del settore, un evento non così raro.
Il nostro approccio al RAG si compone di due fasi distinte:
- Recupero di documenti rilevanti Utilizzando una serie di incorporamenti densi e sparsi, estraiamo blocchi di documenti rilevanti dal nostro database Pinecone, considerando sia il contenuto che il titolo. Questi blocchi vengono successivamente riclassificati in base alla pertinenza al titolo, al contenuto e all’età del documento. Vengono quindi scelti i primi quattro documenti: sia come potenziali risultati della ricerca sia come contesto del documento per generare risposte dirette. In particolare, questo approccio diverge dalla configurazione RAG comune, affrontando le nostre sfide uniche di recupero dei documenti in modo più efficace.
- Generazione di risposte dirette Qui, la domanda, le istruzioni e i primi quattro blocchi di documento precedentemente recuperati (contesto del documento) vengono inseriti in un Large Language Model (LLM) per produrre una risposta diretta.
Ho approfondito il miglioramento della qualità del recupero dei documenti attraverso l’uso di Tecniche di ricerca ibrida e classificazione gerarchica dei documenti nelle discussioni precedenti. In questo blog, mi propongo di condividere approfondimenti sul perfezionamento e sulla risoluzione dei problemi del…
Fonte: towardsdatascience.com