KServe Essentials: Building a Production-Ready Cloud-Native Model Serving Platform
Yuan Tang
Principal Software Engineer, Red Hat, OpenShift AI
Project Lead, Argo & Kubeflow
Co-chair, Kubernetes WG Serving
Maintainer, KServe
October 21-24, 2024
Mandalay Bay Convention Center�Las Vegas, Nevada
Agenda
01
02
03
04
05
06
07
Complexity of Cloud Native AI Platform
What is KServe
History
Open Source Community
Architecture
Key Features
Project Roadmap
IBM TechXchange | © 2024 IBM Corporation
The Complexity of Cloud Native AI Platform
From Cloud Native AI WG
IBM TechXchange | © 2024 IBM Corporation
What is KServe?
Highly scalable, standard, cloud agnostic model inference platform on Kubernetes
IBM TechXchange | © 2024 IBM Corporation
Why KServe?
Provides performant, standardized inference protocol across ML frameworks.
Supports modern serverless inference workload with autoscaling including Scale to Zero on GPU.
Provides high scalability, density packing and intelligent routing using ModelMesh
Simple and pluggable production serving for production ML serving including prediction, pre/post processing, monitoring and explainability.
Advanced deployments with canary rollout, experiments, ensembles and transformers.
IBM TechXchange | © 2024 IBM Corporation
5
#IBMTechXchange
History of KServe
IBM TechXchange | © 2024 IBM Corporation
6
From Kubeflow/KFServing to KServe
#IBMTechXchange
History of KServe
IBM TechXchange | © 2024 IBM Corporation
7
Kubeflow Ecosystem
#IBMTechXchange
Community: Maintainers and Contributors
IBM TechXchange | © 2024 IBM Corporation
8
15 maintainers and 250+ contributors!
#IBMTechXchange
Community: Adopters
IBM TechXchange | © 2024 IBM Corporation
9
30+ companies varying from vendors to end users!
#IBMTechXchange
KServe Architecture: Single Model
IBM TechXchange | © 2024 IBM Corporation
10
#IBMTechXchange
KServe Architecture: Multi Model (ModelMesh)
IBM TechXchange | © 2024 IBM Corporation
11
#IBMTechXchange
KServe Feature: Serving Runtimes
IBM TechXchange | © 2024 IBM Corporation
12
Pluggable, reusable, extensible runtimes
#IBMTechXchange
KServe Feature: Serving Runtimes
IBM TechXchange | © 2024 IBM Corporation
13
Hugging Face runtime
#IBMTechXchange
KServe Feature: Serving Runtimes
IBM TechXchange | © 2024 IBM Corporation
14
Custom runtime:
Predictor definition
#IBMTechXchange
KServe Feature: Serving Runtimes
IBM TechXchange | © 2024 IBM Corporation
15
Custom runtime:
InferenceService
#IBMTechXchange
KServe Feature: Pre/Post Processing
IBM TechXchange | © 2024 IBM Corporation
16
Transforms image via torchvision
#IBMTechXchange
KServe Feature: Pre/Post Processing
IBM TechXchange | © 2024 IBM Corporation
17
v1 REST API
#IBMTechXchange
KServe Feature: Pre/Post Processing
IBM TechXchange | © 2024 IBM Corporation
18
v2 gRPC API
#IBMTechXchange
KServe Feature: Inference Graph
IBM TechXchange | © 2024 IBM Corporation
19
TBA
#IBMTechXchange
KServe Feature: Model Storage
IBM TechXchange | © 2024 IBM Corporation
20
Supported storage formats
#IBMTechXchange
KServe Feature: Model Storage
IBM TechXchange | © 2024 IBM Corporation
21
PVC example
#IBMTechXchange
KServe Feature: Model Storage
IBM TechXchange | © 2024 IBM Corporation
22
S3 example
#IBMTechXchange
KServe Feature: Model Storage - ModelCars
IBM TechXchange | © 2024 IBM Corporation
23
Efficient model pulling from OCI image registry
#IBMTechXchange
KServe Feature: Model Storage - ModelCars
IBM TechXchange | © 2024 IBM Corporation
24
#IBMTechXchange
KServe Feature: Model Storage - ModelCars
IBM TechXchange | © 2024 IBM Corporation
25
Build Image with Model
Specify StorageURI
#IBMTechXchange
KServe Feature: Model Storage
IBM TechXchange | © 2024 IBM Corporation
26
Custom Storage Initializer
#IBMTechXchange
KServe Feature: Model Storage
IBM TechXchange | © 2024 IBM Corporation
27
ClusterStorageContainer
Custom container spec for a list of supported URI formats
#IBMTechXchange
KServe Feature: Model Storage
IBM TechXchange | © 2024 IBM Corporation
28
Custom model-registry:// protocol
#IBMTechXchange
KServe Feature: Request Batching
IBM TechXchange | © 2024 IBM Corporation
29
#IBMTechXchange
KServe Feature: Autoscaling
IBM TechXchange | © 2024 IBM Corporation
30
Knative autoscaling
#IBMTechXchange
KServe Feature: Autoscaling
IBM TechXchange | © 2024 IBM Corporation
31
Send traffic in 30 seconds spurts maintaining 5 in-flight requests
hey -z 30s -c 5 …
#IBMTechXchange
KServe Feature: Autoscaling
IBM TechXchange | © 2024 IBM Corporation
32
Scale down to zero
#IBMTechXchange
KServe Feature: Explainer / TrustyAI
IBM TechXchange | © 2024 IBM Corporation
33
Pluggable explainer runtimes
“Why did my model produce this inference result?”
#IBMTechXchange
KServe Feature: Monitoring
IBM TechXchange | © 2024 IBM Corporation
34
Prometheus Metrics
Supported serving runtimes exports prometheus metrics on a specified port in the inference service's pod
#IBMTechXchange
KServe Feature: Monitoring
IBM TechXchange | © 2024 IBM Corporation
35
Prometheus Metrics��
#IBMTechXchange
KServe Feature: Monitoring
IBM TechXchange | © 2024 IBM Corporation
36
Grafana Dashboards
#IBMTechXchange
KServe Feature: Canary Rollout
IBM TechXchange | © 2024 IBM Corporation
37
#IBMTechXchange
KServe Feature: Deployment Mode
IBM TechXchange | © 2024 IBM Corporation
38
Serverless vs. Raw Deployment
#IBMTechXchange
KServe Feature: GitOps Friendly
IBM TechXchange | © 2024 IBM Corporation
39
ArgoCD includes custom health checks for KServe CRDs
#IBMTechXchange
Future of KServe
IBM TechXchange | © 2024 IBM Corporation
40
GenAI Inference
#IBMTechXchange
Future of KServe
IBM TechXchange | © 2024 IBM Corporation
41
Stable APIs and SDK
#IBMTechXchange
Future of KServe
IBM TechXchange | © 2024 IBM Corporation
42
Security and Documentation
#IBMTechXchange
Future of KServe
IBM TechXchange | © 2024 IBM Corporation
43
Community Collaboration
#IBMTechXchange
Other Relevant Talks Today
IBM TechXchange | © 2024 IBM Corporation
44
Check them out!
#IBMTechXchange
Stay Connected!
Email: terrytangyuan@gmail.com
LinkedIn/X/GitHub: @TerryTangYuan
IBM TechXchange | © 2024 IBM Corporation
45
#IBMTechXchange