freshcrate
Home > Frameworks > FlexRAG

FlexRAG

FlexRAG: A RAG Framework for Information Retrieval and Generation.

Description

FlexRAG: A RAG Framework for Information Retrieval and Generation.

README

Language Code Style Imports: isort github license Read the Docs Read the Docs PyPI - Version DOI arXiv

| Introduction Video | README (chinese) | Documentation | Retrievers | Examples |

FlexRAG is an innovative open-source framework designed to streamline the rapid reproduction, development, and evaluation of Retrieval-Augmented Generation (RAG) systems. It provides comprehensive support for various RAG scenarios, including text-based, multimodal, and web-accessible applications. With an end-to-end pipeline covering everything from data preparation to system evaluation, FlexRAG empowers researchers to efficiently share their work with the community and swiftly develop demonstrative prototypes based on their algorithms.


📖 Table of Contents

✨ Key Features

📢 News

  • 2025-06-17: Our publication FlexRAG: A Flexible and Comprehensive Framework for Retrieval-Augmented Generation is now available!
  • 2025-03-24: The Chinese documentation is now available! Please visit the documentation for more details.
  • 2025-02-25: FlexRAG's LocalRetriever now supports loading from the HuggingFace Hub.
  • 2025-01-22: A new entrypoint run_retriever and four new information retrieval metrics (e.g., RetrievalMAP) are now available. Check out the documentation for more details.
  • 2025-01-08: We provide Windows wheels for FlexRAG. You can install FlexRAG via pip on Windows now.
  • 2025-01-08: The benchmark of FlexRAG on Single-hop QA tasks is now available. Check out the benchmarks for more details.
  • 2025-01-05: Documentation for FlexRAG is now available. Check out the documentation for more details.

🚀 Getting Started

To install FlexRAG via pip:

pip install flexrag

Visit our documentation to learn more.

🏗️ Architecture

FlexRAG is designed with a modular architecture, allowing you to easily customize and extend the framework to meet your specific needs. The following diagram illustrates the architecture of FlexRAG:

📊 Benchmarks

We have conducted extensive benchmarks using the FlexRAG framework. For more details, please refer to the benchmarks page.

🏷️ License

This repository is licensed under the MIT License. See the LICENSE file for details.

🖋️ Citation

If you use FlexRAG in your research, please cite our project:

@software{Zhang_FlexRAG_2025,
author = {Zhang, Zhuocheng and Feng, Yang and Zhang, Min},
doi = {10.5281/zenodo.14593327},
month = jan,
title = {{FlexRAG}},
url = {https://github.com/ictnlp/FlexRAG},
year = {2025}
}
@misc{zhang2025flexragflexiblecomprehensiveframework,
      title={FlexRAG: A Flexible and Comprehensive Framework for Retrieval-Augmented Generation}, 
      author={Zhuocheng Zhang and Yang Feng and Min Zhang},
      year={2025},
      eprint={2506.12494},
      archivePrefix={arXiv},
      primaryClass={cs.CL},
      url={https://arxiv.org/abs/2506.12494}, 
}

❤️ Acknowledgements

This project benefits from the following open-source projects:

Release History

VersionChangesUrgencyDate
0.3.0## What's Changed * [FEAT] Add prepare corpus entrypoint by @ZhuochengZhang98 in https://github.com/ictnlp/FlexRAG/pull/29 * [REFACTOR] Configure optimize by @ZhuochengZhang98 in https://github.com/ictnlp/FlexRAG/pull/30 * [REFACTOR] Refactor retriever by @ZhuochengZhang98 in https://github.com/ictnlp/FlexRAG/pull/34 * [Fix] Remove python 3.14 in classifiers by @ZhuochengZhang98 in https://github.com/ictnlp/FlexRAG/pull/35 **Full Changelog**: https://github.com/ictnlp/FlexRAG/compare/0.Low6/10/2025

Dependencies & License Audit

Loading dependencies...

Similar Packages

kg-ragThis project implements a comprehensive framework for Knowledge Graph Retrieval Augmented Generation (KG-RAG). It focuses on financial data from SEC 10-Q filings and explores how knowledge graphs can main@2026-04-21
fed-ragA framework for fine-tuning retrieval-augmented generation (RAG) systems.v0.0.27
langgraphBuild resilient language agents as graphs.1.1.8
crewAIFramework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, CrewAI empowers agents to work together seamlessly, tackling complex tasks.1.14.2
monocleMonocle is a framework for tracing GenAI app code. This repo contains implementation of Monocle for GenAI apps written in Python. v0.7.8