AI GitHub
RAGatouille for ColBERT retrieval experiments
Index and retrieve text using token-level late interaction through a Python interface.
Key Takeaways
- RAGatouille wraps ColBERT-style indexing and search.
- Start from a compatible late-interaction checkpoint and a passage collection with stable IDs.
- Index the same passages used by a single-vector baseline.
- Index and model dependencies are part of the setup.
How it works
RAGatouille wraps ColBERT-style indexing and search. Documents retain richer token-level representations than a single embedding per passage, with storage and compute implications.
What you need
Start from a compatible late-interaction checkpoint and a passage collection with stable IDs. Treat the index as an artifact tied to that checkpoint and segmentation method.
What to try first
Index the same passages used by a single-vector baseline. Compare both systems on exact terminology and queries that use paraphrases.
Record index size and candidate retrieval time at different corpus sizes. A quality gain on a small test set may carry a storage cost at production scale.
Where to look for failures
Index and model dependencies are part of the setup. Track storage as well as recall when evaluating token-level representations.
Related Franklin pages
Keep a lexical baseline while testing learned or late-interaction retrieval. Use the same labels and input segmentation, and compare index size and search time alongside relevance.
- Run lexical and dense retrieval experiments with research-oriented tooling. Pyserini for reproducible retrieval baselines
- Work with ColBERT-style representations and retrieval in a Python library. PyLate for training and using late-interaction retrievers
For the full path from source documents to generated answers, start with Franklin’s glossary. Retrieval-augmented generation
Project documentation
Try it for your workflow
Explore the project’s documentation for setup and usage, or save this page to a collection for later.
Read the project documentation ↗