La ricerca vettoriale densa è eccellente nel catturare l'intento semantico, ma spesso ha difficoltà con le query che richiedono un'elevata precisione delle parole chiave. Per quantificare questa lacuna, abbiamo confrontato un sistema di recupero standard basato esclusivamente su vettori densi con un sistema RAG ibrido che incorpora vettori sparsi SPLADE.
La nostra valutazione, condotta su un set selezionato di 100 domande impegnative e tratte da situazioni reali, si è concentrata sulla capacità di ciascun sistema di individuare e classificare correttamente la risposta migliore.
Confronto delle prestazioni: recupero denso vs recupero ibrido
I nostri test comparativi dimostrano che un sistema di ricerca ibrido ben ottimizzato supera significativamente un approccio basato esclusivamente sulla densità, fornendo risultati più accurati e con un ranking più elevato.
- Migliore precisione di classificazione (MRR +18,5%): il sistema ibrido ha innalzato il Mean Reciprocal Rank da 0,410 a 0,486 . Questo sostanziale miglioramento è il risultato più significativo, in quanto si traduce direttamente in una migliore esperienza utente, aumentando notevolmente la probabilità che la risposta migliore appaia in prima posizione.
- Tasso di recupero migliorato (Recall@5 +7,2%): il modello ibrido ha aumentato il punteggio Recall@5 da 0,655 a 0,702 . Ciò dimostra la sua capacità di trovare la risposta corretta tra i primi 5 risultati in modo più coerente, individuando con successo documenti che l'approccio basato esclusivamente su dati densi avrebbe completamente ignorato.
Per comprendere nel dettaglio la nostra valutazione e le metriche utilizzate, consultare la metodologia di benchmarking per Hybrid RAG .
Precisione contro latenza: il compromesso tra prestazioni e accuratezza
Sebbene il sistema ibrido offra una precisione superiore, queste prestazioni migliorate comportano un costo computazionale misurabile.
Il sistema ibrido introduce una latenza aggiuntiva di 201 ms per query, pari a un aumento del 24,5% del tempo di elaborazione. Per comprendere nel dettaglio il nostro processo di misurazione della latenza e la metodologia di temporizzazione, consultare la nostra metodologia di misurazione della latenza .
Dove va a finire il tempo extra?
L'aumento di latenza di 201 ms per il sistema ibrido non è distribuito uniformemente su tutte le operazioni. La nostra analisi dettagliata dei tempi rivela con precisione dove risiede il costo computazionale:
Questa analisi dettagliata mostra chiaramente che la maggior parte della latenza deriva dalla fase iniziale di generazione del vettore, in cui il sistema deve creare sia un vettore denso che un vettore sparso.
Le fasi effettive di ricerca e fusione sono straordinariamente veloci e contribuiscono complessivamente a meno del 7% del tempo totale. Ad esempio, la generazione di vettori densi e sparsi potrebbe essere parallelizzata per ridurre questo collo di bottiglia.
Possibili ragioni alla base delle differenze di rendimento
Richiamo semantico vs precisione lessicale
Il recupero denso si basa sulla similarità semantica, efficace per cogliere l'intento dell'utente ma che può sottovalutare termini e vincoli specifici. Ciò limita la sua capacità di recuperare in modo coerente documenti che dipendono da parole chiave o attributi specifici.
Nel benchmark, il retriever basato esclusivamente su dati densi spesso corrispondeva all'intento generale delle query, ma non riusciva a soddisfare vincoli rigorosi come i nomi esatti degli ingredienti.
Copertura del recupero a doppio segnale
Il RAG ibrido combina rappresentazioni dense e sparse, consentendo al sistema di valutare i documenti sia da una prospettiva semantica che lessicale. Questa doppia copertura aumenta la probabilità che i documenti pertinenti vengano recuperati e classificati in alto.
Sensibilità di rango tramite fusione
La fusione di ranghi reciproci (RRF) dà priorità ai documenti che ottengono un buon posizionamento in base a molteplici segnali di recupero, anziché basarsi sui semplici punteggi di similarità. Questa aggregazione basata sul rango migliora l'accuratezza dei risultati principali quando la rilevanza semantica e la precisione delle parole chiave sono allineate.
generazione vettoriale overhead
Il recupero ibrido richiede la generazione di vettori sia densi che sparsi per ogni query, aumentando il carico computazionale ancor prima dell'inizio della ricerca. Questa preelaborazione aggiuntiva ha un impatto diretto sulla latenza end-to-end.
Sensibilità alla regolazione dei parametri
Le prestazioni degli ibridi dipendono fortemente dall'equilibrio dei parametri di fusione. Un'eccessiva ponderazione dei segnali sparsi può sopprimere la rilevanza semantica e compromettere i risultati.
Architettura del sistema ibrido RAG
Il nostro sistema ibrido combina due approcci di recupero complementari, ognuno dei quali affronta caratteristiche diverse delle query attraverso un'architettura di elaborazione parallela attentamente progettata.
Componente densa: comprensione semantica
- Modello: OpenAI text-embedding-3-small
- Punti di forza: Cattura il significato semantico e il contesto , eccellendo nella comprensione dell'intento dell'utente anche quando le query non contengono parole chiave specifiche.
- Caso d'uso: una query come "analgesico delicato per lo stomaco" troverà correttamente i documenti che menzionano concetti come "delicato sulla digestione" o "non mi ha causato mal di stomaco", anche se la parola esatta "delicato" non viene utilizzata.
Componente sparsa: precisione delle parole chiave
- Modello: SPLADE (modello lessicale e di espansione SParse)
- Punto di forza: identifica e attribuisce grande importanza alle parole chiave distintive, inclusi nomi tecnici, numeri di modello e attributi specifici del prodotto che una ricerca puramente semantica potrebbe trascurare.
- Caso d'uso: una query contenente un termine specifico come "paracetamolo" richiede una corrispondenza esatta della parola chiave. SPLADE garantisce che i documenti contenenti questo termine preciso siano ben posizionati nei risultati di ricerca, un compito in cui un modello denso potrebbe generalizzare a "analgesico" e non individuare l'ingrediente specifico.
L'algoritmo di fusione di ranghi reciproci (RRF)
Una query utente viene vettorializzata simultaneamente sia dal modello OpenAI che dal modello SPLADE, generando due liste ordinate in modo indipendente. Il passaggio cruciale consiste nel combinare queste liste utilizzando la fusione di ranghi reciproci (RRF).
RRF risolve la sfida di unire i risultati di sistemi con scale di punteggio incompatibili (ad esempio, un punteggio denso di 0,89 rispetto a un punteggio sparso di 95,4). Invece di utilizzare i punteggi grezzi, si concentra esclusivamente sulla posizione in classifica del documento (1°, 2°, 3°).
Esempio : Per la ricerca “deodorante naturale senza alluminio e parabeni”
- Una ricerca approfondita classifica al primo posto una recensione su "deodorante biologico senza sostanze chimiche" (pertinenza semantica).
- Una ricerca approssimativa classifica al primo posto una recensione contenente le parole chiave "senza alluminio" e "senza parabeni" (parole chiave esatte).
- RRF fusion promuove in cima i documenti che compaiono in alto in entrambe le liste.
Una recensione semanticamente pertinente E che contiene le parole chiave esatte ottiene il punteggio complessivo più alto.
Il punteggio finale si calcola con la seguente formula:
dove k=60 e rank_i è la posizione del documento in ogni risultato di ricerca. Il parametro sparse_boost (1.2) favorisce leggermente la precisione delle parole chiave senza compromettere eccessivamente la comprensione semantica.
Il ruolo della regolazione dei parametri di fusione
Un risultato chiave della nostra ricerca è che la semplice combinazione di due sistemi di recupero non garantisce prestazioni migliori. La nostra configurazione ibrida iniziale ha infatti ottenuto risultati peggiori rispetto alla configurazione di riferimento basata esclusivamente su dati densi, raggiungendo un MRR di soli 0,390.
Il problema risiedeva in un parametro di fusione impostato in modo errato:
- Impostazione iniziale problematica : sparse_boost = 3.0
- Impostazione ottimizzata : sparse_boost = 1.2
La configurazione iniziale attribuiva alle corrispondenze di parole chiave di SPLADE un peso tre volte superiore rispetto alle corrispondenze semantiche del modello denso. Questa ponderazione aggressiva faceva sì che i documenti semanticamente irrilevanti ma ricchi di parole chiave sovrastassero i risultati contestualmente appropriati, peggiorando le prestazioni complessive.
L'ottimizzazione con sparse_boost = 1.2 fornisce una leggera preferenza per le corrispondenze di parole chiave senza compromettere la comprensione semantica, un equilibrio che si è rivelato fondamentale per ottenere un miglioramento del 18,5% dell'MRR.
Quando il recupero ibrido eccelle: la query multi-vincolo
Il vantaggio prestazionale dei sistemi ibridi diventa evidente in specifici tipi di query che mettono alla prova gli approcci basati esclusivamente su query dense. Una query comune e complessa del nostro dataset "Salute e cura della persona" è la seguente:
“Ho bisogno di un deodorante naturale, privo di alluminio e parabeni.”
Questa query è composta da due parti distinte: un intento semantico ampio ("deodorante naturale") e due vincoli di parole chiave rigorosi ("senza alluminio", "senza parabeni").
Come reagisce un sistema basato esclusivamente su dati densi: un sistema di recupero dati basato esclusivamente su dati densi è eccellente nel comprendere l'intento di ricerca di un "deodorante naturale". Troverà recensioni che parlano di "deodoranti delicati e biologici". Tuttavia, potrebbe assegnare un punteggio elevato a una recensione che parla di essere "completamente naturale" e "senza alluminio", anche se non menziona mai i parabeni. Il sistema coglie correttamente l'intento principale, ma fallisce su uno dei vincoli non negoziabili.
Come il sistema ibrido vince: Il sistema ibrido affronta questo problema attraverso un duplice approccio:
- Ricerca sparsa (filtro di precisione): il modello SPLADE trova immediatamente i documenti contenenti le parole chiave esatte e ad alto peso "senza alluminio" e "senza parabeni".
- Ricerca densa (filtro di pertinenza): Contemporaneamente, il modello OpenAI cerca documenti semanticamente correlati a "deodorante naturale ed efficace".
- La fusione (RRF): RRF analizza quindi entrambe le classifiche. Un documento che compare in alto in entrambe, ad esempio una recensione entusiasta che elogia esplicitamente un prodotto per essere "naturale", "efficace", "senza alluminio" e "senza parabeni", riceve il punteggio di fusione più alto possibile e viene promosso al primo posto.
Rerankers: una seconda fase di recupero opzionale
I reranker operano come processo di filtraggio di secondo stadio nelle pipeline di recupero a due fasi: il sistema recupera innanzitutto un ampio insieme di documenti candidati, dopodiché un reranker cross-encoder li valuta e li riordina in base alla pertinenza della query. In pratica, un sistema potrebbe recuperare decine o persino centinaia di candidati (ad esempio, utilizzando una ricerca ibrida densa-sparsa, recuperando circa 50-100 elementi) e quindi utilizzare il reranker per selezionare i pochi passaggi più rilevanti per il modello linguistico. Questo approccio a due fasi può recuperare passaggi rilevanti che non erano tra gli elementi con il punteggio più alto, promuovendoli nella selezione finale per la generazione.
Nel benchmark di reranking , abbiamo testato 8 modelli di reranking su circa 145.000 recensioni Amazon in inglese e abbiamo scoperto che il miglior reranker ha aumentato Hit@1 dal 62,67% all'83,00% rispetto a un algoritmo di recupero denso, aggiungendo meno di 250 ms di latenza per query.
Questo benchmark RAG ibrido non include una fase di riordinamento. Il nostro obiettivo era isolare l'impatto della combinazione di segnali di recupero densi e sparsi tramite RRF. L'aggiunta di un riordinamento al recupero ibrido è un passo successivo naturale e potrebbe portare a ulteriori miglioramenti in termini di accuratezza, ma introdurrebbe una variabile confondente che renderebbe più difficile attribuire i miglioramenti al metodo di recupero o al modello di riordinamento.
Metodologia di riferimento per RAG ibrido
La nostra metodologia di valutazione è stata progettata per garantire un confronto equo, trasparente e riproducibile tra i sistemi di recupero basati esclusivamente su dati densi e quelli ibridi.
Configurazione del test e corpus di dati
- Corpus di conoscenza: abbiamo utilizzato un set di dati di 494.094 recensioni di utenti reali provenienti dal dataset Amazon Customer Reviews (categoria Salute e cura della persona). 1 .
- Database vettoriale: abbiamo utilizzato Qdrant per ospitare due collezioni separate.
- La collezione densa ha memorizzato solo OpenAI vettori.
- La raccolta ibrida ha utilizzato la funzionalità "vettori denominati" di Qdrant per memorizzare sia un vettore denso (denso) che un vettore sparso (testo sparso) per ciascun documento.
- Metrica di similarità: per tutte le ricerche vettoriali dense è stata utilizzata la similarità del coseno.
Domande di test: processo di selezione
Abbiamo creato un set di test di alta qualità composto da 100 domande attraverso un processo in tre fasi, basato sulla programmazione, per evitare valutazioni aneddotiche o di parte:
- Pre-elaborazione: abbiamo pulito programmaticamente i dati grezzi delle domande e risposte di Amazon. 2 Abbiamo filtrato le domande insensate o di bassa qualità. Abbiamo stabilito una risposta "di riferimento" per ogni domanda selezionando la risposta con il maggior numero di voti "utili" da parte degli utenti.
- Classificazione della difficoltà: abbiamo applicato uno script basato su regole per assegnare un punteggio e classificare tutte le domande in base alla difficoltà. Le domande contenenti un linguaggio comparativo ("differenza tra", "vs", "migliore di") o che richiedevano opinioni ("esperienza con") sono state considerate più difficili rispetto alle semplici domande fattuali ("quali sono le dimensioni").
- Selezione finale: abbiamo selezionato manualmente il set finale di 100 domande di benchmark dalla categoria "difficile". Questo ci permette di testare i limiti di ciascun sistema di recupero, dove le differenze di prestazioni sono più evidenti.
metriche di valutazione
- Recall@5 (tasso di successo): questa metrica risponde a una domanda fondamentale: "Il sistema ha trovato le informazioni corrette?". Misura la percentuale di query per le quali la risposta corretta è apparsa tra i primi 5 risultati di ricerca. Un punteggio Recall@5 elevato indica un sistema efficace che riesce a individuare con successo le informazioni pertinenti.
- MRR (Mean Reciprocal Rank): Questa metrica, sensibile al rango, risponde alla domanda: "Quanto velocemente l'utente ha trovato le informazioni corrette?". Premia fortemente la posizione in cima alla lista dei risultati (punteggio di 1,0), con punteggi decrescenti per le posizioni inferiori (0,5 per la seconda posizione, 0,33 per la terza, ecc.). Un MRR elevato è fondamentale per l'esperienza utente, in quanto indica che il risultato più accurato è posizionato in cima.
Misurazione della latenza
Per fornire un'analisi completa delle prestazioni, abbiamo misurato la latenza end-to-end delle query sia per il sistema basato esclusivamente su reti dense che per quello ibrido. Questa misurazione è fondamentale per comprendere il costo reale dei miglioramenti in termini di precisione offerti dall'approccio ibrido.
Il processo è stato implementato all'interno dei nostri script di valutazione Python utilizzando la funzione time.perf_counter() ad alta precisione. Per ciascuna delle 100 query di test, abbiamo misurato il tempo totale trascorso dal momento in cui una query è stata inviata alla funzione di recupero fino alla restituzione dell'elenco finale di documenti classificati.
Per il sistema ibrido, abbiamo effettuato un'analisi più dettagliata cronometrando le sue tre fasi distinte in modo indipendente:
- Generazione del vettore : il tempo totale necessario per generare sia il vettore denso (tramite una chiamata API a OpenAI) sia il vettore sparso (tramite inferenza locale del modello SPLADE).
- Operazioni di ricerca : il tempo impiegato per eseguire due query di ricerca separate sul database vettoriale Qdrant, una per il vettore denso e una per il vettore sparso.
- Fusione (RRF) : Il tempo di calcolo necessario all'algoritmo di fusione di ranghi reciproci per unire i due set di risultati e produrre l'elenco finale riordinato.
I valori finali di latenza riportati nei nostri risultati rappresentano la media aritmetica dei tempi registrati su tutte le 100 query di test, convertita in millisecondi (ms) per maggiore chiarezza. Questo approccio garantisce che le nostre metriche di latenza siano robuste e rappresentative dell'esperienza utente media.
Limitazioni e ambito di applicazione
Il nostro benchmark si concentra specificamente sul settore della salute e della cura della persona, utilizzando i dati delle recensioni di Amazon. I risultati possono variare in altri settori con caratteristiche linguistiche o terminologie tecniche diverse.
La valutazione ha utilizzato una granularità a livello di documento, trattando ogni recensione come un singolo vettore. I risultati possono variare a seconda della strategia di segmentazione o dell'approccio di recupero più dettagliato.
Per approfondire
Esplora altri parametri di riferimento RAG, come ad esempio:
Conclusione
Questo benchmark conferma che un sistema di recupero ibrido ben ottimizzato offre un vantaggio prestazionale significativo rispetto a un approccio basato esclusivamente sulla densità per query complesse e reali. Combinando in modo intelligente la ricerca semantica e lessicale, il modello ibrido migliora l'accuratezza del ranking, producendo risultati più precisi e di rango superiore.
I principali spunti emersi dal nostro benchmark includono:
- Il sistema ibrido supera le prestazioni del sistema basato esclusivamente su reti dense: il sistema ibrido ottimizzato ha ottenuto un aumento del +7,2% nel Recall@5 e un sostanziale incremento del +18,5% nell'MRR, dimostrando la sua superiore capacità di trovare e classificare correttamente la risposta migliore.
- La messa a punto è imprescindibile: la semplice combinazione di ricerca densa e sparsa non è sufficiente. Il nostro sistema ibrido iniziale, non ottimizzato, ha ottenuto prestazioni inferiori rispetto al sistema di riferimento basato esclusivamente sulla ricerca densa. L'ottimizzazione strategica dei parametri di fusione è stata essenziale per ottenere miglioramenti delle prestazioni.
- La precisione ha un costo: la maggiore accuratezza del sistema ibrido ha introdotto un aumento della latenza di circa 201 ms (24,5%) per query. Questo compromesso è un aspetto cruciale per i progettisti di sistemi, che devono bilanciare la necessità di precisione con i requisiti di prestazioni in tempo reale.
FAQ
RAG consente a un modello generativo, come un Large Language Model (LLM), di generare risposte basate su dati esterni anziché affidarsi esclusivamente ai propri dati di addestramento interni. Ciò migliora l'accuratezza fattuale, fondando le risposte sulle informazioni recuperate.
Tuttavia, non tutti i dati sono uguali. Alcune query richiedono una comprensione semantica, mentre altre si basano su una corrispondenza precisa delle parole chiave, soprattutto quando si tratta di query strutturate o entità estratte da informazioni complesse. Ecco perché la generazione aumentata con recupero ibrido (Hybrid RAG) è essenziale. Combina la ricerca semantica densa con la ricerca lessicale sparsa, fornendo sia rilevanza contestuale che precisione delle parole chiave. Questa natura ibrida garantisce che il sistema recuperi il contesto sia da dati testuali strutturati che non strutturati, fornendo risposte più accurate.
L'implementazione attuale si concentra su dati testuali non strutturati, come le recensioni dei prodotti, che spesso contengono opinioni sfumate, dettagli tecnici e modelli linguistici variegati. Il sistema utilizza molteplici tecniche di recupero per garantire di catturare sia il significato che i termini esatti.
In prospettiva, Hybrid RAG potrebbe essere esteso per includere informazioni strutturate e dati grafici, consentendo di rispondere a query più complesse integrando i dati provenienti dai grafi della conoscenza con il sentiment o il contesto delle recensioni. Ciò si tradurrebbe in un contesto unificato che collega dati grezzi, documenti strutturati e contenuti narrativi, consentendo un contesto più ricco durante la generazione delle risposte.
Quando un utente invia una query, il sistema attiva due componenti di recupero parallele: un recuperatore denso (semantico) e un recuperatore sparso (lessicale). Il modello denso cattura significati e relazioni generali, mentre il modello sparso basato su SPLADE si concentra sui termini chiave.
Questi due set di risultati vengono fusi utilizzando la fusione di ranghi reciproci (RRF), che risolve l'incompatibilità di punteggio tra i diversi metodi di recupero. Questo approccio ibrido consente al sistema di recuperare più documenti che soddisfano diverse parti di una query, migliorando la sua capacità di generare risposte coerenti basate sul contesto più rilevante e completo disponibile.
Sì, l'approccio ibrido richiede maggiori risorse. Necessita di maggiori risorse computazionali a causa della doppia generazione di vettori, delle doppie operazioni di ricerca e della logica di fusione. Ciò si traduce in tempi di elaborazione delle query più lunghi e nella necessità di infrastrutture aggiuntive per gestire grandi volumi di dati.
Nonostante ciò, i miglioramenti prestazionali, soprattutto in termini di Mean Reciprocal Rank (MRR) e Recall@5, rendono questo compromesso accettabile per le applicazioni in cui l'accuratezza e la completezza dei dati fattuali sono fondamentali. In un benchmark rigoroso, il metodo ibrido ha costantemente recuperato informazioni più precise e contestualmente appropriate rispetto ai sistemi basati esclusivamente su reti dense.
A differenza delle tecniche RAG tradizionali che si basano esclusivamente su embedding densi, Hybrid RAG sfrutta molteplici metodi di recupero per massimizzare la qualità delle risposte. Grazie al suo design a doppio recupero, supporta una gamma più ampia di tipologie di query, da quelle vaghe a quelle altamente specifiche.
La sua natura ibrida lo rende particolarmente efficace nei casi d'uso in cui è necessario soddisfare molteplici vincoli, come ad esempio la combinazione di informazioni strutturate (ad esempio, "senza parabeni") con intenti più ampi (ad esempio, "deodorante naturale"). Questa analisi comparativa dimostra che Hybrid RAG offre una risposta più equilibrata e adattiva basata sia su segnali densi che sparsi.
Sì, le future direzioni di Hybrid RAG includono l'integrazione di grafi della conoscenza e dati strutturati insieme al testo. In questo modo, può rispondere a query strutturate e fornire risposte che sintetizzano relazioni basate su grafi (come categorie di prodotti o interazioni tra ingredienti) con recensioni degli utenti in formato libero.
Ciò consentirebbe al sistema di generare risposte basate sia su strutture fattuali precise sia su narrazioni umane ricche di sfumature, migliorando sia l'accuratezza fattuale che la soddisfazione dell'utente.
Poiché Hybrid RAG esegue due tipi di recupero e poi fonde i risultati, naturalmente utilizza più risorse computazionali. La generazione dei vettori, soprattutto quando si generano sia embedding densi che sparsi, rappresenta oltre il 90% della latenza totale. Rispetto a un approccio basato solo su embedding densi, ciò aumenta la latenza (~201 ms per query nel nostro benchmark).
Sii il primo a commentare
Il tuo indirizzo email non verrà pubblicato. Tutti i campi sono obbligatori.