Practical overview
When it fits
Use Trove when a retrieval experiment needs reusable training and evaluation components, flexible relevance-data handling or hard-negative mining.
Who it is for
- Researchers experimenting with transformer-based dense retrieval.
- Developers assembling retriever training and evaluation workflows.
- Teams working with multiple relevance datasets or hard-negative mining.
Documented uses
- Train dense retrievers using binary or graduated relevance labels.
- Combine real, synthetic and mined retrieval data in a dataset workflow.
- Calculate information-retrieval metrics for a retriever.
- Mine hard negatives for given queries.
Requirements & limits
The public GitHub repository identifies an Apache-2.0 license and documents installation through pip or directly from the repository.
- The documented examples require query, corpus and relevance data files for training or evaluation.
- The toolkit is designed to work with Hugging Face Transformers and describes PEFT and distributed training/inference integration.
- The README documents multi-GPU and multi-node launches with Accelerate and DeepSpeed configuration for training.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Train a dense retriever with binary relevance labels
Set up and run Trove training using positive and negative qrels from local files.
Before you start
- Trove and its Hugging Face Transformers integration available in the environment.
- A model checkpoint, plus
queries.jsonl,corpus.jsonl, andtrain_qrel.tsvfiles in the paths used by the script. - Training arguments, model arguments, and data arguments configured for the task.
Steps
Create
RetrievalTrainingArguments,ModelArguments, andDataArguments; configure the model checkpoint and data-processing settings.Load a
BiEncoderRetrieverfrom the model arguments and create positive and negativeMaterializedQRelConfigobjects for the qrels, corpus, and query files.Build a
BinaryDatasetusing the positive and negative configurations and the model's query and passage formatting methods.Load a tokenizer, create a
RetrievalCollator, then create aRetrievalTrainerwith the model, tokenizer, collator, and dataset; calltrainer.train()andtrainer.save_model().
Expected outcome
Trove runs the training workflow and saves the model using the configured output directory.
Guide limitations
BinaryDatasetis for binary relevance labels; useMultiLevelDatasetfor multiple relevance levels.- The documented example filters positives with
min_score=1and negatives withmax_score=1; adapt these settings to the qrel labels and dataset. - The recipe does not specify hardware requirements or guarantee training performance.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 15 October 2026
- Original website title
- BatsResearch/trove · Official homepage title · retained in its source language

