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

pip install syft-flwr

Or install from source:

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

Documentation

📚 Full Documentation

Development

See DEVELOPMENT.md for development setup and guidelines.

Releasing

See RELEASE.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.0.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.0-py3-none-any.whl (50.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for syft_flwr-0.5.0.tar.gz
Algorithm Hash digest
SHA256 b05f1d9be72ab5863896ab6052d3cbe405a36b830cb841aae0397da5c782ec72
MD5 b6923f893bc300aa87c69f8e7424fb90
BLAKE2b-256 f2e6a8104b076174e1071838ba61acbf2f12eb0d24891617a73cc62669ccabf8

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for syft_flwr-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8c062c755fdc80261e92a290f1bf2f5f6b9500dbda1d819371513f371f93a216
MD5 b52a205f9053e077b1ae5e7eb6529769
BLAKE2b-256 e5fd3460721a3d76fb695b4758d435b381d17edf405f260a44cfd899a3f99b36

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