ภาพรวม
KServe เป็นแพลตฟอร์ม Kubernetes ที่ได้มาตรฐานสำหรับการให้บริการโมเดลแมชชีนเลิร์นนิงในวงกว้าง ช่วยให้ทีมมีวิธีเดียวที่ประกาศอย่างชัดเจนในการปรับใช้โมเดลที่มีการปรับขนาดอัตโนมัติ การเปิดตัวแบบคานารี และการปรับขยายเป็นศูนย์ โดยแยกระบบท่อ Kubernetes ส่วนใหญ่ออกไป
KServe และ Model Serving บน Kubernetes เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในวงกว้าง
เจาะลึก
เดิมชื่อ 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 และ Model Serving บน Kubernetes
KServe เป็นแพลตฟอร์ม Kubernetes ที่ได้มาตรฐานสำหรับการให้บริการโมเดลแมชชีนเลิร์นนิงในวงกว้าง ช่วยให้ทีมมีวิธีเดียวที่ประกาศอย่างชัดเจนในการปรับใช้โมเดลที่มีการปรับขนาดอัตโนมัติ การเปิดตัวแบบคานารี และการปรับขยายเป็นศูนย์ โดยแยกระบบท่อ Kubernetes ส่วนใหญ่ออกไป KServe และ Model Serving บน Kubernetes เป็นองค์ประกอบทางเทคนิคที่ส่งผลต่อคุณภาพของโมเดล ต้นทุนโครงสร้างพื้นฐาน เวลาแฝง และความน่าเชื่อถือในวงกว้าง เพื่อสร้างความเข้าใจอย่างลึกซึ้ง ให้ถือว่า KServe และ Model Serving บน Kubernetes เป็นโมเดลการทำงาน ไม่ใช่ฟีเจอร์เดียว: กำหนดผลลัพธ์ที่ต้องการ ชี้แจงสมมติฐาน และแยกสิ่งที่ระบบสามารถทำได้อย่างน่าเชื่อถือจากสิ่งที่ยังต้องใช้วิจารณญาณจากผู้เชี่ยวชาญ
ในทางปฏิบัติ ทีมที่แข็งแกร่งที่ใช้ KServe และ Model Serving บน Kubernetes จะปรับตัวเลือกสถาปัตยกรรม ข้อมูล และโครงสร้างพื้นฐานให้เหมาะสมโดยเทียบกับความน่าเชื่อถือและต้นทุน โดยจะบันทึกเกณฑ์ความสำเร็จที่ชัดเจน ทดสอบกับข้อมูลและขั้นตอนการทำงานที่สมจริง และทำซ้ำตามรูปแบบความล้มเหลวที่สังเกตได้ แทนที่จะชนะการวัดประสิทธิภาพเพียงครั้งเดียว นี่คือจุดที่ความเข้าใจทางทฤษฎีกลายเป็นความสามารถที่คงทนของผลิตภัณฑ์ นโยบาย และการดำเนินงาน
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในเวลาเดียวกัน การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้ แนวทางที่ยืดหยุ่นที่สุดคือการรวมความเร็วของการทดลองเข้ากับวินัยในการกำกับดูแล: ดำเนินการนำร่อง จับหลักฐาน เผยแพร่บันทึกการตัดสินใจ และอัปเดตการป้องกันอย่างต่อเนื่องเมื่อพฤติกรรมของโมเดล ความคาดหวังของผู้ใช้ และข้อกำหนดด้านกฎระเบียบมีการเปลี่ยนแปลง
ผลกระทบเชิงกลยุทธ์
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต ในการปรับใช้คุณภาพสูง สิ่งนี้จะถูกแปลเป็นกฎการปฏิบัติงานที่วัดผลได้ ขอบเขตความเป็นเจ้าของ และขั้นตอนการตรวจสอบที่เกิดซ้ำ เพื่อให้ทีมสามารถปรับขนาดความมั่นใจแทนที่จะปรับขนาดความคลุมเครือ
การใช้งานจริงในโลกแห่งความเป็นจริง
ธนาคารปรับใช้โมเดลการให้คะแนนเครดิตโดยการเขียน InferenceService YAML 10 บรรทัดโดยชี้ไปที่โมเดลใน S3 โดยที่ KServe จัดการการปรับขนาดอัตโนมัติและทางเข้า
ทีมอีคอมเมิร์ซใช้การเปิดตัว Canary ของ KServe เพื่อส่งปริมาณการเข้าชม 10 เปอร์เซ็นต์ไปยังโมเดลคำแนะนำใหม่ จากนั้นจะเพิ่มขึ้นเป็น 100 เปอร์เซ็นต์เมื่อตัวชี้วัดดูดี
ห้องปฏิบัติการวิจัยให้บริการโมเดลที่ไม่ค่อยได้ใช้หลายสิบโมเดลโดยปรับขนาดเป็นศูนย์ ดังนั้นแต่ละโมเดลจะหมุนเมื่อมีคำขอมาถึงเท่านั้น และไม่ต้องใช้ GPU ในขณะที่ไม่ได้ใช้งาน
ทีม MLOps ใช้ส่วนประกอบหม้อแปลง KServe เพื่อเรียกใช้การปรับขนาดรูปภาพและการทำให้เป็นมาตรฐาน ก่อนที่ตัวทำนายจะเรียกใช้โมเดลการมองเห็นที่ให้บริการ Triton
รูปแบบการดำเนินงาน
KServe และ Model Serving บน Kubernetes ในทางปฏิบัติ
ธนาคารปรับใช้โมเดลการให้คะแนนเครดิตโดยการเขียน InferenceService YAML 10 บรรทัดโดยชี้ไปที่โมเดลใน S3 โดยที่ KServe จัดการการปรับขนาดอัตโนมัติและทางเข้า
ธนาคารปรับใช้โมเดลการให้คะแนนเครดิตโดยการเขียน InferenceService YAML 10 บรรทัดโดยชี้ไปที่โมเดลใน S3 โดยที่ KServe จัดการการปรับขนาดอัตโนมัติและทางเข้า ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพไว้ล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
KServe และ Model Serving บน Kubernetes ในทางปฏิบัติ
ทีมอีคอมเมิร์ซใช้การเปิดตัว Canary ของ KServe เพื่อส่งปริมาณการเข้าชม 10 เปอร์เซ็นต์ไปยังโมเดลคำแนะนำใหม่ จากนั้นจะเพิ่มขึ้นเป็น 100 เปอร์เซ็นต์เมื่อตัวชี้วัดดูดี
ทีมอีคอมเมิร์ซใช้การเปิดตัว Canary ของ KServe เพื่อส่งทราฟฟิก 10 เปอร์เซ็นต์ไปยังโมเดลคำแนะนำใหม่ จากนั้นเพิ่มขึ้นเป็น 100 เปอร์เซ็นต์เมื่อตัวชี้วัดดูมีประสิทธิภาพ ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งการเพิ่มผลิตภาพและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
KServe และ Model Serving บน Kubernetes ในทางปฏิบัติ
ห้องปฏิบัติการวิจัยให้บริการโมเดลที่ไม่ค่อยได้ใช้หลายสิบโมเดลโดยปรับขนาดเป็นศูนย์ ดังนั้นแต่ละโมเดลจะหมุนเมื่อมีคำขอมาถึงเท่านั้น และไม่ต้องใช้ GPU ในขณะที่ไม่ได้ใช้งาน
ห้องปฏิบัติการวิจัยให้บริการโมเดลที่ไม่ค่อยได้ใช้งานหลายสิบโมเดลโดยปรับขนาดเป็นศูนย์ ดังนั้นแต่ละโมเดลจะหมุนเมื่อมีคำขอมาถึงและไม่ต้องใช้ GPU ในขณะที่ทีมที่ไม่ได้ใช้งานมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
KServe และ Model Serving บน Kubernetes ในทางปฏิบัติ
ทีม MLOps ใช้ส่วนประกอบหม้อแปลง KServe เพื่อเรียกใช้การปรับขนาดรูปภาพและการทำให้เป็นมาตรฐาน ก่อนที่ตัวทำนายจะเรียกใช้โมเดลการมองเห็นที่ให้บริการ Triton
ทีม MLOps ใช้ส่วนประกอบหม้อแปลง KServe เพื่อเรียกใช้การปรับขนาดรูปภาพและการทำให้เป็นมาตรฐานก่อนที่ตัวทำนายจะเรียกใช้โมเดลการมองเห็นที่ใช้ Triton ทีมมักจะได้รับผลลัพธ์ที่ดีกว่าเมื่อพวกเขากำหนดเกณฑ์คุณภาพล่วงหน้า รักษาเส้นทางการยกระดับโดยมนุษย์สำหรับกรณี Edge และติดตามทั้งประสิทธิภาพการทำงานที่เพิ่มขึ้นและต้นทุนข้อผิดพลาดเมื่อเวลาผ่านไป
ความเสี่ยงและรั้ว
การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้
ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป
ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น
แผนงานการดำเนินงาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้ ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด ถือว่าแต่ละขั้นตอนเป็นเหมือนประตูหลักฐาน: หากไม่ตรงตามเกณฑ์ ให้หยุดการเปิดตัวชั่วคราว ปิดช่องว่าง จากนั้นจึงขยายการใช้งานเท่านั้น