A framework for federated fine-tuning of retrieval-augmented generation (RAG) systems.
Project description
FedRAG
FedRAG is an open-source framework for federated fine-tuning of Retrieval-Augmented Generation (RAG) systems.
Simplified RAG fine-tuning across centralized or federated architectures
Advanced RAG fine-tuning
Comprehensive support for state-of-the-art RAG fine-tuning methods that can be federated with ease.
Work with your tools
Seamlessly integrates with popular frameworks including HuggingFace, LlamaIndex, and LangChain — use the tools you already know.
Lightweight abstractions
Clean, intuitive abstractions that simplify RAG fine-tuning while maintaining full flexibility and control.
Installation
From package managers
# pypi
pip install fedrag
# conda-forge
conda install -c conda-forge fed-rag
[!NOTE] Extras for
fed-ragare also available, such as the HuggingFace extra, which can be installed viapip install fed-rag[huggingface]
From source
git clone https://github.com/VectorInstitute/fed-rag.git
cd fed-rag
# install using pip
pip install -e .
# or, install using uv, our package manager tool of choice
uv sync --all-extras --group dev --group docs
Documentation
For more detailed documentation, visit our official documentation site.
[!TIP] This README provides a high-level overview, but our official documentation is updated more frequently with the latest features, tutorials, and API changes. For the most current information, please refer to the documentation site.
Examples
Check out our examples directory for more detailed usage examples:
- Basic RAG fine-tuning with federated learning
- Implementing RA-DIT with FedRAG
- Custom federated aggregation strategies
- Integration with popular LLM frameworks
Contributing
We welcome contributions! Please see our Contributing Guide for more details.
Citation
If you use FedRAG in your research, please cite our library:
@software{Fajardo_fed-rag_2024,
author = {Fajardo, Andrei and Emerson, David},
doi = {10.5281/zenodo.15092361},
license = {Apache-2.0},
month = mar,
title = {{fed-rag}},
url = {https://github.com/VectorInstitute/fed-rag},
version = {0.0.14},
year = {2025}
}
[!NOTE] The above citation may not reflect the most recent version of the library. We recommend using the Github citation widget (i.e. "Cite this respository") to obtain a citation entry reflecting the latest released version.
License
FedRAG is released under the Apache License 2.0.
Acknowledgements
FedRAG is developed and maintained by the Vector Institute.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fed_rag-0.0.16.tar.gz.
File metadata
- Download URL: fed_rag-0.0.16.tar.gz
- Upload date:
- Size: 74.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bc1f8d61d938a6172f5660be6f229755fb5e6ba1ea2bc173e357be6e05e29f6a
|
|
| MD5 |
0d55211b518a6a855eade02f288e76dc
|
|
| BLAKE2b-256 |
0f4153e2982b57ae3fca4fbf4abecd97fdfe5350b96ea1171ba1e15f4f4def89
|
File details
Details for the file fed_rag-0.0.16-py3-none-any.whl.
File metadata
- Download URL: fed_rag-0.0.16-py3-none-any.whl
- Upload date:
- Size: 79.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.8
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a5acb676c71e52fe266e2a3026346e4c0372bacec4e26b16157eada9e686bdf
|
|
| MD5 |
2b1ba15935abb1f92e22a5e6d3a548e4
|
|
| BLAKE2b-256 |
129474e15a7a6149f800d5b3dc31f702af5da07710fa9dac9fb957b8c9b799a1
|