Trove: Un Toolkit Flessibile per il Recupero Denso
Trove: A Flexible Toolkit for Dense Retrieval
November 3, 2025
Autori: Reza Esfandiarpoor, Max Zuo, Stephen H. Bach
cs.AI
Abstract
Presentiamo Trove, un toolkit di retrieval open-source e facile da usare che semplifica gli esperimenti di ricerca senza sacrificare flessibilità o velocità. Per la prima volta, introduciamo funzionalità efficienti di gestione dati che caricano ed elaborano (filtrano, selezionano, trasformano e combinano) i dataset di retrieval al volo, con poche righe di codice. Questo offre agli utenti la flessibilità di sperimentare facilmente diverse configurazioni di dataset senza dover calcolare e memorizzare multiple copie di dataset di grandi dimensioni. Trove è altamente personalizzabile: oltre a molte opzioni integrate, consente agli utenti di modificare liberamente i componenti esistenti o sostituirli completamente con oggetti definiti dall'utente. Fornisce inoltre una pipeline unificata a basso codice per la valutazione e l'estrazione di negativi difficili, che supporta l'esecuzione multi-nodo senza alcuna modifica al codice. Le funzionalità di gestione dati di Trove riducono il consumo di memoria di un fattore 2,6. Inoltre, la pipeline di inferenza user-friendly di Trove non introduce overhead, e i tempi di inferenza diminuiscono linearmente con il numero di nodi disponibili. Soprattutto, dimostriamo come Trove semplifichi gli esperimenti di retrieval e consenta personalizzazioni arbitrarie, facilitando così la ricerca esplorativa.
English
We introduce Trove, an easy-to-use open-source retrieval toolkit that
simplifies research experiments without sacrificing flexibility or speed. For
the first time, we introduce efficient data management features that load and
process (filter, select, transform, and combine) retrieval datasets on the fly,
with just a few lines of code. This gives users the flexibility to easily
experiment with different dataset configurations without the need to compute
and store multiple copies of large datasets. Trove is highly customizable: in
addition to many built-in options, it allows users to freely modify existing
components or replace them entirely with user-defined objects. It also provides
a low-code and unified pipeline for evaluation and hard negative mining, which
supports multi-node execution without any code changes. Trove's data management
features reduce memory consumption by a factor of 2.6. Moreover, Trove's
easy-to-use inference pipeline incurs no overhead, and inference times decrease
linearly with the number of available nodes. Most importantly, we demonstrate
how Trove simplifies retrieval experiments and allows for arbitrary
customizations, thus facilitating exploratory research.