HƯỚNG DẪN KỸ THUẬT

BentoML và bao bì mẫu

BentoML là một khung Python mã nguồn mở đóng gói các mô hình học máy đã được đào tạo thành các đơn vị được chuẩn hóa, có thể triển khai được gọi là 'Bentos'.

Nghe hướng dẫn nàyAI thuật lại · ~2 min

Trên trang nàyĐọc trong 2 phút
  1. Tổng quan
  2. Lặn sâu
  3. Triển khai trong thế giới thực
  4. Tương lai của BentoML và Bao bì mẫu
  5. Đưa nó vào thực tế
  6. Tiếp tục khám phá
  7. Câu hỏi thường gặp

Tổng quan

Nó thu hẹp khoảng cách giữa một mô hình nằm trong sổ ghi chép và một dịch vụ sản xuất thực sự có thể đưa ra các dự đoán qua API.

Lặn sâu

Khi một nhà khoa học dữ liệu hoàn thành việc đào tạo một mô hình, việc đưa nó vào sản xuất thường có nghĩa là viết mã phân phối theo cách thủ công, ghim các phần phụ thuộc, xây dựng hình ảnh Docker và thiết lập API. BentoML tự động hóa việc này. Bạn lưu một mô hình vào kho lưu trữ mô hình cục bộ của nó, sau đó xác định một lớp Dịch vụ có điểm cuối API được trang trí để xử lý suy luận. Lệnh 'bentoml build' đóng gói mô hình, mã Python, các phiên bản phụ thuộc và cấu hình thời gian chạy vào một Bento có phiên bản, độc lập. Từ đó 'bentoml containerize' tạo ra hình ảnh Docker OCI. BentoML hỗ trợ gần như mọi khung (PyTorch, TensorFlow, scikit-learn, XGBoost, Hugging Face Transformers, ONNX) và thêm tính năng phân lô vi mô thích ứng, tự động nhóm các yêu cầu đến để tối đa hóa thông lượng GPU mà không cần thay đổi mã của bạn.

Triển khai trong thế giới thực

Nhóm phát hiện gian lận lưu mô hình XGBoost vào cửa hàng BentoML và xây dựng Bento hiển thị điểm cuối /dự đoán REST để dịch vụ thanh toán gọi trong thời gian thực.

Nhóm nền tảng ML sử dụng 'bentoml containerize' để biến mô hình cảm xúc Ôm mặt thành hình ảnh Docker triển khai đến cụm Kubernetes nội bộ của họ.

Một công ty khởi nghiệp phục vụ mô hình Llama được tinh chỉnh với OpenLLM (được xây dựng trên BentoML), truyền mã thông báo đến giao diện người dùng trò chuyện với tính năng phân nhóm thích ứng giúp giữ cho GPU luôn bão hòa.

Một công ty thị giác máy tính đóng gói bộ phân loại hình ảnh PyTorch với đường dẫn tiền xử lý của nó vào một Bento để các phép biến đổi chính xác được sử dụng trong quá trình đào tạo đi kèm với mô hình.

Tương lai của BentoML và Bao bì mẫu

BentoML đã tập trung mạnh vào mô hình ngôn ngữ lớn và phân phát AI tổng quát, với OpenLLM và BentoCloud cung cấp phản hồi mã thông báo phát trực tuyến, tự động mở rộng quy mô và lập lịch nhận biết GPU. Mong đợi sự tích hợp chặt chẽ hơn với các trình tối ưu hóa suy luận như vLLM và TensorRT-LLM, hỗ trợ tốt hơn cho các hệ thống AI phức hợp đa mô hình và các đường dẫn mượt mà hơn từ Bento đóng gói đến triển khai GPU không có máy chủ. Khi các nhóm chuyển từ các mô hình đơn lẻ sang các đường ống tác nhân, BentoML đang tự định vị mình là lớp đóng gói và phục vụ gắn kết các thành phần đó lại với nhau.

Đưa nó vào thực tế

Tại sao nó quan trọng

  • Chi phí và ngân sách. Các quyết định về kiến ​​trúc sẽ thúc đẩy hiệu suất và chi phí vận hành trong nhiều năm.
  • Quyết định rõ ràng hơn. Giáo dục kỹ thuật giúp các nhóm chọn nhóm phù hợp chứ không chỉ nhóm mới nhất.
  • Kiểm soát chất lượng. Lựa chọn kỹ thuật tốt hơn làm giảm sự cố về độ tin cậy trong sản xuất.

coi chừng

  • Tối ưu hóa một điểm chuẩn có thể che giấu những điểm yếu của hệ thống rộng hơn.
  • Chi phí cơ sở hạ tầng và bảo trì thường được đánh giá thấp.
  • Khoảng cách về bảo mật và khả năng quan sát có thể tăng lên khi hệ thống trở nên phức tạp hơn.

Các bước tiếp theo

  1. Xác định các mục tiêu về độ trễ, chất lượng và chi phí trước khi triển khai.
  2. Điểm chuẩn trong điều kiện tải và dữ liệu thực tế.
  3. Giám sát thiết bị về lỗi, độ lệch và tác động của người dùng.
  4. Chuẩn bị đường dẫn khôi phục và ứng phó sự cố trước khi mở rộng quy mô.

Tiếp tục khám phá

Bản tin miễn phí

Nhận bản tóm tắt AI hàng ngày

Ba câu chuyện AI đã được xác minh vào mỗi buổi sáng các ngày trong tuần, được viết bằng tiếng Anh đơn giản. Miễn phí mãi mãi, không có quảng cáo.

Một email mỗi ngày trong tuần. Hủy đăng ký trong một cú nhấp chuột. Chúng tôi không bao giờ bán hoặc chia sẻ địa chỉ của bạn.

Tự kiểm tra

Take the BentoML and Model Packaging quiz

Phản hồi tức thì về mọi câu trả lời và chứng chỉ có thể chia sẻ với ID có thể xác minh sau khi bạn vượt qua khóa học.

Bắt đầu bài kiểm tra

Hỗ trợ giáo dục AI miễn phí. AI Understanding là tổ chức phi lợi nhuận 501(c)(3) — không bao giờ có quảng cáo, không có tường phí. Hãy quyên góp

Câu hỏi thường gặp

BentoML và Bao bì mẫu là gì?

BentoML là một khung Python mã nguồn mở đóng gói các mô hình học máy đã được đào tạo thành các đơn vị được chuẩn hóa, có thể triển khai được gọi là 'Bentos'. Nó thu hẹp khoảng cách giữa một mô hình nằm trong sổ ghi chép và một dịch vụ sản xuất thực sự có thể đưa ra các dự đoán qua API.

Đơn vị được tiêu chuẩn hóa, có thể triển khai mà BentoML sản xuất là gì?

BentoML đóng gói một mô hình, mã, các phần phụ thuộc và cấu hình thời gian chạy vào một đơn vị độc lập, có phiên bản được gọi là Bento.

Việc phân lô thích ứng của BentoML chủ yếu cải thiện điều gì?

Nhóm theo khối thích ứng sẽ nhóm các yêu cầu đến trong thời gian chạy để giữ cho GPU luôn bận rộn và tối đa hóa thông lượng mà không cần thay đổi mã.

Trong kiến ​​trúc dựa trên Runner của BentoML 1.1, điều gì xử lý việc thực thi mô hình nặng tính toán tách biệt với logic API?

Tài liệu BentoML mô tả Runners là đơn vị tính toán 1.1 kế thừa có thể thực thi riêng biệt; các phiên bản BentoML mới hơn sẽ hợp lý hóa các dịch vụ.

Lệnh nào biến Bento được xây dựng thành hình ảnh Docker OCI?

'bentoml containerize' tạo ra hình ảnh OCI/Docker tiêu chuẩn từ Bento để triển khai.

Điều nào sau đây là lý do chính khiến BentoML nhúng các phiên bản phụ thuộc vào Bento?

Việc ghim và nhúng môi trường giúp dịch vụ đóng gói có thể tái tạo và nhất quán ở bất kỳ nơi nào nó chạy.