Self-RAG (2024) logo

Self-RAG (2024)

Free

Model decides when and how to retrieve

FreeFree tier
Type
Open Source

About Self-RAG (2024)

Self-RAG (Self-Reflective Retrieval-Augmented Generation) is a framework that enhances large language models (LLMs) by learning to retrieve, generate, and critique through self-reflection. It trains a single arbitrary LM to adaptively retrieve relevant passages on demand, generate responses, and reflect on both retrieved passages and its own generations using special tokens called reflection tokens. These reflection tokens enable controllable behavior during inference, allowing the model to tailor its output to diverse task requirements. Self-RAG significantly outperforms state-of-the-art LLMs and retrieval-augmented models on open-domain QA, reasoning, fact verification, and long-form generation, improving factuality and citation accuracy over models like ChatGPT and retrieval-augmented Llama2-chat.

Key Features

Adaptive on-demand retrieval of passages instead of fixed retrieval
Generation of reflection tokens for self-critique and control
Single LM trained for retrieval, generation, and reflection
Controllable inference behavior via reflection tokens
Improved factuality and citation accuracy across diverse tasks

Pros & Cons

Pros
  • Outperforms ChatGPT and retrieval-augmented Llama2-chat on QA, reasoning, and fact verification
  • Reduces factual inaccuracies by selectively retrieving only when necessary
  • Allows controllable generation without relying on additional external components
  • Significantly improves factuality and citation accuracy for long-form outputs

Best For

Open-domain question answeringReasoning tasksFact verificationLong-form text generation requiring factual accuracy and citations

FAQ

What is Self-RAG?
Self-RAG is a framework that trains a single language model to adaptively retrieve passages on demand, generate responses, and self-reflect using reflection tokens to improve factuality and controllability.
How does Self-RAG differ from standard RAG?
Unlike standard RAG which retrieves a fixed number of passages regardless of necessity, Self-RAG adaptively decides when to retrieve and reflects on both retrieved and generated content to improve quality and reduce irrelevant information.