flower  by adap

Federated AI framework for customizable system building

Created 5 years ago
6,237 stars

Top 8.3% on SourcePulse

GitHubView on GitHub
Project Summary

Flower is a framework for building customizable and extendable federated AI systems, designed for researchers and engineers. It simplifies the implementation of federated learning across diverse machine learning frameworks, enabling collaborative model training without centralizing sensitive data.

How It Works

Flower provides a flexible, framework-agnostic approach to federated learning. Its core design allows users to define custom client and server logic, enabling a wide range of federated learning strategies and algorithms. This extensibility supports integration with popular ML frameworks like PyTorch, TensorFlow, and scikit-learn, as well as specialized libraries for areas like robotics and medical imaging.

Quick Start & Requirements

  • Install: pip install flwr
  • Prerequisites: Python 3.7+. Framework-specific examples may require additional installations (e.g., PyTorch, TensorFlow).
  • Resources: Minimal for basic setup; resource requirements scale with model complexity and dataset size.
  • Docs: Flower Docs
  • Quickstarts: TensorFlow, PyTorch, Hugging Face

Highlighted Details

  • Supports a broad spectrum of ML frameworks including PyTorch, TensorFlow, Hugging Face Transformers, JAX, and scikit-learn.
  • Features "Flower Baselines," a collection of reproducible federated learning experiments from research publications.
  • Offers numerous usage examples, from basic quickstarts to advanced scenarios like federated fine-tuning of LLMs and vision transformers.
  • Includes tutorials on privacy and security in federated learning.

Maintenance & Community

Flower is actively developed by a community of researchers and engineers. Community contributions are welcomed. The project maintains a Slack channel for community interaction.

Licensing & Compatibility

Flower is released under the Apache 2.0 license, which permits commercial use and integration with closed-source projects.

Limitations & Caveats

While framework-agnostic, users must manage framework-specific dependencies. The breadth of supported frameworks means some quickstarts or examples might be more mature than others.

Health Check
Last Commit

22 hours ago

Responsiveness

1+ week

Pull Requests (30d)
178
Issues (30d)
3
Star History
84 stars in the last 30 days

Explore Similar Projects

Starred by Jiayi Pan Jiayi Pan(Author of SWE-Gym; MTS at xAI), Christian Laforte Christian Laforte(Distinguished Engineer at NVIDIA; Former CTO at Stability AI), and
3 more.

lightning-hydra-template by ashleve

0.1%
5k
ML experimentation template using PyTorch Lightning + Hydra
Created 4 years ago
Updated 1 year ago
Feedback? Help us improve.