Trove: A Flexible Toolkit for Dense Retrieval
This toolkit addresses the problem of cumbersome and resource-intensive retrieval experiments for researchers, though it is incremental as it builds on existing dense retrieval methods.
The authors tackled the complexity of dense retrieval experiments by introducing Trove, a flexible toolkit that simplifies research with efficient data management and customization, reducing memory consumption by a factor of 2.6 and enabling linear scaling in inference times.
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.