Skip to content
Serverless Inferencing on Kubernetes
Jsonnet Go Python Other
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
cmd
config
docs Fix docs typos (#588) Dec 3, 2019
hack
install
pkg
python
release
test
tools/tf2openapi
vendor
.gitignore
CONTRIBUTING.md
Dockerfile
Gopkg.lock
Gopkg.toml
LICENSE
Makefile
OWNERS
PROJECT
README.md
ROADMAP.md
logger.Dockerfile
prow_config.yaml

README.md

KFServing

KFServing provides a Kubernetes Custom Resource Definition for serving machine learning (ML) models on arbitrary frameworks. It aims to solve production model serving use cases by providing performant, high abstraction interfaces for common ML frameworks like Tensorflow, XGBoost, ScikitLearn, PyTorch, and ONNX.

It encapsulates the complexity of autoscaling, networking, health checking, and server configuration to bring cutting edge serving features like GPU Autoscaling, Scale to Zero, and Canary Rollouts to your ML deployments. It enables a simple, pluggable, and complete story for Production ML Serving including prediction, pre-processing, post-processing and explainability.

KFServing

Learn More

To learn more about KFServing, how to deploy it as part of Kubeflow, how to use various supported features, and how to participate in the KFServing community, please follow the KFServing docs on the Kubeflow Website.

Prerequisites

KNative Serving and Istio should be available on Kubernetes Cluster.

  • Istio Version: v1.1.7+
  • Knative Version: v0.8.x

You may find this installation instruction useful.

Installation using kubectl

TAG=0.2.2
kubectl apply -f ./install/$TAG/kfserving.yaml

By default, you can create InferenceService instances in any namespace which has no label with control-plane as key. You can also configure KFServing to make InferenceService instances only work in the namespace which has label pair serving.kubeflow.org/inferenceservice: enabled. To enable this mode, you need to add env field as stated below to manager container of statefulset kfserving-controller-manager.

env:
- name: ENABLE_WEBHOOK_NAMESPACE_SELECTOR
  value: enabled

Please refer to our troubleshooting section for recommendations and tips.

Use

  • Install the SDK

    pip install kfserving
    
  • Get the KFServing SDK documents from here.

  • Follow the example here to use the KFServing SDK to create, rollout, promote, and delete an InferenceService instance.

Contribute

You can’t perform that action at this time.