Skip to main content

syft_flwr is an open source framework that facilitate federated learning projects using Flower over the SyftBox protocol

Project description

syft-flwr

Easy, file-based, offline capable federated learning

syft-flwr is an open-source framework that combines Flower's federated learning capabilities with file-based communication. Train machine learning models collaboratively across distributed datasets without centralizing data—with easy setup, offline capability, and no servers required.

FL Training Process

Key Features

  • File-Based Communication: Train models without direct network connections—communication happens via file sync (Google Drive or SyftBox)
  • Zero Infrastructure: No servers to maintain, no complex networking setup—just notebooks and file sync
  • Offline Capable: Asynchronous message passing enables training even with intermittent connectivity
  • Privacy by Design: Data never leaves its source—only model updates are shared
  • Flower Integration: Built on Flower's robust FL framework—supports FedAvg, custom strategies, and all standard Flower features

Quick Start

The easiest way to get started is with our Google Colab tutorial—no local setup required:

📓 Zero-Setup FL with Google Colab

Example Notebooks

Example Description Communication
FL Diabetes (Google Drive) Train a diabetes prediction model across distributed Colab notebooks Google Drive
FL Diabetes (SyftBox) Train a diabetes prediction model across distributed machines SyftBox
FL Diabetes (Local) Local simulation for development and testing Local
Federated Analytics Query statistics from private datasets and aggregate them SyftBox
FedRAG Privacy-preserving question answering with RAG SyftBox

Installation

Install from PyPI:

pip install syft-flwr

Or install from source:

pip install "git+https://github.com/OpenMined/syft-flwr.git@main"

Development

See DEVELOPMENT.md for development setup and guidelines.

Releasing

See the Releasing section in DEVELOPMENT.md for the complete release process.

Community

  • 💬 Slack - Join #support-syftbox for questions
  • 🐛 Issues - Report bugs or request features
  • 🌟 Star this repo to support the project!

License

Apache 2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

syft_flwr-0.5.2.tar.gz (38.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

syft_flwr-0.5.2-py3-none-any.whl (50.3 kB view details)

Uploaded Python 3

File details

Details for the file syft_flwr-0.5.2.tar.gz.

File metadata

  • Download URL: syft_flwr-0.5.2.tar.gz
  • Upload date:
  • Size: 38.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for syft_flwr-0.5.2.tar.gz
Algorithm Hash digest
SHA256 b79c96225be916c8e52331507ae34d73a63b9433ad86b25afe0028dac2301a53
MD5 3a613e159d7f7d2c682bab3fbf2f4f1b
BLAKE2b-256 b8cedf3898ad518dc0fd3b7cf2f1f03bf3cb238d7ddc43accf9819a23833a31d

See more details on using hashes here.

File details

Details for the file syft_flwr-0.5.2-py3-none-any.whl.

File metadata

  • Download URL: syft_flwr-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 50.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for syft_flwr-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c3f2714014db0707256c95195942034e917832e56e7504588983d7ca04ba1a1d
MD5 35e280df119ca7ef66f035c4dded616e
BLAKE2b-256 6fe9532977aec0569a2b88cda9b7fa11faf1b68482dc8d3656c85d2aa70add5f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page