Skip to content

NVIDIA/NVFlare

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Mar 1, 2025
d4b7454 · Mar 1, 2025
Feb 2, 2025
Feb 25, 2025
Oct 7, 2024
Oct 7, 2024
Mar 1, 2025
Feb 28, 2025
Feb 21, 2025
Sep 4, 2024
Feb 27, 2025
May 9, 2024
Feb 24, 2025
Feb 25, 2025
Dec 20, 2024
Mar 8, 2022
Feb 3, 2025
Aug 21, 2024
Aug 13, 2024
Sep 11, 2023
May 12, 2022
Feb 2, 2025
Feb 25, 2025
Nov 23, 2021
Jan 27, 2025
Dec 23, 2024
Aug 13, 2024
Sep 8, 2022
Aug 9, 2024
Sep 25, 2024
Nov 4, 2022
Jan 3, 2025
Feb 25, 2025
Jun 13, 2024
Mar 8, 2022

Repository files navigation

NVIDIA Logo

NVIDIA FLARE

Website | Paper | Blogs | Talks & Papers | Research | Documentation

Blossom-CI documentation license pypi pyversion downloads

NVIDIA FLARE (NVIDIA Federated Learning Application Runtime Environment) is a domain-agnostic, open-source, extensible Python SDK that allows researchers and data scientists to adapt existing ML/DL workflows to a federated paradigm. It enables platform developers to build a secure, privacy-preserving offering for a distributed multi-party collaboration.

Features

FLARE is built on a componentized architecture that allows you to take federated learning workloads from research and simulation to real-world production deployment.

Application Features

  • Support both deep learning and traditional machine learning algorithms (eg. PyTorch, TensorFlow, Scikit-learn, XGBoost etc.)
  • Support horizontal and vertical federated learning
  • Built-in Federated Learning algorithms (e.g., FedAvg, FedProx, FedOpt, Scaffold, Ditto, etc.)
  • Support multiple server and client-controlled training workflows (e.g., scatter & gather, cyclic) and validation workflows (global model evaluation, cross-site validation)
  • Support both data analytics (federated statistics) and machine learning lifecycle management
  • Privacy preservation with differential privacy, homomorphic encryption, private set intersection (PSI)

From Simulation to Real-World

  • FLARE Client API to transition seamlessly from ML/DL to FL with minimal code changes
  • Simulator and POC mode for rapid development and prototyping
  • Fully customizable and extensible components with modular design
  • Deployment on cloud and on-premise
  • Dashboard for project management and deployment
  • Security enforcement through federated authorization and privacy policy
  • Built-in support for system resiliency and fault tolerance

Take a look at NVIDIA FLARE Overview for a complete overview, and What's New for the lastest changes.

Installation

To install the current release:

$ python3 -m pip install nvflare

Getting Started

To get started, take a look at the instructions and code examples on our website.

  • For more details, see our getting started tutorials.
  • For more advanced examples and step-by-step walk-troughs, see our examples.
  • There are also detailed instructions on how to convert your standalone/centralized training code to federated learning code.
  • If you'd like to write your own NVIDIA FLARE components, a detailed programming guide can be found here.

Community

We welcome community contributions! Please refer to the contributing guidelines for more details.

Ask and answer questions, share ideas, and engage with other community members at NVFlare Discussions.

Related Talks and Publications

Take a look at our growing list of talks, blogs, and publications related to NVIDIA FLARE.

License

NVIDIA FLARE is released under an Apache 2.0 license.