Dal lancio a fine novembre 2023, LlamaPacks ha curato oltre 50 pacchetti per aiutarti a far ripartire lo sviluppo della pipeline RAG. Tra questi sono emersi molti pacchetti di recupero avanzato. In questo articolo, analizziamo sette pacchetti di recupero avanzati; vedere il diagramma qui sotto.
Effettueremo due passaggi:
- Dato un caso d’uso, genereremo i benchmark utilizzando Lighthouz AutoBench e valuteremo i pacchetti con Lighthouz Eval Studio per determinare quale si adatta meglio al nostro caso d’uso.
- Una volta identificato il pacchetto vincente, aggiungeremo Llama Guard alla pipeline RAG, modificheremo la sua tassonomia personalizzata, lo rivaluteremo con Eval Studio e osserveremo come cambia il punteggio di valutazione per categorie come l’iniezione rapida.
Innanzitutto, diamo un’occhiata a questi sette LlamaPack di recupero avanzato per vedere come funzionano sotto il cofano.
Fusione ibrida
Questo pacchetto riunisce i vector retriever e i retriever BM25 (Best Match 25) che utilizzano la fusione. BM25 stima la pertinenza dei documenti rispetto a una determinata query di ricerca, aiutando a classificare i documenti in base alla più probabile rilevanza per le esigenze dell’utente.
I fusibili Hybrid Fusion risultano dal Vector Retriever e dal Retriever BM25 pronti all’uso; puoi fornire altri modelli di retriever che desideri personalizzando questo pacchetto.
documents = SimpleDirectoryReader(RAG_DIRECTORY).load_data()
node_parser = SimpleNodeParser.from_defaults()
nodes = node_parser.get_nodes_from_documents(documents)# download and install dependencies
HybridFusionRetrieverPack = download_llama_pack(
"HybridFusionRetrieverPack", "./hybrid_fusion_pack"
)
# create the pack
hybrid_fusion_pack = HybridFusionRetrieverPack(
nodes,
chunk_size=256,
vector_similarity_top_k=2,
bm25_similarity_top_k=2
)
Fonte: towardsdatascience.com