Part 2 and Part 3 built federated learning from scratch, in a few dozen lines of numpy. That is the best way to understand it, and the worst way to deploy it. A real federation needs machines that find each other over a network, survive dropped connections, authenticate one another, move large models efficiently and keep a record of every round. That is what a framework is for.
There are many federated learning frameworks, and they are not interchangeable. Some are built for research on a single machine, some for production across hospitals or banks, and some have quietly stopped being maintained. This post surveys the main open-source options as they stand in October 2026, explains what each one is for, and ends with a guide to choosing.
What a framework does for you
In almost every framework, you write the model and a training function, much like the local_training function in Part 2. The framework provides the rest:
- a client SDK that runs at each site, receives the model, calls your training code and sends the update back;
- aggregation strategies, from FedAvg to the robust rules and server optimisers of Part 3;
- orchestration: starting rounds, choosing which clients take part, coping with clients that disappear, and recording results;
- communication, usually gRPC or HTTP, with support for models too large to send in one piece;
- security and privacy: authentication of sites, encrypted connections, and in some frameworks secure aggregation, differential privacy or homomorphic encryption;
- simulation, so that the same code can run with hundreds or thousands of virtual clients on one machine before any real site is involved.
How to compare them
Six questions separate the frameworks better than any feature list:
- Research or production? A simulation library is ideal for a paper and of little use for a deployment, and the reverse is often true too.
- Which machine learning libraries does it support? Some work with anything that produces arrays of numbers; others are tied to one library.
- Which set-up? Many phones (cross-device), a few organisations (cross-silo), or a hierarchy of regions. Some frameworks also support vertical federated learning, where sites hold different features about the same people, such as a bank and a retailer that share customers, rather than the same features about different people.
- Which privacy tools are built in? Secure aggregation, differential privacy, homomorphic encryption, trusted execution environments.
- Who maintains it, and under which licence? A company, a foundation or a university lab? And is the licence permissive, such as Apache 2.0 or MIT?
- Is it still maintained? This matters more than it sounds. Several well-known frameworks have been archived or have stopped changing.
The landscape
Activity is worth checking before committing to any of them. The chart below shows the most recent change to each framework’s main repository on GitHub.
General-purpose frameworks
Flower
Flower is the most widely used general-purpose framework today. It began as a research project at the University of Oxford (Beutel et al., 2020) and is now developed by Flower Labs under the Apache 2.0 licence. Its main strength is that it is framework-agnostic: the same federation can train PyTorch, TensorFlow, Hugging Face, scikit-learn or plain numpy models. It ships a long list of aggregation strategies, a simulation mode for running many virtual clients on one machine, and good tutorials. For most new projects, research or production, it is the sensible place to start.
NVIDIA FLARE
NVIDIA FLARE (Federated Learning Application Runtime Environment) is an open-source Python SDK for federated learning and other federated computations, such as statistics across sites (Roth et al., 2022). Its design puts each site in control: sites approve the computation they run and decide which results may leave. It is aimed at real deployments across organisations, with a path from local simulation to production, and it is a common choice in medical imaging. Apache 2.0.
TensorFlow Federated
TensorFlow Federated (TFF) comes from Google, which deployed federated learning at scale for phone keyboards, and has moved to the google-parfait organisation on GitHub. It has two layers: a high-level API that applies standard federated training to existing TensorFlow models, and a lower-level Federated Core for expressing new federated algorithms precisely. TFF is built for research and experimentation, and its included runtime simulates a federation on one machine. It is the natural choice for algorithm research on TensorFlow, and not a deployment system. Apache 2.0.
FEDn
FEDn is the framework we co-developed at Uppsala University with Scaleout Systems, which has been building it since 2019 (Ekmefjord et al., 2022). It was designed from the start as a production-grade hierarchical framework: clients connect to intermediate servers, called combiners, that aggregate their updates before the global model is formed. That tiered design is what lets it scale to many clients and keep running when parts of the system fail.
Its main features, as its maintainers list them:
- any machine learning library, with examples for PyTorch, TensorFlow/Keras, scikit-learn and Hugging Face;
- clients in any language, not only Python (C++ and Kotlin among them), so that it can run on edge devices;
- no open ports at the client: sites connect outwards, which makes it much easier to get past hospital and company firewalls;
- built-in algorithms including FedAvg, FedAdam, FedYogi and FedAdagrad, and a plug-in architecture for adding aggregators, storage backends and databases;
- a web interface, a command line and a Python API for running and following experiments.
We used FEDn for FedQAS, federated question answering across organisations, and for training only part of a model on edge devices. The open-source fedn package is on PyPI (version 0.33, September 2025). FEDn now also forms the federated learning engine of Scaleout Edge, Scaleout’s platform for deploying and training models on edge nodes and data silos from a central control plane. Its client SDK is on GitHub (the scaleout package on PyPI) under Apache 2.0; the platform itself is commercial, hosted by Scaleout or deployed on your own infrastructure.
FedML
FedML began as a research library and benchmark for federated learning (He et al., 2020). It has since grown into a broader library for distributed training and model serving, and its development is now backed by TensorOpera, a commercial platform for generative AI. The open-source repository was last updated in October 2025. It remains useful for its research algorithms and benchmarks, but check the current direction of the project before relying on it in production. Apache 2.0.
Privacy and data governance
PySyft
PySyft, from the OpenMined community, has a different goal from the others: remote data science. A data scientist explores mock data, then submits code that the data owner reviews and runs on the real data, so that only approved results are returned. Recent versions were rebuilt around this workflow, with communication through cloud storage the organisations already use, and support for secure enclaves. It is a good fit when the question is “may this analysis run on our data?” more than “can we train a shared model?”. Apache 2.0.
FATE
FATE (Federated AI Technology Enabler) was started at WeBank and is hosted by the Linux Foundation (Liu et al., 2021). It is built for industry, especially finance, and its distinguishing feature is strong cryptography: homomorphic encryption and secure multi-party computation. It is also one of the few frameworks with mature support for vertical federated learning, including private set intersection to match records across parties and vertical versions of gradient-boosted trees and neural networks. It is heavier to deploy than most, and its main repository has not changed since November 2024. Apache 2.0.
vantage6
vantage6 describes itself as an operations platform for privacy-enhancing technologies. It runs federated learning and multi-party computation as “algorithms” sent to nodes at each organisation, which execute them on local data. It has both a central server and peer-to-peer communication between nodes, so the same infrastructure can serve many different analyses. Apache 2.0.
Healthcare and life sciences
Fed-BioMed
Fed-BioMed, originally developed by Inria and Université Côte d’Azur, is built for biomedical research. It supports federated learning and federated analytics with PyTorch and scikit-learn, and is designed for deployment in real clinical settings, not only for simulation. Apache 2.0.
Substra
Substra was developed by Owkin and is hosted by the LF AI & Data Foundation. It records every operation in a traceable way and has been used in production between pharmaceutical companies, most notably in the MELLODDY drug-discovery project. Its main repository has not changed since October 2024. Apache 2.0.
Research and simulation
- FedLab (Zeng et al., 2021) is a flexible PyTorch framework that makes it quick to implement and compare new federated algorithms. Apache 2.0.
- FederatedScope, from Alibaba (Xie et al., 2022), uses an event-driven design that suits heterogeneous and asynchronous settings, and has extensive research tooling. Apache 2.0, unchanged since August 2024.
- APPFL (Ryu et al., 2022) focuses on privacy-preserving federated learning, with optional differential privacy, synchronous and asynchronous algorithms, and simulation on high-performance computers with MPI. MIT licence.
Two benchmarks are also worth knowing. LEAF (Caldas et al., 2018) provides naturally partitioned datasets, such as handwriting split by writer, which many papers still use. FedScale (Lai et al., 2022) measures model and system performance at scale. Neither has changed since 2023, which is less of a problem for a benchmark than for a framework.
No longer maintained
Several frameworks that appear in older papers and tutorials are no longer a safe choice for new work:
- OpenFL (repository), started by Intel with the University of Pennsylvania for the Federated Tumor Segmentation (FeTS) project (Reina et al., 2021). Its repository now states that it is no longer under active development and will be archived, and it recommends that users move to Flower.
- IBM Federated Learning (repository), archived on GitHub.
- FLUTE, from Microsoft Research (repository), archived on GitHub.
- PaddleFL, for Baidu’s PaddlePaddle (repository), unchanged since July 2023.
At a glance
| Framework | Best for | Maintained by | Licence | Last change |
|---|---|---|---|---|
| Flower | Almost anything; the default starting point | Flower Labs | Apache 2.0 | Oct 2026 |
| NVIDIA FLARE | Production across organisations, medical imaging | NVIDIA | Apache 2.0 | Oct 2026 |
| TensorFlow Federated | Algorithm research on TensorFlow | Apache 2.0 | Oct 2026 | |
| FEDn | Scalable cross-silo and edge deployments; clients in any language, no open ports at the client | Scaleout Systems, from Uppsala University research | Apache 2.0 (fedn, client SDK); Scaleout Edge is commercial |
Sep 2025 (fedn); client SDK Oct 2026 |
| FedML | Research algorithms and benchmarks | TensorOpera | Apache 2.0 | Oct 2025 |
| PySyft | Remote data science with owner approval | OpenMined | Apache 2.0 | Oct 2026 |
| FATE | Finance, vertical federated learning, strong cryptography | WeBank, hosted by LF AI & Data | Apache 2.0 | Nov 2024 |
| vantage6 | Federated learning and multi-party computation across organisations | IKNL and the vantage6 community | Apache 2.0 | Oct 2026 |
| Fed-BioMed | Biomedical research across hospitals | Inria and Université Côte d’Azur | Apache 2.0 | Oct 2026 |
| Substra | Traceable collaborations in life sciences | Owkin, LF AI & Data | Apache 2.0 | Oct 2024 |
| FedLab | Implementing new algorithms in PyTorch | SMILELab research group | Apache 2.0 | Oct 2025 |
| FederatedScope | Heterogeneous and asynchronous research | Alibaba | Apache 2.0 | Aug 2024 |
| APPFL | Privacy-preserving research on HPC | Argonne National Laboratory | MIT | Oct 2026 |
How to choose
- Starting out, or writing a paper? Begin with Flower. It works with any machine learning library, and the same code runs in simulation and in deployment. For algorithm research tied to TensorFlow, TFF is the alternative.
- Deploying across hospitals or companies? Look at NVIDIA FLARE or Flower, and, for biomedical research specifically, Fed-BioMed or vantage6. Talk to the sites’ IT and legal teams early: what each site is allowed to run usually decides more than any feature.
- Many sites or edge devices, behind strict firewalls? FEDn scales through its tiered combiners, needs no open ports at the client, and accepts clients written in other languages than Python. Scaleout Edge, its commercial successor, offers it as a managed or self-hosted platform.
- Sites hold different features about the same people? That is vertical federated learning, and FATE is the most complete open-source option.
- The real question is permission to analyse data, not training a model? PySyft is built for that workflow.
- Whatever you choose, check the repository’s recent activity and open issues, and run your own model in the framework’s simulation mode before any site installs anything.
Where Decentrai fits
My own framework, Decentrai, is the subject of Part 5. It is built around hierarchical federated learning, with regional coordinators between the clients and a global orchestrator, and puts each of the aggregators from Part 3 at the level of the hierarchy where it works best: robust rules where individual client updates are visible, server optimisers where there is one global model.
Further reading
- Beutel et al. (2020). Flower: A Friendly Federated Learning Research Framework.
- Roth et al. (2022). NVIDIA FLARE: Federated Learning from Simulation to Real-World.
- Liu et al. (2021). FATE: An Industrial Grade Platform for Collaborative Learning With Data Protection. Journal of Machine Learning Research.
- Ekmefjord et al. (2022). Scalable federated machine learning with FEDn.
- He et al. (2020). FedML: A Research Library and Benchmark for Federated Machine Learning.
- Ryffel et al. (2018). A generic framework for privacy preserving deep learning. The original PySyft paper.
- Caldas et al. (2018). LEAF: A Benchmark for Federated Settings.