opensearch-project / opensearch-py-ml

Apache License 2.0
34 stars 63 forks source link

[FEATURE] Optional dependency group for ML Commons client #267

Open evandiewald opened 1 year ago

evandiewald commented 1 year ago

Is your feature request related to a problem? Thank you for creating this excellent project! For my use-case, I only need the ML Commons client to register and deploy pre-trained models. I am using a Lambda function to initialize an OpenSearch cluster with an embedding model, but the required dependencies of pandas, numpy, and matplotlib are too large to include the whole opensearch-py-ml library in my deployment.

What solution would you like? The option to install a variant of the package that only requires dependencies required for the ML Commons client, e.g. pip install opensearch-py-ml[ml-commons]

What alternatives have you considered? The ML Commons client could be added to the opensearch-py Plugins or broken out into its own package.

Do you have any additional context? I think this could be accomplished using setuptools Optional dependencies.

dtaivpp commented 1 year ago

I think this is a great idea! Actually, this could help us eventually roll this into the regular opensearch-py project. It bugs me a bit that they are separate.

Iggaray commented 2 months ago

I was brought here by the exact same need as @evandiewald ! Thanks for posting this feature request.