RAGTune  by misbahsy

RAG pipeline tuning and evaluation tool

created 1 year ago
264 stars

Top 97.5% on sourcepulse

GitHubView on GitHub
Project Summary

RAGTune provides an automated framework for evaluating and optimizing Retrieval-Augmented Generation (RAG) pipelines. It targets developers and researchers seeking to systematically tune LLMs, embedding models, query transformations, and rerankers for improved RAG performance, leveraging Ragas metrics for evaluation.

How It Works

RAGTune orchestrates experiments by allowing users to select and configure various components of a RAG pipeline. It utilizes the Ragas library to evaluate the generated output against ground truth data using metrics like answer relevancy, context precision, and context recall. The tool supports a wide range of LLMs (OpenAI, Cohere, Anthropic) and embedding models, with extensibility for custom additions.

Quick Start & Requirements

  • Install dependencies: pip install -r requirements.txt
  • Additional system dependencies for document loading: libmagic-dev, poppler-utils, tesseract-ocr, libreoffice, pandoc.
  • Environment variables for API keys (OpenAI, Cohere, Anthropic) must be set in a .env file.
  • Run the Streamlit app: streamlit run Home.py
  • Requires Python 3.10+.
  • Evaluation may incur significant API costs.
  • Official documentation: https://github.com/misbahsy/RAGTune

Highlighted Details

  • Supports evaluation of LLMs, embedding models, query transformations, and rerankers.
  • Integrates Ragas metrics for comprehensive RAG pipeline evaluation.
  • Streamlit UI for interactive experimentation and visualization.
  • Extensible architecture for adding custom LLMs, embedding models, and rerankers.

Maintenance & Community

  • Open to contributions via issues and pull requests.
  • No specific community channels (Discord/Slack) or roadmap are mentioned in the README.

Licensing & Compatibility

  • Licensed under the MIT License.
  • Permissive license suitable for commercial use and integration into closed-source projects.

Limitations & Caveats

The README mentions that automated optimization is planned but not yet implemented. Users must manually configure and add their datasets with questions and ground truth answers before running evaluations, and skipping steps can lead to errors.

Health Check
Last commit

1 year ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
1 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.