

π₯ Quickstart! (Ubuntu) π₯
π₯ Quickstart! (macOS) π₯
Flame is a platform that enables developers to compose and deploy federated learning (FL) training workloads easily.
The system is comprised of a service (control plane) and a python library (data plane).
The service manages machine learning workloads, while the python library facilitates composition of ML workloads.
And the library is also responsible for executing FL workloads.
With extensibility of its library, Flame can support various experimentations and use cases.
Prerequisites
The target runtime environment is Linux. Development has been mainly conducted under macOS environment.
One should first set up a development environment.
For more details, refer to here.
This repo has the following directory structure:
flame
βββ CODE_OF_CONDUCT.md
βββ CONTRIBUTING.md
βββ LICENSE
βββ Makefile -> build/Makefile
βββ README.md
βββ api (specification of REST API for flame apiserver)
βββ build (configuration files for building flame binaries and container image)
βββ cmd (source files for flame control plane)
βββ docs (document folder)
βββ examples (example folder)
βββ fiab (dev/test env in a single box)
βββ go.mod
βββ go.sum
βββ lib (python library for core flame data plane)
βββ lint.sh
βββ pkg (go packages for cmd)
βββ scripts (utility scripts)
Supported Algorithms/Mechanisms
Documentation
A full document can be found here. The document will be updated on a regular basis.
Support
We welcome feedback, questions, and issue reports.
Citation
@misc{flame2023,
title={Federated Learning Operations Made Simple with Flame},
author={Harshit Daga and Jaemin Shin and Dhruv Garg and Ada Gavrilovska and Myungjin Lee and Ramana Rao Kompella},
year={2023},
eprint={2305.05118},
archivePrefix={arXiv},
primaryClass={cs.LG}
}