Table of Contents
In this project, I will build an end-to-end Machine learning project for production on k8s system. It includes the main components:
-
ML pipeline: Orchestrating and automating the ML pipeline using Kubeflow Pipelines . It is composed of steps “data-preparation”, “Hyperparameters tuning” , “Training”, “Evaluation”. After the ML pipeline finishes, the output model and metadata will be registered into a “Model registry” and uploaded to s3 for tracking.
-
Inference system: Use KFServing to deploy models with main serving features like GPU Autoscaling, Scale to Zero and Canary Rollouts to the ML deployments. It enables a simple, pluggable and complete story for Production ML Serving including prediction, pre-processing, post-processing and explainability.
Major frameworks and tools are used in this project:
To get a local running follow these simple example steps
Before start, we need to initialize a Kubernetes cluster(on-prem or cloud).
Create a dynamic persistent volume as these instructions
Install Kubeflow follow these instructions
- Clone the repo
git clone
- Create anaconda environment
conda env create -f environment.yml
- Install tools
cd config_template helm install .....
- Check system
kubectl get pods -A
If you want to know the structure of this system, feel free to read the spec document and system design document from here
Follow steps below to deploy code and operating system:
xxxxx
Help for problems
-
v1.0
- 2021/02/08: xxx
-
v1.1
- 2021/03/11: Fix xxx