Skip to main content

llama-index packs ragatouille_retriever integration

Project description

RAGatouille Retriever Pack

RAGatouille is a cool library that lets you use e.g. ColBERT and other SOTA retrieval models in your RAG pipeline. You can use it to either run inference on ColBERT, or use it to train/fine-tune models.

This LlamaPack shows you an easy way to bundle RAGatouille into your RAG pipeline. We use RAGatouille to index a corpus of documents (by default using colbertv2.0), and then we combine it with LlamaIndex query modules to synthesize an answer with an LLM.

A full notebook guide can be found here.

CLI Usage

You can download llamapacks directly using llamaindex-cli, which comes installed with the llama-index python package:

llamaindex-cli download-llamapack RAGatouilleRetrieverPack --download-dir ./ragatouille_pack

You can then inspect the files at ./ and use them as a template for your own project!

Code Usage

You can download the pack to a ./ragatouille_pack directory:

from llama_index.core.llama_pack import download_llama_pack

# download and install dependencies
RAGatouilleRetrieverPack = download_llama_pack(
    "RAGatouilleRetrieverPack", "./ragatouille_pack"
)

From here, you can use the pack, or inspect and modify the pack in ./ragatouille_pack.

Then, you can set up the pack like so:

# create the pack
ragatouille_pack = RAGatouilleRetrieverPack(
    docs,  # List[Document]
    llm=OpenAI(model="gpt-3.5-turbo"),
    index_name="my_index",
    top_k=5,
)

The run() function is a light wrapper around query_engine.query.

response = ragatouille_pack.run("How does ColBERTv2 compare to BERT")

You can also use modules individually.

from llama_index.core.response.notebook_utils import display_source_node

retriever = ragatouille_pack.get_modules()["retriever"]
nodes = retriever.retrieve("How does ColBERTv2 compare with BERT?")

for node in nodes:
    display_source_node(node)

# try out the RAG module directly
RAG = ragatouille_pack.get_modules()["RAG"]
results = RAG.search(
    "How does ColBERTv2 compare with BERT?", index_name=index_name, k=4
)
results

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

Built Distribution

File details

Details for the file llama_index_packs_ragatouille_retriever-0.4.0.tar.gz.

File metadata

File hashes

Hashes for llama_index_packs_ragatouille_retriever-0.4.0.tar.gz
Algorithm Hash digest
SHA256 55a80af76e9f878b802604ab2a63dbb7f8d4d4743b19c756ede32a98f503441d
MD5 1ce449c1c6199c02b85eb67ba87966fa
BLAKE2b-256 32f4866fb57aa75305c3d5aa18679ed62266a207163eb160ca32ac1eaca18f68

See more details on using hashes here.

File details

Details for the file llama_index_packs_ragatouille_retriever-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for llama_index_packs_ragatouille_retriever-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 73d41415a09432e9cf2eb37cde1394a234446381a69dd95fe8a15e424492dfa5
MD5 e9874dc9760a09b4eb54db1c087740b0
BLAKE2b-256 f5e94282989f4ba6dc7cf1ac4d8f70ea57dac2a9ef87d909bd569bc9ef5d2055

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page