Skip to content

Welcome to RAG Modulo

RAG Modulo Logo

A robust, customizable Retrieval-Augmented Generation (RAG) solution with advanced AI capabilities

License: MIT Python 3.12+ Docker FastAPI


๐ŸŽฏ What is RAG Modulo?

RAG Modulo is a production-ready Retrieval-Augmented Generation platform that provides enterprise-grade document processing, intelligent search, and AI-powered question answering. Built with modern technologies and designed for scalability, it supports multiple vector databases, LLM providers, and document formats.

โœจ Key Features

  • Advanced AI


    Chain of Thought reasoning, token tracking, and multi-LLM provider support

    Learn more

  • Intelligent Search


    Vector similarity search with hybrid strategies and source attribution

    Learn more

  • Interactive Frontend


    Modern React interface with accordion displays for sources, reasoning, and token tracking

    Learn more

  • Flexible Architecture


    Service-based design with repository pattern and dependency injection

    Learn more

  • Production Ready


    Docker containerized with CI/CD pipeline and comprehensive testing

    Learn more


๐Ÿš€ Quick Start

Get up and running with RAG Modulo in minutes:

# Clone the repository
git clone https://github.com/manavgup/rag-modulo.git
cd rag-modulo

# Set up environment
cp env.example .env
# Edit .env with your API keys

# Start with pre-built images
make run-ghcr
# Initialize development environment
make dev-init

# Build and start development environment
make dev-build
make dev-up

# Validate everything is working
make dev-validate
  1. Go to repository โ†’ "Code" โ†’ "Codespaces"
  2. Click "Create codespace" on your branch
  3. Start coding in browser-based VS Code!

๐ŸŒ Access Points

Service URL Description
Frontend http://localhost:3000 React web interface
Backend API http://localhost:8000 FastAPI backend
MLFlow http://localhost:5001 Experiment tracking
MinIO Console http://localhost:9001 Object storage

๐Ÿ“Š Current Status

Component Status Progress
๐Ÿ—๏ธ Infrastructure โœ… Complete 95%
๐Ÿงช Testing โœ… Excellent 92% (847/918 tests)
๐Ÿš€ Core Services โœ… Operational 90%
๐Ÿ“š Documentation โœ… Comprehensive 90%
๐Ÿ”ง Development โœ… Streamlined 85%

๐Ÿ—๏ธ Architecture Overview

RAG Modulo follows a modern, service-based architecture with clear separation of concerns:

graph TB
    subgraph "Frontend Layer"
        UI[React Web UI]
        CLI[Command Line Interface]
    end

    subgraph "API Layer"
        API[FastAPI Backend]
        AUTH[OIDC Authentication]
    end

    subgraph "Service Layer"
        SEARCH[Search Service]
        CONV[Conversation Service]
        TOKEN[Token Tracking]
        COT[Chain of Thought]
    end

    subgraph "Data Layer"
        VDB[(Vector Database)]
        PG[(PostgreSQL)]
        MINIO[(MinIO Storage)]
    end

    subgraph "External Services"
        LLM[LLM Providers]
        EMB[Embedding Models]
    end

    UI --> API
    CLI --> API
    API --> SEARCH
    API --> CONV
    API --> TOKEN
    API --> COT
    SEARCH --> VDB
    SEARCH --> PG
    CONV --> LLM
    TOKEN --> PG
    COT --> LLM
    API --> MINIO

๐Ÿงช Testing & Quality

Test Results

Category Tests Status Coverage
โšก Atomic Tests 100+ โœ… Excellent 9%
๐Ÿƒ Unit Tests 83 โœ… Good 5%
๐Ÿ”— Integration Tests 43 โœ… Complete N/A
๐ŸŒ E2E Tests 22 ๐Ÿ”„ In Progress N/A
๐Ÿ”Œ API Tests 21 ๐Ÿ”„ In Progress 48%

Quick Commands

# Run all tests
make test-all

# Quick quality checks
make quick-check

# Code quality
make lint

# Security scanning
make security-check

๐Ÿ› ๏ธ Development Workflow

Development Commands

Command Description
make dev-init Initialize development environment
make dev-build Build local development images
make dev-up Start development environment
make dev-restart Rebuild and restart with latest changes
make dev-down Stop development environment
make dev-status Show development environment status
make dev-validate Validate development environment health

Benefits

  • โœ… Local builds by default - No more remote image confusion
  • โœ… Automatic environment setup - Development variables configured
  • โœ… Fast iteration - Changes visible immediately
  • โœ… Health validation - Know when everything is working
  • โœ… Consistent workflow - Same setup for all developers

๐Ÿ“š Documentation Structure

๐Ÿš€ Getting Started

๐Ÿ› ๏ธ Development

๐Ÿงช Testing

๐Ÿš€ Deployment

๐Ÿ–ฅ๏ธ CLI

๐Ÿ“š API Reference

๐Ÿ—๏ธ Architecture

๐Ÿง  Features


๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guide for details.

Quick Contribution

  1. Fork and Clone the repository
  2. Create Feature Branch from main
  3. Make Changes following our guidelines
  4. Run Tests and ensure they pass
  5. Submit Pull Request with clear description

๐Ÿ“ˆ Roadmap

โœ… Phase 1: Foundation (Completed)

  • Comprehensive test infrastructure (847 tests passing)
  • Core services operational
  • Development workflow streamlined
  • CI/CD pipeline automated

๐Ÿ”„ Phase 2: Optimization (Current)

  • Fix remaining 71 test failures
  • Performance optimization
  • Code quality enhancement
  • Documentation improvements

๐Ÿš€ Phase 3: Production (Next)

  • Production deployment guides
  • Monitoring and observability
  • Security hardening
  • Performance tuning

๐Ÿ”ฎ Phase 4: Advanced Features (Future)

  • Agentic AI enhancement
  • Advanced reasoning capabilities
  • Multi-modal support
  • Enterprise features

๐Ÿ†˜ Need Help?

Getting Support

  1. ๐Ÿ“š Documentation: Check our comprehensive guides
  2. ๐Ÿ› Issues: Report bugs
  3. ๐Ÿ’ฌ Discussions: Ask questions
  4. ๐Ÿ”ง Troubleshooting: Common issues

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


Made with โค๏ธ by the RAG Modulo Team

GitHub Docker Python