Skip to main content

FedOps: Federated Learning Lifecycle Operations Management Platform

FedOps | Slack | LinkedIn | CCL Site | Youtube

GitHub license Slack

FedOps (fedops) is a platform that helps organizations effectively manage and coordinate their federated learning operations:

  • FLScalize: It simplifies the application of data and models in a FL environment by leveraging Flower's Client and Server.

  • Manager: The manager oversees and manages the real-time FL progress of both clients and server

  • CE/CS: Contribution Evaluation and Client Selection processes based on their performance.

  • CI/CD/CFL: the CI/CD/CFL system seamlessly integrates with a Code Repo, enabling code deployment to multiple clients and servers for continuous or periodic federated learning.

  • Monitoring: The FL dashboard is available for monitoring and observing the lifecycle of FL clients and server

FedOps Tutorial

FedOps has developed a web service to manage the lifecycle operations of federated learning on real devices.

  • Install FedOps Library
$ pip install fedops

Run FedOps Agent Studio

Docker Desktop 또는 Docker Engine이 설치된 환경에서 다음 명령으로 실행합니다.

fedops run agent-studio

이 명령은 현재 OS와 CPU architecture에 맞는 gachonccl/fedops-agent-studio:latest 이미지를 확인하고, ~/fedops-workspace를 로컬 Workspace로 연결한 뒤 브라우저를 엽니다. Task별 Python 환경과 데이터는 Workspace에 유지하고, 반복 환경 Sync에 사용하는 uv package/Python cache는 fedops-agent-studio-uv Docker volume에 보존합니다. 따라서 컨테이너와 이미지가 교체되어도 cache를 재사용하며, 특히 Windows Docker Desktop에서 불필요한 재다운로드와 압축 해제 비용을 줄입니다. NVIDIA Container Runtime이 준비된 Linux/Windows 환경에서는 GPU를 자동 사용하고, 그 외 환경에서는 CPU 모드로 실행합니다.

기본 Docker bind address는 0.0.0.0입니다. 따라서 같은 실행으로 localhost, 127.0.0.1, 호스트의 LAN IP에서 접속할 수 있습니다. 호스트 네트워크에 공개되므로 OS firewall에서 허용 범위를 관리해야 합니다. 로컬 장치에서만 접속하려면 다음 옵션을 사용합니다.

fedops run agent-studio --bind-address 127.0.0.1

실제 컨테이너를 변경하지 않고 실행 구성을 먼저 확인할 수 있습니다.

fedops run agent-studio --dry-run

Workspace, Studio port 또는 GPU 모드를 명시하려면 다음 옵션을 사용합니다.

fedops run agent-studio --workspace ~/fedops-workspace --port 24368 --gpu auto

Agent Studio와 로컬 Host integration을 종료하고 결과를 확인하려면 다음 명령을 사용합니다.

fedops stop agent-studio

Real Devices

Single Machine

Community

Paper

FLScalize: Federated Learning Lifecycle Management

@article{Cognitive Computing Lab,
  title={FLScalize: Federated Learning Lifecycle Management},
  author={Semo Yang; Jihwan Moon; Jinsoo Kim; Kwangkee Lee; Kangyoon Lee}, 
  journal={IEEE Access},
  Page(s)={47212 - 47222}
  DOI={10.1109/ACCESS.2023.3275439}
  year={2023}
}

Support

For any questions or issues, please contact the FedOps support team at gyom1204@gachon.ac.kr

Download files

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

Source Distribution

fedops-1.1.30.17.tar.gz (69.2 kB view details)

Uploaded Source

Built Distribution

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

fedops-1.1.30.17-py3-none-any.whl (77.8 kB view details)

Uploaded Python 3

File details

Details for the file fedops-1.1.30.17.tar.gz.

File metadata

  • Download URL: fedops-1.1.30.17.tar.gz
  • Upload date:
  • Size: 69.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.5

File hashes

Hashes for fedops-1.1.30.17.tar.gz
Algorithm Hash digest
SHA256 a408834d8af8a91d0bbae7edfafb86ccb22013412cd0b2f438af3e9e4e3e3fa1
MD5 82643aebcb4d46c78586475b9abcd53f
BLAKE2b-256 052363de1712a8a51c8802cac7d6dc995078993cf079765d31dacdd54b75b885

See more details on using hashes here.

File details

Details for the file fedops-1.1.30.17-py3-none-any.whl.

File metadata

  • Download URL: fedops-1.1.30.17-py3-none-any.whl
  • Upload date:
  • Size: 77.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.11.5

File hashes

Hashes for fedops-1.1.30.17-py3-none-any.whl
Algorithm Hash digest
SHA256 342d2b6d18159bf9c9c89f129094c672a64285d92ebb05ede1a11c0a1ceacee1
MD5 4d5bf0287eed9925ffead13d5163d148
BLAKE2b-256 d90efc8c8a502da67dbeb177a42eb53d10de3b03ff205389f686d991ec5fe1bf

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.1.30.17 This release

2 files

1.1.30.16

2 files

1.1.30.15

2 files

1.1.30.14

2 files

1.1.30.13

2 files

1.1.30.12

2 files

1.1.30.11

2 files

1.1.30.10

2 files

1.1.30.9

2 files

1.1.30.8

2 files

1.1.30.7

2 files

1.1.30.6

2 files

1.1.30.5

2 files

1.1.30.4

2 files

1.1.30.3

2 files

1.1.30.2

2 files

1.1.30.1

2 files

1.1.30.0

2 files

1.1.29.6

2 files

1.1.29.5

2 files

1.1.29.4

2 files

1.1.29.3

2 files

1.1.29.2

2 files

1.1.29.1

2 files

1.1.29

2 files

1.1.28.14

2 files

1.1.28.13

2 files

1.1.28.12

2 files

1.1.28.11

2 files

1.1.28.10

2 files

1.1.28.9

2 files

1.1.28.8

2 files

1.1.28.7

2 files

1.1.28.6

2 files

1.1.28.5

2 files

1.1.28.4

2 files

1.1.28.3

2 files

1.1.28.2

2 files

1.1.28.1

2 files

1.1.28

2 files

1.1.27

2 files

1.1.26

2 files

1.1.25

2 files

1.1.21

2 files

1.1.20

2 files

1.1.19

2 files

1.1.18

2 files

1.1.17

2 files

1.1.16

2 files

1.1.15

2 files

1.1.14

2 files

1.1.13

2 files

1.1.12

2 files

1.1.11

2 files

1.1.10

2 files

1.1.9

2 files

1.1.8

2 files

1.1.7

2 files

1.1.6

2 files

1.1.5

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

Supported by

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