Passaggio 5 (recupero). Come eseguire il debug della qualità del recupero
Questa pagina descrive come identificare la causa radice dei problemi di recupero. Usare questa pagina quando l'analisi della causa radice indica una causa radice Improve Retrieval
.
La qualità del recupero è probabilmente il componente più importante di un'applicazione RAG. Se i blocchi più rilevanti non vengono restituiti per una determinata query, l'LLM non ha accesso alle informazioni necessarie per generare una risposta di alta qualità. Un recupero scarso può portare a un output irrilevante, incompleto o allucinato. Questo passaggio richiede uno sforzo manuale per analizzare i dati sottostanti. Mosaic AI Agent Framework, con la stretta integrazione tra la piattaforma dati (incluso Unity Catalog and Vector Search) e il rilevamento dell'esperimento con MLflow (inclusa la valutazione LLM e MLflow Tracing) semplifica notevolmente la risoluzione dei problemi.
Istruzioni
Per risolvere i problemi di qualità del recupero, seguire questa procedura:
- Aprire il notebook B_quality_iteration/01_root_cause_quality_issues.
- Usare le query per caricare le tracce MLflow dei record con problemi di qualità del recupero.
- Per ogni record, esaminare manualmente i blocchi recuperati. Se disponibile, confrontarli con i documenti di recupero della verità.
- Cercare modelli o problemi comuni tra le query con scarsa qualità di recupero. Ad esempio:
- Le informazioni rilevanti mancano completamente nel database vettoriale.
- Numero insufficiente di blocchi o documenti restituiti per una query di recupero.
- I blocchi sono troppo piccoli e non hanno un contesto sufficiente.
- I blocchi sono troppo grandi e contengono più argomenti non correlati.
- Il modello di incorporamento non riesce ad acquisire la somiglianza semantica per termini specifici del dominio.
- In base al problema identificato, ipotizzare potenziali cause radice e correzioni corrispondenti. Per indicazioni, vedere Motivi comuni per la scarsa qualità del recupero.
- Seguire la procedura descritta in Implementare e valutare le modifiche per implementare e valutare una potenziale correzione. Ciò potrebbe comportare la modifica della pipeline di dati (ad esempio, la modifica delle dimensioni dei blocchi o il tentativo di un modello di incorporamento diverso) o la modifica della catena RAG (ad esempio, l'implementazione della ricerca ibrida o il recupero di più blocchi).
- Se la qualità del recupero non è ancora soddisfacente, ripetere i passaggi 4 e 5 per le correzioni più promettenti successive fino a raggiungere le prestazioni desiderate.
- Eseguire di nuovo l'analisi della causa radice per determinare se la catena complessiva presenta cause radice aggiuntive che devono essere risolte.
Motivi comuni per la scarsa qualità del recupero
Nella tabella seguente sono elencati i passaggi di debug e le possibili correzioni per i problemi di recupero comuni. Le correzioni vengono classificate in base al componente:
- Pipeline di dati
- Configurazione della catena
- Codice della catena
Il componente definisce i passaggi da seguire nel passaggio implementare e valutare le modifiche .
Problema di recupero | Procedura di debug | Potenziale correzione |
---|---|---|
I blocchi sono troppo piccoli | - Esaminare i blocchi per informazioni di taglio incomplete. | - La pipeline di dati Aumentare le dimensioni o la sovrapposizione dei blocchi. - Pipeline di dati Provare una diversa strategia di suddivisione in blocchi. |
I blocchi sono troppo grandi | - Controllare se i blocchi recuperati contengono più argomenti non correlati. | - Pipeline di dati Ridurre le dimensioni del blocco. - Pipeline di dati Migliorare la strategia di suddivisione in blocchi per evitare la combinazione di argomenti non correlati, ad esempio la suddivisione in blocchi semantici. |
I blocchi non hanno informazioni sufficienti sul testo da cui sono stati estrapolati | - Valutare se la mancanza di contesto per ogni blocco causa confusione o ambiguità nei risultati recuperati. | - Pipeline di dati Provare ad aggiungere metadati e titoli a ogni blocco (ad esempio, titoli di sezione). - Configurazione della catena Recuperare più blocchi e usare un LLM con dimensioni di contesto maggiori. |
Il modello di incorporamento non comprende in modo accurato il dominio o le frasi chiave nelle query utente | - Controllare se vengono recuperati blocchi semanticamente simili per la stessa query. | - Pipeline di dati Provare modelli di incorporamento diversi. - Configurazione della catena Provare la ricerca ibrida. - Codice della catena Recupera i risultati del recupero e li rivaluta. Nel contesto LLM vengono inseriti solo i primi risultati classificati di nuovo. - Pipeline di dati Ottimizzare il modello di incorporamento su dati specifici del dominio. |
Informazioni rilevanti mancanti nel database vettoriale | - Controllare se nel database vettoriale mancano documenti o sezioni pertinenti. | - Pipeline di dati Aggiungere altri documenti pertinenti al database vettoriale. - Pipeline di dati Migliorare l'analisi dei documenti e l'estrazione dei metadati. |
Le query di recupero non sono formulate correttamente | - Se le query utente vengono usate direttamente per la ricerca semantica, analizzare queste query e verificare l'ambiguità o la mancanza di specificità. Ciò può verificarsi facilmente nelle conversazioni a più turni in cui la query utente non elaborata fa riferimento a parti precedenti della conversazione, rendendo inadatto l'uso diretto come query di recupero. - Controllare se i termini di query corrispondono alla terminologia usata nel corpus di ricerca. |
- Codice della catena Aggiungere approcci di espansione o trasformazione delle query (ad esempio, data una query utente, trasformare la query prima della ricerca semantica). - Codice della catena Aggiungere informazioni sulle query per identificare finalità ed entità (ad esempio, usare un LLM per estrarre le proprietà da usare nel filtro dei metadati). |
Passaggio successivo
Se sono stati identificati anche problemi con la qualità della generazione, continuare con il Passaggio 5 (generazione). Come eseguire il debug della qualità della generazione.
Se si ritiene di aver risolto tutti i problemi identificati, continuare con il passaggio 6. Apportare e valutare le correzioni di qualità nell'agente di intelligenza artificiale.
< Precedente: Passaggio 5. Identificare le cause principali dei problemi di qualità
Successivo: Passaggio 5.2. Qualità della generazione del debug >