What is the Flower Tool Assembly?
Flower is an open-source federated learning framework designed for flexibility, scalability, and ease of integration with popular machine learning libraries. Flower is framework-agnostic, supporting PyTorch, TensorFlow, JAX, and more, and is used in both academic research and real-world applications. It enables large-scale federated learning experiments and production deployments across heterogeneous devices and environments.
What can you use the Flower Tool Assembly for?
- Federated learning research and experimentation
- Scalable FL deployments (tested with 10,000+ clients)
- Integration with diverse ML frameworks (PyTorch, TensorFlow, etc.)
- Cross-device and cross-silo FL
Limitations/Remarks
- Potential integration complexity in very large or heterogeneous environments
- Scalability challenges in extremely large deployments
Specific Use Cases/Applications
- Mobile and edge device FL
- Academic research in federated optimization
- Industry-scale FL deployments
- Multi-framework FL projects
How to access the Flower Tool Assembly?
- Official Documentation
- GitHub Repository
- Install via pip:
pip install flwr[simulation]
- Community support via Flower Slack
References
- Beutel, D.J. et al. (2020). Flower: A Friendly Federated Learning Research Framework. arXiv:2007.14390. PDF
- Flower Documentation
- Flower GitHub
Original Framework Contributors
- Daniel J. Beutel
- Taner Topal
- Akhil Mathur
- Flower Labs Community
For a full list, see the Flower GitHub contributors.