Giter VIP home page Giter VIP logo

r2r's Introduction

Docs Discord Github Stars Commits-per-week License: MIT

R2R Answer Engine

Build, scale, and manage user-facing Retrieval-Augmented Generation applications in production.

About

R2R was designed to bridge the gap between local LLM experimentation and scalable, production-ready Retrieval-Augmented Generation (RAG) applications. R2R provides a the latest techniques in RAG and is built around a RESTful API for ease of use.

For a more complete view of R2R, check out the full documentation.

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 full authentication.
  • ๐Ÿ”ญ Observability: Observe and analyze your RAG engine performance.
  • ๐Ÿงฉ Configurable: Provision your application using intuitive configuration files.
  • ๐Ÿ”Œ Extensibility: Develop your application further with easy builder + factory pattern.
  • ๐Ÿ–ฅ๏ธ Dashboard: Use the R2R Dashboard, an open-source React+Next.js app with optional authentication, to interact with R2R via GUI.

Install with pip

The recommended way to get started with R2R is by using our CLI.

pip install r2r

Then, after installing R2R, it is recommended to launch with Docker, if possible:

# export OPENAI_API_KEY=sk-...
r2r serve --docker

Alternatively, you may run R2R directly from the python package, but additional dependencies like Postgres+pgvector must be configured:

# export OPENAI_API_KEY=sk-...
# export POSTGRES...
r2r --config-name=default serve

Quickstart

After installing, the R2R Quickstart is your go to for 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.

API & SDKs

Auth & Admin Features

  • User Auth: A cookbook showing how to authenticate users using R2R.
  • Analytics & Observability: A cookbook showing R2Rs end to end logging and analytics.
  • Dashboard: A how-to guide on connecting with the R2R Admin/User Dashboard.

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.
  • Advanced Graphs: A walkthrough of R2Rs advanced RAG features.
  • 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.

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.

Contributing

We welcome contributions of all sizes! Here's how you can help:

Our Contributors

r2r's People

Contributors

emrgnt-cmplxty avatar nolantrem avatar jcllobet avatar shreyaspimpalgaonkar avatar smig23 avatar gaoyifan avatar mohamed-alired avatar rkalm avatar viraptor avatar jiajunxu avatar hhjin avatar abelanger5 avatar sauravpanda avatar owensims1 avatar gavinvs avatar aaronjimv avatar gravitronics avatar sp6370 avatar hanrelan avatar kevo1ution avatar kense-lab avatar joschkabraun avatar penguine-ip avatar eltociear avatar igor-pechersky avatar blizzardplus avatar hvoecking avatar aashish-upadhyay-101 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.