r2r

R2R was designed to bridge the gap between local LLM experimentation and scalable, production-ready Retrieval-Augmented Generation (RAG). R2R provides a comprehensive and SOTA RAG system for developers, built around a RESTful API for ease of use.

Key Features

  • πŸ“ Multimodal Support: Ingest files ranging from .txt, .pdf, .json to .png, .mp3, and more.
  • πŸ” Hybrid Search: Combine semantic and keyword search with reciprocal rank fusion for enhanced relevancy.
  • πŸ”— Graph RAG: Automatically extract relationships and build knowledge graphs.
  • πŸ—‚οΈ App Management: Efficiently manage documents and users with rich observability and analytics.
  • 🌐 Client-Server: RESTful API support out of the box.
  • 🧩 Configurable: Provision your application using intuitive configuration files.
  • πŸ”Œ Extensible: Develop your application further with easy builder + factory pattern.
  • πŸ–₯️ Dashboard: Use the R2R Dashboard, an open source React+Next.js app for a user-friendly interaction with R2R.

Quickstart

The R2R Quickstart provides a step-by-step guide to get up and running with R2R in minutes. The guide demonstrates R2R’s Retrieval-Augmented Generation (RAG) system by ingesting sample documents and then showcasing features for search, RAG, logging, analytics, and document management.

Getting Started

To get started with R2R, we recommend starting with the quickstart and then moving on to specific cookbooks.

RAG Cookbooks

  • Multiple LLMs: A simple cookbook showing how R2R supports multiple LLMs.
  • Hybrid Search: A brief introduction to running hybrid search with R2R.
  • Multimodal RAG: A cookbook on multimodal RAG with R2R.
  • Knowledge Graphs: A walkthrough of automatic knowledge graph generation with R2R.
  • Local RAG: A quick cookbook demonstration of how to run R2R with local LLMs.
  • Reranking: A short guide on how to apply reranking to R2R results.

App Features

Sample Output

Here are some example commands along with their raw outputs:

Quickstart GIF

Community

Join our Discord server to get support and connect with both the R2R team and other developers in the community. Whether you’re encountering issues, looking for advice on best practices, or just want to share your experiences, we’re here to help.