FedML-AI / FedML

FEDML - The unified and scalable ML library for large-scale distributed training, model serving, and federated learning. FEDML Launch, a cross-cloud scheduler, further enables running any AI jobs on any GPU cloud or on-premise cluster. Built on this library, TensorOpera AI (https://TensorOpera.ai) is your generative AI platform at scale.
https://TensorOpera.ai
Apache License 2.0
4.14k stars 779 forks source link

Is the MLOps Platform open source? Or can I run the platform on my own server? #522

Open BESTTOOLBOX opened 1 year ago

BESTTOOLBOX commented 1 year ago

Is the MLOps Platform open source? Or can I run the platform on my own server? Thanks so much

chaoyanghe commented 1 year ago

@BESTTOOLBOX we do support deploying the server aggregator in self-hosted environment. Please check the CLI command at: https://doc.fedml.ai/mlops/api.html

# login as edge server with local pip mode:

fedml login userid(or API Key) -s
BESTTOOLBOX commented 1 year ago

@chaoyanghe Thank you very much. I have tried the edge server. But I don't know how the client and server communicate. Is the client model first transferred to the mlops platform and then transferred to the edge server for aggregation? I hope to realize the transmission of client and server on the link built by myself. In other words, I want to realize federated learning in the network built by myself. I don't know if fedml supports it?

Another question is that, I see Octupos supports Linux and windows, and Beehive supports IOS and Android. If I want to let laptop and smartphone participate in training at the same time, how should I deal with it?

JustGitting commented 1 year ago

@BESTTOOLBOX

I have the same question as you.

How the FedML/MLOps platform communicate and how dependent each is on the other is not explicitly stated in the documentation.

Reading between the lines, my impression is that the open source FedML (https://github.com/FedML-AI/FedML) only creates the clients ("edge") to do the model development and heavy lifting. Whilst the dispatch/coordination/monitoring across multiple clients/locations using a nice GUI is handled by the proprietary MLOps platform. The FedML clients cannot do this, only the "Open Platform" (https://open.fedml.ai/) can do this.

It's especially confusing when the FedML platform calls itself an "Open Platform", but it's proprietary and the owners' decide it's fate, not the users.

My concern is that if the MLOps platform goes down, start charging $$$ for access or it is closed down ... what happens to the FedML clients? FedML looks like a fantastic idea, especially by keeping data processing local for privacy. However, there is a risk the rug will be pulled under anyone using this platform at some point in the future. And calling an API won't fix that.

It would be great to have some clarification on this topic by @chaoyanghe.