RAGLight  by Bessouat40

Python library for Retrieval-Augmented Generation (RAG)

Created 8 months ago
291 stars

Top 90.5% on SourcePulse

GitHubView on GitHub
Project Summary

RAGLight is a Python library for building Retrieval-Augmented Generation (RAG) systems, offering modular components for integrating various LLMs, embedding models, and vector stores. It targets developers and researchers looking to create context-aware AI applications with support for RAG, Agentic RAG, and RAT (Retrieval Augmented Thinking) pipelines, simplifying the process of connecting documents to LLM responses.

How It Works

RAGLight employs a modular architecture allowing users to swap components like embedding models (e.g., HuggingFace all-MiniLM-L6-v2), LLM providers (Ollama, LMStudio, OpenAI, Mistral, vLLM), and vector stores (Chroma). It supports various data sources including local folders and GitHub repositories, with an intelligent ignore-folders feature to exclude irrelevant files during indexing. The library facilitates building RAG, Agentic RAG, and RAT pipelines, enabling complex workflows with agents and reflection loops.

Quick Start & Requirements

  • Install via pip: pip install raglight
  • Requires a local LLM service (Ollama, LMStudio) or API keys for OpenAI/Mistral.
  • CLI wizard available: raglight chat or raglight agentic-chat.
  • Documentation and examples are available in the repository.

Highlighted Details

  • Supports multiple LLM providers including Ollama, LMStudio, OpenAI, Mistral, and vLLM.
  • Integrates with HuggingFace for embedding models.
  • Offers distinct pipelines for RAG, Agentic RAG, and RAT.
  • Includes a CLI wizard for simplified setup and interaction.
  • Features an "ignore folders" mechanism for efficient document indexing.

Maintenance & Community

The project appears to be actively maintained by Bessouat40. Community interaction channels are not explicitly mentioned in the README.

Licensing & Compatibility

The README does not specify a license. Compatibility for commercial use or closed-source linking is not detailed.

Limitations & Caveats

The README does not explicitly state the license, which could be a blocker for commercial adoption. While it lists supported LLM providers, the setup and configuration details for each might require deeper investigation. The project is presented as a library, implying users need to write Python code to leverage its full capabilities beyond the CLI wizard.

Health Check
Last Commit

1 week ago

Responsiveness

Inactive

Pull Requests (30d)
23
Issues (30d)
14
Star History
239 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.