KServe และโมเดลที่ให้บริการบน Kubernetes
KServe เป็นแพลตฟอร์ม Kubernetes ที่ได้มาตรฐานสำหรับการให้บริการโมเดลแมชชีนเลิร์นนิงในวงกว้าง
ภาพรวม
It gives teams a single, declarative way to deploy models with autoscaling, canary rollouts, and scale-to-zero, abstracting away most of the Kubernetes plumbing.
เจาะลึก
เดิมชื่อ KFServing และเกิดจากโครงการ Kubeflow KServe กำหนดทรัพยากรที่กำหนดเองของ InferenceService คุณเขียนไฟล์ YAML สั้นๆ โดยชี้ไปที่โมเดลที่จัดเก็บไว้ในที่เก็บข้อมูลอ็อบเจ็กต์ (S3, GCS, Azure Blob) และ KServe จะจัดการส่วนที่เหลือ รองรับทั้งการอนุมานเชิงคาดการณ์และการให้บริการ LLM เชิงสร้างสรรค์ที่เพิ่มมากขึ้น KServe จัดส่ง 'รันไทม์การให้บริการ' ที่สร้างไว้ล่วงหน้าสำหรับเฟรมเวิร์กทั่วไป (TensorFlow Serving, TorchServe, Triton, scikit-learn, XGBoost, Hugging Face) และรองรับคอนเทนเนอร์แบบกำหนดเอง สร้างขึ้นบน Knative Serving และเลเยอร์เครือข่าย (Istio หรือที่คล้ายกัน) โดยให้การปรับขนาดอัตโนมัติที่ขับเคลื่อนด้วยคำขอ รวมถึงการปรับขนาดเป็นศูนย์อย่างแท้จริง ดังนั้นโมเดลที่ไม่ได้ใช้งานจึงไม่ต้องใช้การประมวลผล นอกจากนี้ยังสร้างมาตรฐานให้กับ API การทำนายรอบ Open Inference Protocol ดังนั้นลูกค้าจึงพูดคุยกับทุกโมเดลในลักษณะเดียวกันโดยไม่คำนึงถึงเฟรมเวิร์ก
ข้อมูลเชิงลึกทางเทคนิค
การปรับขนาดอัตโนมัติของ KServe อาศัย Knative ซึ่งปรับขนาดจำนวนการจำลองตามการทำงานพร้อมกันหรือคำขอต่อวินาที และสามารถลดการจำลองลงเหลือศูนย์เมื่อการรับส่งข้อมูลหยุด จากนั้นจึงสตาร์ทแบบ Cold ตามความต้องการ InferenceService จะสรุปไปป์ไลน์การอนุมานแบบสมบูรณ์ลงในตัวทำนาย หม้อแปลง (ก่อน/หลังการประมวลผล) และส่วนประกอบของตัวอธิบาย โมเดลโหลดจากพื้นที่จัดเก็บอ็อบเจ็กต์ผ่าน 'ตัวเริ่มต้นพื้นที่จัดเก็บ' ซึ่งจะดึงอาร์ติแฟกต์ลงในพ็อดเมื่อเริ่มต้นระบบ โดยจะแยกพื้นที่จัดเก็บโมเดลออกจากอิมเมจคอนเทนเนอร์ที่ให้บริการ
ผลกระทบเชิงกลยุทธ์
ต้นทุนและงบประมาณ
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี
การตัดสินใจที่ชัดเจนยิ่งขึ้น
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด
การควบคุมคุณภาพ
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต
อนาคตของ KServe และโมเดลการให้บริการบน Kubernetes
KServe กำลังพัฒนาอย่างรวดเร็วไปสู่ generative AI โดยเพิ่มแทร็กที่เน้น LLM พร้อมฟีเจอร์ต่างๆ เช่น การกำหนดเส้นทาง KV-cache-aware การแคชโมเดล และการให้บริการการกรอก/ถอดรหัสล่วงหน้าแบบแยกส่วนสำหรับโมเดลภาษาขนาดใหญ่ คาดหวังการผสานรวมที่ลึกซึ้งยิ่งขึ้นกับกลไกการอนุมาน เช่น vLLM การให้บริการหลายโหนดที่ดีขึ้นสำหรับรุ่นที่มีขนาดใหญ่เกินไปสำหรับ GPU ตัวเดียว และการกำหนดเส้นทางระดับเกตเวย์สำหรับการปรับสมดุลโหลดตามโทเค็น เนื่องจากเป็นโครงการบ่มเพาะ CNCF จึงกลายเป็นมาตรฐานเปิดโดยพฤตินัยในการวางโมเดลไว้เบื้องหลัง Kubernetes ช่วยลดช่องว่างระหว่างสิ่งประดิษฐ์ในการวิจัยและจุดสิ้นสุดการผลิตที่ยืดหยุ่น
การใช้งานจริงในโลกแห่งความเป็นจริง
ธนาคารปรับใช้โมเดลการให้คะแนนเครดิตโดยการเขียน InferenceService YAML 10 บรรทัดโดยชี้ไปที่โมเดลใน S3 โดยที่ KServe จัดการการปรับขนาดอัตโนมัติและทางเข้า
ทีมอีคอมเมิร์ซใช้การเปิดตัว Canary ของ KServe เพื่อส่งปริมาณการเข้าชม 10 เปอร์เซ็นต์ไปยังโมเดลคำแนะนำใหม่ จากนั้นจะเพิ่มขึ้นเป็น 100 เปอร์เซ็นต์เมื่อตัวชี้วัดดูดี
ห้องปฏิบัติการวิจัยให้บริการโมเดลที่ไม่ค่อยได้ใช้หลายสิบโมเดลโดยปรับขนาดเป็นศูนย์ ดังนั้นแต่ละโมเดลจะหมุนเมื่อมีคำขอมาถึงเท่านั้น และไม่ต้องใช้ GPU ในขณะที่ไม่ได้ใช้งาน
ทีม MLOps ใช้ส่วนประกอบหม้อแปลง KServe เพื่อเรียกใช้การปรับขนาดรูปภาพและการทำให้เป็นมาตรฐาน ก่อนที่ตัวทำนายจะเรียกใช้โมเดลการมองเห็นที่ให้บริการ Triton
ความเสี่ยงและรั้ว
การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้
ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป
ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น
แผนงานการดำเนินงาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด
สำรวจต่อไป
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the KServe and Model Serving on Kubernetes quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
คำแนะนำต่อไป
การแก้ไขเชิงคาดเดาสำหรับโมเดลโค้ด
คำถามที่พบบ่อย
What is KServe and Model Serving on Kubernetes?
KServe เป็นแพลตฟอร์ม Kubernetes ที่ได้มาตรฐานสำหรับการให้บริการโมเดลแมชชีนเลิร์นนิงในวงกว้าง ช่วยให้ทีมมีวิธีเดียวที่ประกาศอย่างชัดเจนในการปรับใช้โมเดลที่มีการปรับขนาดอัตโนมัติ การเปิดตัวแบบคานารี และการปรับขยายเป็นศูนย์ โดยแยกระบบท่อ Kubernetes ส่วนใหญ่ออกไป
เดิมชื่อ KServe ก่อนจะมาเป็นโปรเจ็กต์เดี่ยวคืออะไร
KServe มีต้นกำเนิดมาจาก KFServing ภายในโครงการ Kubeflow ก่อนที่จะกลายเป็นแพลตฟอร์มอิสระ
ทรัพยากรที่กำหนดเองของ Kubernetes หลักที่คุณกำหนดเพื่อปรับใช้โมเดลกับ KServe คืออะไร
คุณประกาศทรัพยากรที่กำหนดเองของ InferenceService ซึ่งโดยทั่วไปจะอยู่ใน YAML เพื่อปรับใช้และกำหนดค่าโมเดลที่ให้บริการ
ความสามารถใดที่ทำให้โมเดล KServe ที่ไม่ได้ใช้งานใช้การประมวลผลเป็นศูนย์จนกว่าจะได้รับคำขอ
KServe สร้างขึ้นบน Knative โดยรองรับจากขนาดถึงศูนย์ และลดการจำลองให้เป็นศูนย์เมื่อไม่มีการรับส่งข้อมูลและการสตาร์ทแบบ Cold ตามความต้องการ
โปรเจ็กต์พื้นฐานใดที่ให้การปรับขนาดอัตโนมัติตามคำขอของ KServe
KServe สร้างบน Knative Serving ซึ่งปรับขนาดการจำลองตามการทำงานพร้อมกันหรืออัตราการร้องขอ และเปิดใช้งานการปรับขยายเป็นศูนย์
โดยทั่วไปแล้ว KServe จะนำโมเดลอาร์ติแฟกต์ไปไว้ในเสิร์ฟพ็อดเมื่อเริ่มต้นได้อย่างไร
เครื่องมือเริ่มต้นพื้นที่เก็บข้อมูลจะดาวน์โหลดอาร์ติแฟกต์ของโมเดลจากพื้นที่จัดเก็บออบเจ็กต์ (เช่น S3 หรือ GCS) ลงในพ็อด โดยแยกโมเดลออกจากรูปภาพ