Skip to main content

Introduction

R2R offers a flexible configuration system that allows you to customize your Retrieval-Augmented Generation (RAG) applications. This guide introduces the key concepts and methods for configuring R2R.

Configuration Levels

R2R supports two main levels of configuration:
  1. Server Configuration: Define default server-side settings.
  2. Runtime Configuration: Dynamically override settings when making API calls.

Server Configuration

The default settings for a light R2R installation are specified in the r2r.toml file. When doing a full installation the R2R CLI uses the full.toml to override some of the default light default settings with those of the added providers. To create your own custom configuration:
  1. Create a new file named my_r2r.toml in your project directory.
  2. Add only the settings you wish to customize. For example:
my_r2r.toml
  1. Launch R2R with the CLI using your custom configuration:
R2R will use your specified settings, falling back to defaults for any unspecified options.

Runtime Configuration

When calling endpoints, you can override server configurations on-the-fly. This allows for dynamic control over search settings, model selection, prompt customization, and more. For example, using the Python SDK:

Next Steps

For more detailed information on configuring specific components of R2R, please refer to the following pages: