π€ Agentic RAG-R1: Enhance Agentic RAG Reasoning Capacity via Reinforcement Learning π
December 4, 2025 Β· View on GitHub
Table of Contents
- π€ Agentic RAG-R1: Enhance Agentic RAG Reasoning Capacity via Reinforcement Learning π
Introduction π
Agentic RAGβR1 is an openβsource initiative to build an Agentic RetrievalβAugmented Generation (RAG) system by endowing a base language model with autonomous search & reasoning skills through reinforcement learning (currently using the GRPO algorithm).
Chinese Language Version:
English Language Version:
What is Agentic RAG? π‘
Agentic RAG combines two powerful concepts:
- RetrievalβAugmented Generation (RAG): Combines generative power with onβtheβfly retrieval from external knowledge bases, ensuring factual and upβtoβdate answers.
- Agentic AI: Gives the model the ability to decide when to retrieve, what to retrieve, and how to weave the retrieved evidence into its reasoning.
Architecture ποΈ
Our architecture is inspired by TCβRAG and features an agent memory stack that orchestrates the full deliberation loop, supporting the following actions:
- Plan (β)
- Reasoning (β )
- Backtrack (β )
- Summary (β )
- Tool Observation β wiki/document/knowledgeβgraph search, etc. (β )
- Conclusion (β )
Training Strategy π§
Motivated by DeepSeek-R1, we apply GRPO (Generalized Relevance Policy Optimization) to reinforce the agent's choice of reasoning steps and retrieval actions, effectively boosting both search depth and answer quality.
Rollout Generation π
Installation π οΈ
We use conda to manage the environment. Follow these steps to set up:
conda create -n AgenticRAG python=3.11 -y
conda activate AgenticRAG
pip install -r requirements.txt
Tools Environment (Optional) π§°
We provide our search tool repository ArtSearch as the search engine, which supports retrieval of information from Wikipedia. You can follow the instructions in that repository to deploy a local instance of the search system.
Folder Structure π
.
βββ ArtSearch # Search tool integration
βββ checkpoints # Model checkpoints
βββ examples # Example use cases
βββ experiments
β βββ evaluation # Evaluation scripts and results
β βββ training # Training configurations
βββ README.md
βββ requirements.txt
βββ script
β βββ evaluation # Evaluation scripts
β βββ run_server.sh # Server deployment script
β βββ training # Training scripts
βββ service
β βββ chat_client.py # Client for interacting with the model
β βββ chat_server.py # Server for hosting the model
βββ src
β βββ config # Configuration files
β βββ data # Data processing utilities
β βββ evaluation # Evaluation metrics and tools
β βββ models # Model definitions
β βββ train.py # Main training script
β βββ utils # Utility functions
Quick Start β‘
Follow the steps below to get up and running with Agentic RAGβR1.
Before you start, rename file ".env_format" to ".env" and fill the necessary os enviroment variables.
Training
- Zeroβ2 Mode
./script/training/train_zero2.sh
- Zeroβ3 Mode
./script/training/train_zero3.sh
Inference
- Example Mode
comming soon~
- Server Mode
Launch the chat server:
./script/run_server.sh
Features β¨
-
LoRA Tuning Support π§: Fine-tune efficiently with Low-Rank Adaptation
-
Model Quant Support π»: Support model quant to nf4 and ..
-
Custom Agent Tools π οΈ: Integrate your own tools and personal RAG datasets
-
Distributed Training π: Support for Deepspeed Zero 2 Stage and Zero 3 Stage
-
Efficient Resource Usage π»: Support for models up to 32B parameters using only 2 A100 GPUs
-
Tool Calling Reward π―: Enhanced reward model that includes:
- Accuracy reward
- Format reward
- RAG accuracy reward using the RAGAS framework
The total reward is calculated as:
-
TCRAG Integration π: Use TCRAG as the rollout generator
Results π
Experiment Log on Qwen 2.5-7B-Instruct
We have made our training logs publicly available at: SwanLab Training Log
Results on MedQA Test Set π₯
Our Qwen 2.5-7B-Instruct model was evaluated on the MedQA test set using Qwenβ2.5β72B as the judge:
| Configuration | Format Accuracy | Answer Accuracy |
|---|---|---|
| Before fine-tuning | 39% | 84% |
| Before fine-tuning + search | 56% | 79% |
| After fine-tuning (200 steps) + search | 92% | 87% |
Roadmap πΊοΈ
- Add more tools
- [Additional planned features]
Acknowledgements π
The concept of Agentic-RAG-R1 is inspired by Deepseek-R1 and TC-RAG. We sincerely appreciate the efforts of these teams for their contributions to open-source research and development. This work is in the same period as work with Search-R1 and ReSearch.
Contributorsπ
Supervisors: Junfeng Zhao, Xu Chu, Yasha Wang
Affiliation: Key Laboratory of High Confidence Software Technologies (Peking University), School of Computer Science, Peking University, China
Citation π
If you use this work in your research, please cite:
@misc{Agentic_RAG_R1,
title = {Agentic RAG-R1: Enhance Agentic RAG Reasoning Capacity via Reinforcement Learning},
author = {Xinke Jiang, Jiaran Gao, Rihong Qiu, Zhixin Zhang, Wentao Zhang, Yue Fang, Hongxin Ding},
year = {2025},
howpublished= {\url{https://github.com/jiangxinke/Agentic-RAG-R1}},
note = {GitHub repository},
}
π Star History
License π
This project is licensed under the Apache License. See the LICENSE file for details.