rags  by run-llama

Streamlit app for building RAG pipelines via natural language

created 1 year ago
6,493 stars

Top 8.0% on sourcepulse

GitHubView on GitHub
Project Summary

RAGs is a Streamlit application designed for users to build custom Retrieval-Augmented Generation (RAG) pipelines using natural language prompts. It empowers users to define data sources, tasks, and RAG parameters through an intuitive interface, inspired by OpenAI's GPTs, enabling them to query their data via a chatbot.

How It Works

The application utilizes a "builder agent" to interpret natural language descriptions of the desired RAG pipeline, generating configurations for system prompts, retrieval parameters (like top-k, chunk size), embedding models, and LLMs. Users can then refine these parameters in a dedicated "RAG Config" section before interacting with the generated RAG agent via a standard chatbot interface. This approach simplifies RAG pipeline creation by abstracting complex configurations into a conversational workflow.

Quick Start & Requirements

  • Install via poetry install --with dev.
  • Requires Python 3.x and an OpenAI API key (placed in .streamlit/secrets.toml).
  • Run the app with streamlit run 1_🏠_Home.py.
  • Official documentation and demo available via links in the README.

Highlighted Details

  • Supports local files and web pages as data sources.
  • Allows manual configuration of system prompts, summarization inclusion, top-k, chunk size, embedding models, and LLMs.
  • Supports OpenAI, Anthropic, Replicate, and Hugging Face (local) LLMs and embedding models.
  • Built with LlamaIndex.

Maintenance & Community

  • Project is active with community support via GitHub issues and Discord.
  • Launch blog post provides additional context.

Licensing & Compatibility

  • The README does not explicitly state a license. Compatibility for commercial use or closed-source linking is therefore undetermined.

Limitations & Caveats

The application defaults to OpenAI for both builder and RAG agents, requiring specific configuration for alternatives. Users may need to clear cache folders upon version upgrades due to potential breaking changes in data structures.

Health Check
Last commit

1 year ago

Responsiveness

Inactive

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

Explore Similar Projects

Feedback? Help us improve.