kserve / kserve

Standardized Serverless ML Inference Platform on Kubernetes
https://kserve.github.io/website/
Apache License 2.0
3.58k stars 1.06k forks source link

Discuss: Rename KFService to MLService #317

Closed rakelkar closed 5 years ago

rakelkar commented 5 years ago

We've discussed this idea before, opening an issue to discuss in the context of v1alpha2.

Rationale:

KFServing as it currently stands defines an API spec and an implementation for serving. The spec models the ML domain but is not dependent on Kubeflow in any way. MLServing is a clearer name that reinforces the loose coupling of the API.

wdyt?

rakelkar commented 5 years ago

@ellis-bigelow @cliveseldon @animeshsingh @yuzisun @aronchick

aronchick commented 5 years ago

+1 - the reality is that the KFServing spec can (and will) be implemented by platforms that are not KF. So MLServing really is a better term.

yuzisun commented 5 years ago

+1, it is good timing to change the name.

animeshsingh commented 5 years ago

Pros:

  1. Can position itself to align with MLGraph better
  2. Signifies a standalone project which can be used independently (honestly any other thing in Kubeflow umbrella can be...)

Cons:

  1. This rationale can apply to Kubeflow Pipelines (and other projects..), which should be renamed to ML Pipelines, ML Notebooks etc.
  2. Don't think name change helps much, and anything starting with ML is so common place that folks will have a harder time to put a context
  3. Kubeflow is a brand now, signifying ML on Kube, and KFServing implies its the serving part of it.

So IMHO, we don't gain much.....

Unless.....

and this brings me to the larger discussion I had with @jlewi that we shall probably strive to discuss naming consistency around Kubeflow portfolio

MLTraining (Katib, TFOperator, PyTorch Operator), MLPipelines, MLMetadata, MLNotebooks, and MLServing (Or all are KF...)

cc @abhi-g @jlewi

ukclivecox commented 5 years ago

+1 if we push to be standalone component used by but not dependant on Kubeflow. But for this to be a reality we would need to have looser ties to kubeflow releases which brings up wider questions.

Also, would help make clear the spec could have alternative implementations or extensions that are not kubeflow focused and definitely help promote it wider.

theadactyl commented 5 years ago

I'm mostly in agreement with Animesh here, but can see both arguments. Is the name actively blocking anything?

aronchick commented 5 years ago

@animeshsingh and @theadactyl - in my opinion, the fact that KFServing (as an API) will be used by non-KF platforms (two that we know about already) means the name is already out of date :)

I had always thought of KFserving being two things - one, a spec for an API for serving and two, an implementation of that spec, in the KFServing CRD.

I don't think ML Pipelines makes sense - it's Kubeflow Pipelines mostly because there's only one implementation of it. I DO agree there should be an MLTraining, MLDataSet, MLModelPackage... specs though.

Especially if we're able to align the ML* with the MLSpec project - whenever we're able to get that officially going - I think the alignment works great!

@theadactyl to your point about blocking, I just think it's confusing. If you have a hosted service (e.g. Sagemaker) support KFServing API - does that mean it's running KF under the hood? Doesn't feel like it should be a requirement - it's just an implementation detail at that point.

animeshsingh commented 5 years ago

Thanks @aronchick - which are the two non-KF platform leveraging KFServing API? Also Pipelines is also working towards a CRD based approach last I heard, and supporting backend implementations through Argo, Airflow etc.

Now that you bring up the API spec itself being standard, and possible alignment with MLSpec project. , then this discussion makes more sense to me

But again, as you mentioned, that would be a great goal we should strive for other projects in ecosystem as well

aronchick commented 5 years ago

@animeshsingh i don't think anyone is ready for public statements (yet) - but they're very real.

I can't speak to pipeline's future - but we know of several other steps which are working towards standards now (e.g. dataset, packaging, training - all the stuff in MLSpec). So this renaming does feel like a nice first step.

theadactyl commented 5 years ago

@aronchick This is helpful, thanks! @rakelkar I'd recommend creating a proposal with goals, pros and cons to the rename to provide a better place for discussion and feedback. This is a good prompt for me to get our proposal pipeline set up. :)

ellistarn commented 5 years ago

Is this about KFServing -> MLServing (the repo) or KFService -> MLService (the api)

aronchick commented 5 years ago

the latter please 🙂

KFServing should stay in KFServing as an implemenation of MLService 🙂 (maybe we change the name to KFService?)


From: Ellis Bigelow notifications@github.com Sent: Tuesday, August 27, 2019 3:24 PM To: kubeflow/kfserving kfserving@noreply.github.com Cc: David Aronchick David.Aronchick@microsoft.com; Mention mention@noreply.github.com Subject: Re: [kubeflow/kfserving] Discuss: Rename KFServing to MLServing (#317)

Is this about KFServing -> MLServing (the repo) or KFService -> MLService (the api)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fkubeflow%2Fkfserving%2Fissues%2F317%3Femail_source%3Dnotifications%26email_token%3DAAAMQ5IBRTYQV4BO3W4RR3LQGWSSPA5CNFSM4IPYMOSKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5JJRIY%23issuecomment-525506723&data=02%7C01%7Cdavid.aronchick%40microsoft.com%7C235b051d26f948e7823108d72b3d5a20%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637025414808742749&sdata=%2FGecv7VKdxpJif7yNVMtOW59UyMLjmkzce8yDDmB7vs%3D&reserved=0, or mute the threadhttps://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAAAMQ5KA44ZXAAO5CCHRD2LQGWSSPANCNFSM4IPYMOSA&data=02%7C01%7Cdavid.aronchick%40microsoft.com%7C235b051d26f948e7823108d72b3d5a20%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637025414808742749&sdata=KrgDJM7emc4H8F5gF22KgNLL2SElie%2F4sdq8KRECVzI%3D&reserved=0.

abhi-g commented 5 years ago

thanks for that clarification. this is making more sense now.

On Tue, Aug 27, 2019 at 3:41 PM David Aronchick notifications@github.com wrote:

the latter please 🙂

KFServing should stay in KFServing as an implemenation of MLService 🙂 (maybe we change the name to KFService?)


From: Ellis Bigelow notifications@github.com Sent: Tuesday, August 27, 2019 3:24 PM To: kubeflow/kfserving kfserving@noreply.github.com Cc: David Aronchick David.Aronchick@microsoft.com; Mention < mention@noreply.github.com> Subject: Re: [kubeflow/kfserving] Discuss: Rename KFServing to MLServing (#317)

Is this about KFServing -> MLServing (the repo) or KFService -> MLService (the api)

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub< https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fkubeflow%2Fkfserving%2Fissues%2F317%3Femail_source%3Dnotifications%26email_token%3DAAAMQ5IBRTYQV4BO3W4RR3LQGWSSPA5CNFSM4IPYMOSKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5JJRIY%23issuecomment-525506723&data=02%7C01%7Cdavid.aronchick%40microsoft.com%7C235b051d26f948e7823108d72b3d5a20%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637025414808742749&sdata=%2FGecv7VKdxpJif7yNVMtOW59UyMLjmkzce8yDDmB7vs%3D&reserved=0>, or mute the thread< https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAAAMQ5KA44ZXAAO5CCHRD2LQGWSSPANCNFSM4IPYMOSA&data=02%7C01%7Cdavid.aronchick%40microsoft.com%7C235b051d26f948e7823108d72b3d5a20%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637025414808742749&sdata=KrgDJM7emc4H8F5gF22KgNLL2SElie%2F4sdq8KRECVzI%3D&reserved=0>.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/kubeflow/kfserving/issues/317?email_source=notifications&email_token=ACZ2UZUZYDVYOLIORMRL5OTQGWUTDA5CNFSM4IPYMOSKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5JKUEQ#issuecomment-525511186, or mute the thread https://github.com/notifications/unsubscribe-auth/ACZ2UZSRBT7X4T67MZKTMNTQGWUTDANCNFSM4IPYMOSA .

animeshsingh commented 5 years ago

yup - makes all the more sense. Maybe change the title of the issue to say

'Rename KFService to MLService'

theadactyl commented 5 years ago

+1 - also, please do put together a short proposal.

rakelkar commented 5 years ago

KFService -> MLService (the api)

Yes I mean the API/spec. Updated the title. Will write out a proposal.

ellistarn commented 5 years ago

What about the apiGroup? These typically map to a .org website (i.e. serving.kubeflow.org, security.istio.io).

ellistarn commented 5 years ago

Any thoughts on InferenceService instead?