How to Get Seldon Sklearn servers to work with Google Cloud Storage from GKE

8/24/2019

Needed to understand how to make seldon work with prepackaged python pickles and servers.

After following instructions from seldonio site for sklearn server, am still unable to get the predefined server models to work.

I have the iris model placed on google cloud storage at location -> gcs://mymodels/sklearn/iris.pkl

I successfully installed seldon-core on gke and ran through a wrapped model example successfully. Now I want to be able to use the pre-packaged servers which can pickup python-pickles from google cloud storage. When I specify the location to the SeldonDeplymentObject , the service never comes up and the pod continues to die.

Here is my SeldonDeployment:

apiVersion: machinelearning.seldon.io/v1alpha2
kind: SeldonDeployment
metadata:
  name: sklearniris
spec:
  name: seldon_skiris
  predictors:
  - graph:
      children: []
      implementation: SKLEARN_SERVER
      modelUri: gcs://mymodels/sklearn/iris.pkl
      name: classifier
    name: default
    replicas: 1

What do I setup on gke and gcs to make this work?

-- user636191
google-cloud-storage
google-kubernetes-engine
python
scikit-learn
seldon

1 Answer

8/26/2019

The error is in SeldonDeployment line modelUri: gcs://mymodels/sklearn/iris.pkl. gcs is not the proper path for Google Cloud storage. It should be modelUri: gs://mymodels/sklearn/iris.pkl

Checking the logs for the pod should help see why it continues to die. Describing the pod would also help looking the events for that pod.

-- Toshi Warraich
Source: StackOverflow