BentoML และบรรจุภัณฑ์แบบจำลอง
BentoML เป็นเฟรมเวิร์ก Python แบบโอเพ่นซอร์สที่รวมโมเดลการเรียนรู้ของเครื่องที่ได้รับการฝึกมาไว้ในหน่วยมาตรฐานและปรับใช้ได้ที่เรียกว่า 'Bentos'
ภาพรวม
มันเชื่อมช่องว่างระหว่างโมเดลที่อยู่ในโน้ตบุ๊กกับบริการผลิตที่สามารถทํานายผลผ่าน API ได้จริง
เจาะลึก
เมื่อนักวิทยาศาสตร์ด้านข้อมูลฝึกอบรมโมเดลเสร็จแล้ว การนำโมเดลไปใช้จริงมักจะหมายถึงการเขียนโค้ดที่ให้บริการด้วยตนเอง การปักหมุดการขึ้นต่อกัน การสร้างอิมเมจ Docker และการวางสาย API BentoML ดำเนินการนี้โดยอัตโนมัติ คุณบันทึกโมเดลลงในที่เก็บโมเดลในเครื่อง จากนั้นกำหนดคลาสบริการด้วยจุดสิ้นสุด API ที่ตกแต่งเพื่อจัดการการอนุมาน คำสั่ง 'bentoml build' จะรวมโมเดล, โค้ด Python, เวอร์ชันที่ขึ้นต่อกัน และการกำหนดค่ารันไทม์ไว้ใน Bento เวอร์ชันที่มีอยู่ในตัวเอง จากนั้น 'bentoml containerize' จะสร้างอิมเมจ OCI Docker BentoML รองรับเกือบทุกเฟรมเวิร์ก (PyTorch, TensorFlow, scikit-learn, XGBoost, Hugging Face Transformers, ONNX) และเพิ่มไมโครแบทช์ที่ปรับเปลี่ยนได้ ซึ่งจัดกลุ่มคำขอที่เข้ามาโดยอัตโนมัติเพื่อเพิ่มปริมาณงาน GPU สูงสุดโดยไม่ต้องเปลี่ยนโค้ดของคุณ
ข้อมูลเชิงลึกทางเทคนิค
BentoML แยก 'Runners' (การดำเนินการโมเดลที่เน้นการประมวลผล) ออกจากตรรกะของเซิร์ฟเวอร์ API ผู้รันสามารถปรับขนาดได้อย่างอิสระและทำงานในกระบวนการของผู้ปฏิบัติงานของตนเอง ในขณะที่เซิร์ฟเวอร์ HTTP/gRPC แบบน้ำหนักเบาจะจัดการการกำหนดเส้นทางคำขอและ I/O การประมวลผลแบบแบตช์แบบปรับเปลี่ยนได้จะปรับขนาดแบตช์และกรอบเวลาแฝง ณ รันไทม์แบบไดนามิก ดังนั้นจึงดูดซับการเข้าชมที่ล้นหลามและทำให้ตัวเร่งความเร็วราคาแพงยุ่งอยู่เสมอ รูปแบบ Bento ที่ได้มาตรฐานจะฝังรายการ ไฟล์โมเดล และสภาพแวดล้อมที่ทำซ้ำได้ ทำให้การสร้างบิลด์ถูกกำหนดไว้บนเครื่องต่างๆ
ผลกระทบเชิงกลยุทธ์
ต้นทุนและงบประมาณ
การตัดสินใจด้านสถาปัตยกรรมขับเคลื่อนประสิทธิภาพและต้นทุนการดำเนินงานเป็นเวลาหลายปี
การตัดสินใจที่ชัดเจนยิ่งขึ้น
การศึกษาด้านเทคนิคช่วยให้ทีมเลือกกลุ่มที่เหมาะสม ไม่ใช่แค่กลุ่มใหม่ล่าสุด
การควบคุมคุณภาพ
ตัวเลือกทางวิศวกรรมที่ดีกว่าจะช่วยลดเหตุการณ์ด้านความน่าเชื่อถือในการผลิต
อนาคตของ BentoML และบรรจุภัณฑ์แบบจำลอง
BentoML ทุ่มเทอย่างหนักให้กับโมเดลภาษาขนาดใหญ่และการให้บริการ AI เชิงสร้างสรรค์ โดย OpenLLM และ BentoCloud นำเสนอการตอบสนองโทเค็นแบบสตรีม การปรับขนาดอัตโนมัติ และการกำหนดเวลาที่รับรู้ GPU คาดหวังการผสานรวมที่เข้มงวดมากขึ้นกับเครื่องมือเพิ่มประสิทธิภาพการอนุมาน เช่น vLLM และ TensorRT-LLM การรองรับที่ดีขึ้นสำหรับระบบ AI แบบผสมหลายรุ่น และเส้นทางที่ราบรื่นยิ่งขึ้นจาก Bento แพ็คเกจไปจนถึงการใช้งาน GPU แบบไร้เซิร์ฟเวอร์ ในขณะที่ทีมเปลี่ยนจากโมเดลเดี่ยวไปสู่ไปป์ไลน์แบบเอเจนต์ BentoML กำลังวางตำแหน่งตัวเองเป็นชั้นบรรจุภัณฑ์และการให้บริการที่เชื่อมโยงส่วนประกอบเหล่านั้นเข้าด้วยกัน
การใช้งานจริงในโลกแห่งความเป็นจริง
ทีมตรวจจับการฉ้อโกงบันทึกโมเดล XGBoost ลงในร้านค้า BentoML และสร้าง Bento ที่เปิดเผยตำแหน่งข้อมูล /คาดการณ์ REST สำหรับบริการการชำระเงินเพื่อโทรแบบเรียลไทม์
ทีมแพลตฟอร์ม ML ใช้ 'bentoml Containerize' เพื่อเปลี่ยนโมเดลความรู้สึกของ Hugging Face ให้เป็นอิมเมจ Docker ที่ปรับใช้กับคลัสเตอร์ Kubernetes ภายในของพวกเขา
สตาร์ทอัพให้บริการโมเดล Llama ที่ได้รับการปรับแต่งอย่างละเอียดด้วย OpenLLM (สร้างบน BentoML) โดยการสตรีมโทเค็นไปยัง UI การแชทด้วยชุดการทำงานที่ปรับเปลี่ยนได้ซึ่งทำให้ GPU อิ่มตัว
บริษัทคอมพิวเตอร์วิทัศน์แห่งหนึ่งจัดแพคเกจเครื่องแยกประเภทรูปภาพ PyTorch พร้อมไปป์ไลน์การประมวลผลล่วงหน้าไว้ใน Bento เดียว ดังนั้นการแปลงที่แน่นอนที่ใช้ในการฝึกจึงจัดส่งพร้อมกับโมเดล
ความเสี่ยงและรั้ว
การเพิ่มประสิทธิภาพเกณฑ์มาตรฐานหนึ่งรายการสามารถซ่อนจุดอ่อนของระบบในวงกว้างได้
ต้นทุนโครงสร้างพื้นฐานและการบำรุงรักษามักถูกประเมินต่ำไป
ช่องว่างด้านความปลอดภัยและความสามารถในการสังเกตสามารถเพิ่มขึ้นได้เมื่อระบบมีความซับซ้อนมากขึ้น
แผนงานการดำเนินงาน
กำหนดเป้าหมายเวลาแฝง คุณภาพ และต้นทุนก่อนนำไปใช้งาน
เกณฑ์มาตรฐานภายใต้สภาวะโหลดและข้อมูลจริง
การตรวจสอบเครื่องมือเพื่อหาข้อผิดพลาด การเบี่ยงเบน และผลกระทบต่อผู้ใช้
เตรียมเส้นทางการย้อนกลับและการตอบสนองต่อเหตุการณ์ก่อนปรับขนาด
สำรวจต่อไป
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 BentoML and Model Packaging 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
คำแนะนำต่อไป
การแก้ไขเชิงคาดเดาสำหรับโมเดลโค้ด
คำถามที่พบบ่อย
BentoML และบรรจุภัณฑ์โมเดลคืออะไร?
BentoML เป็นเฟรมเวิร์ก Python แบบโอเพ่นซอร์สที่รวมโมเดลการเรียนรู้ของเครื่องที่ได้รับการฝึกมาไว้ในหน่วยมาตรฐานและปรับใช้ได้ที่เรียกว่า 'Bentos' โดยเชื่อมช่องว่างระหว่างโมเดลที่อยู่ในโน้ตบุ๊กและบริการที่ใช้งานจริงที่สามารถรองรับการคาดการณ์ผ่าน API ได้จริง
หน่วยมาตรฐานและปรับใช้ได้ที่ BentoML ผลิตคืออะไร
BentoML จัดทำแพ็กเกจโมเดล โค้ด การขึ้นต่อกัน และการกำหนดค่ารันไทม์ลงในหน่วยที่มีเวอร์ชันในตัวเองที่เรียกว่า Bento
Adaptive Micro-Batching ของ BentoML ช่วยปรับปรุงอะไรเป็นหลัก
คำขอขาเข้าของกลุ่มแบตช์แบบปรับเปลี่ยนได้ในขณะรันไทม์เพื่อให้ GPU ไม่ว่างและเพิ่มทรูพุตสูงสุดโดยไม่ต้องเปลี่ยนแปลงโค้ด
ในสถาปัตยกรรมของ BentoML อะไรจัดการการดำเนินการโมเดลที่เน้นการประมวลผลโดยแยกจากเซิร์ฟเวอร์ API
Runners สรุปการอนุมานโมเดลและสามารถปรับขนาดในกระบวนการของผู้ปฏิบัติงานของตนเอง ซึ่งแยกออกจากเซิร์ฟเวอร์ API น้ำหนักเบา
คำสั่งใดเปลี่ยน Bento ที่สร้างขึ้นให้เป็นอิมเมจ OCI Docker
'bentoml containerize' สร้างอิมเมจ OCI/Docker มาตรฐานจาก Bento เพื่อการปรับใช้
ข้อใดต่อไปนี้เป็นเหตุผลสำคัญที่ BentoML ฝังเวอร์ชันที่ต้องพึ่งพาไว้ใน Bento
การปักหมุดและการฝังสภาพแวดล้อมทำให้บริการแบบแพ็กเกจสามารถทำซ้ำได้และสม่ำเสมอไม่ว่าจะทำงานที่ใดก็ตาม