Capability · Framework — rag

RAGatouille

RAGatouille wraps the ColBERT retriever in a clean API so teams can adopt late-interaction retrieval without the research plumbing. ColBERT keeps per-token embeddings and scores queries via MaxSim, usually delivering stronger recall than single-vector encoders on long or technical documents.

Framework facts

Category
rag
Language
Python
License
MIT
Repository
https://github.com/AnswerDotAI/RAGatouille

Install

pip install ragatouille

Quickstart

from ragatouille import RAGPretrainedModel

rag = RAGPretrainedModel.from_pretrained('colbert-ir/colbertv2.0')
rag.index(
    collection=['VSET is a NAAC A++ GGSIPU-affiliated college in Delhi.',
                'Ragatouille wraps ColBERT for easy RAG.'],
    index_name='demo',
)
hits = rag.search('Who accredits VSET?')
print(hits[0]['content'])

Alternatives

  • BM25 via rank_bm25 — classic keyword retrieval
  • SentenceTransformers — single-vector dense retrieval
  • SPLADE — sparse learned retrieval
  • Vespa — production late-interaction at scale

Frequently asked questions

When should I prefer ColBERT over single-vector retrieval?

Long, technical documents where specific term matches matter, cross-lingual retrieval, and cases where recall dominates. It costs more storage because you keep per-token vectors.

Can RAGatouille fine-tune ColBERT?

Yes. It exposes training loops for both contrastive fine-tuning and distillation from a cross-encoder teacher.

Sources

  1. RAGatouille — GitHub — accessed 2026-04-20
  2. ColBERT — Stanford — accessed 2026-04-20