Các ứng dụng máy học (ML) rất phức tạp để triển khai và thường yêu cầu khả năng siêu mở rộng, đồng thời có các yêu cầu về độ trễ cực thấp và ngân sách chi phí nghiêm ngặt. Các trường hợp sử dụng như phát hiện gian lận, đề xuất sản phẩm và dự đoán lưu lượng truy cập là những ví dụ trong đó mili giây quan trọng và rất quan trọng đối với sự thành công của doanh nghiệp. Cần phải đáp ứng các thỏa thuận cấp độ dịch vụ (SLA) nghiêm ngặt và một yêu cầu điển hình có thể yêu cầu nhiều bước như tiền xử lý, chuyển đổi dữ liệu, kỹ thuật tính năng, logic lựa chọn mô hình, tổng hợp mô hình và xử lý hậu kỳ.
Việc triển khai các mô hình ML trên quy mô lớn với chi phí được tối ưu hóa và hiệu quả tính toán có thể là một nhiệm vụ khó khăn và cồng kềnh. Mỗi mô hình có giá trị và sự phụ thuộc riêng dựa trên nguồn dữ liệu bên ngoài cũng như môi trường thời gian chạy chẳng hạn như sức mạnh CPU/GPU của tài nguyên điện toán cơ bản. Một ứng dụng có thể yêu cầu nhiều mô hình ML để phục vụ một yêu cầu suy luận. Trong một số trường hợp nhất định, một yêu cầu có thể chảy qua nhiều mô hình. Không có cách tiếp cận nào phù hợp với tất cả mọi người và điều quan trọng đối với những người thực hành ML là tìm kiếm các phương pháp đã được thử nghiệm và chứng minh để giải quyết các thách thức về lưu trữ ML định kỳ. Điều này đã dẫn đến sự phát triển của các mẫu thiết kế cho dịch vụ lưu trữ mô hình ML.
Trong bài đăng này, chúng tôi khám phá các mẫu thiết kế phổ biến để xây dựng các ứng dụng ML trên Amazon SageMaker.
Các mẫu thiết kế để xây dựng các ứng dụng ML
Hãy xem các mẫu thiết kế sau để sử dụng cho việc lưu trữ các ứng dụng ML.
Các ứng dụng ML dựa trên mô hình đơn
Đây là một tùy chọn tuyệt vời khi trường hợp sử dụng ML của bạn yêu cầu một mô hình duy nhất để phục vụ yêu cầu. Mô hình được triển khai trên cơ sở hạ tầng điện toán chuyên dụng với khả năng mở rộng quy mô dựa trên lưu lượng đầu vào. Tùy chọn này cũng lý tưởng khi ứng dụng khách có yêu cầu suy luận độ trễ thấp (theo thứ tự mili giây hoặc giây).
Các ứng dụng ML dựa trên nhiều mô hình
Để làm cho việc lưu trữ tiết kiệm chi phí hơn, mẫu thiết kế này cho phép bạn lưu trữ nhiều mô hình trên cùng một cơ sở hạ tầng đối tượng thuê. Nhiều mô hình ML có thể chia sẻ tài nguyên máy chủ hoặc bộ chứa, bao gồm cả việc lưu vào bộ nhớ đệm các mô hình ML được sử dụng nhiều nhất, dẫn đến việc sử dụng bộ nhớ và tài nguyên điện toán tốt hơn. Tùy thuộc vào loại mô hình bạn chọn để triển khai, việc đồng lưu trữ mô hình có thể sử dụng các phương pháp sau:
- Lưu trữ đa mô hình – Tùy chọn này cho phép bạn lưu trữ nhiều mô hình bằng cách sử dụng vùng chứa phân phát dùng chung trên một điểm cuối duy nhất. Tính năng này rất lý tưởng khi bạn có một số lượng lớn các mô hình tương tự mà bạn có thể phân phát thông qua vùng chứa phân phối dùng chung và không cần truy cập tất cả các mô hình cùng một lúc.
- Lưu trữ nhiều vùng chứa – Tùy chọn này lý tưởng khi bạn có nhiều mô hình chạy trên các ngăn xếp phân phát khác nhau có nhu cầu tài nguyên tương tự và khi các mô hình riêng lẻ không có đủ lưu lượng truy cập để sử dụng hết công suất của các phiên bản điểm cuối. Dịch vụ lưu trữ nhiều vùng chứa cho phép bạn triển khai nhiều vùng chứa sử dụng các mô hình hoặc khung khác nhau trên một điểm cuối duy nhất. Các mô hình có thể hoàn toàn không đồng nhất, với ngăn xếp phục vụ độc lập của riêng chúng.
- quần thể người mẫu – Trong nhiều trường hợp sử dụng sản xuất, thường có thể có nhiều mô hình ngược dòng cung cấp đầu vào cho một mô hình xuôi dòng nhất định. Đây là nơi mà các bản hòa tấu có ích. Các mẫu tập hợp liên quan đến việc trộn đầu ra từ một hoặc nhiều mô hình cơ sở để giảm lỗi tổng quát hóa của dự đoán. Các mô hình cơ sở có thể đa dạng và được đào tạo bởi các thuật toán khác nhau. Các tập hợp mô hình có thể hoạt động tốt hơn các mô hình đơn lẻ vì lỗi dự đoán của mô hình giảm khi sử dụng phương pháp tập hợp.
Sau đây là các trường hợp sử dụng phổ biến của các mẫu tập hợp và sơ đồ mẫu thiết kế tương ứng của chúng:
- phân tán-tụ tập – Trong mô hình thu thập phân tán, yêu cầu suy luận được chuyển đến một số mô hình. Sau đó, một trình tổng hợp được sử dụng để thu thập các phản hồi và chắt lọc chúng thành một phản hồi suy luận duy nhất. Ví dụ: trường hợp sử dụng phân loại hình ảnh có thể sử dụng ba mô hình khác nhau để thực hiện tác vụ. Mẫu thu thập phân tán cho phép bạn kết hợp kết quả từ các suy luận chạy trên ba mô hình khác nhau và chọn mô hình phân loại có khả năng xảy ra nhất.
- tổng hợp mô hình – Trong một mẫu tổng hợp, kết quả đầu ra từ nhiều mô hình được tính trung bình. Đối với các mô hình phân loại, các dự đoán của nhiều mô hình được đánh giá để xác định lớp nhận được nhiều phiếu bầu nhất và được coi là đầu ra cuối cùng của tập hợp. Ví dụ: trong bài toán phân loại hai lớp để phân loại một tập hợp các loại trái cây là cam hoặc táo, nếu hai mô hình bình chọn cho một quả cam và một mô hình bình chọn cho một quả táo, thì đầu ra tổng hợp sẽ là một quả cam. Tổng hợp giúp chống lại sự thiếu chính xác trong các mô hình riêng lẻ và làm cho đầu ra chính xác hơn.
- lựa chọn động – Một mẫu khác cho các mô hình tập hợp là tự động thực hiện lựa chọn mô hình cho các thuộc tính đầu vào đã cho. Ví dụ: trong một đầu vào là hình ảnh các loại trái cây nhất định, nếu đầu vào có chứa quả cam, mẫu A sẽ được sử dụng vì mẫu này chuyên dùng cho quả cam. Nếu đầu vào chứa một quả táo, mô hình B sẽ được sử dụng vì nó chuyên dùng cho táo.
- Các ứng dụng ML suy luận nối tiếp – Với mẫu suy luận nối tiếp, còn được gọi là đường dẫn suy luận, các trường hợp sử dụng có yêu cầu xử lý trước dữ liệu đến trước khi gọi mô hình ML được đào tạo trước để tạo suy luận. Ngoài ra, trong một số trường hợp, các suy luận đã tạo có thể cần được xử lý thêm để các ứng dụng xuôi dòng có thể dễ dàng sử dụng chúng. Đường dẫn suy luận cho phép bạn sử dụng lại cùng một mã tiền xử lý được sử dụng trong quá trình đào tạo mô hình để xử lý dữ liệu yêu cầu suy luận được sử dụng cho các dự đoán.
- Logic kinh doanh – Sản xuất ML luôn liên quan đến logic kinh doanh. Các mẫu logic nghiệp vụ liên quan đến mọi thứ cần thiết để thực hiện một tác vụ ML không phải là suy luận của mô hình ML. Điều này bao gồm tải mô hình từ Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3), ví dụ: tra cứu cơ sở dữ liệu để xác thực đầu vào, lấy các tính năng được tính toán trước từ kho lưu trữ tính năng, v.v. Sau khi các bước logic nghiệp vụ này hoàn tất, đầu vào sẽ được chuyển qua các mô hình ML.
Tùy chọn suy luận ML
Để triển khai mô hình, điều quan trọng là phải làm việc ngược lại với trường hợp sử dụng của bạn. Tần suất của dự đoán là gì? Bạn có mong đợi lưu lượng truy cập trực tiếp vào ứng dụng của mình và phản hồi theo thời gian thực cho khách hàng của bạn không? Bạn có nhiều mô hình được đào tạo cho các tập dữ liệu con khác nhau cho cùng một trường hợp sử dụng không? Lưu lượng truy cập dự đoán có dao động không? Là độ trễ của suy luận một mối quan tâm? Dựa trên những chi tiết này, tất cả các mẫu thiết kế trước đó có thể được triển khai bằng cách sử dụng các tùy chọn triển khai sau:
- Suy luận thời gian thực – Suy luận thời gian thực là lý tưởng cho khối lượng công việc suy luận mà bạn có các yêu cầu về thời gian thực, tương tác, độ trễ thấp. Khối lượng công việc suy luận ML thời gian thực có thể bao gồm ứng dụng ML dựa trên một mô hình, trong đó một ứng dụng chỉ yêu cầu một mô hình ML để phục vụ một yêu cầu hoặc ứng dụng ML dựa trên nhiều mô hình, trong đó một ứng dụng yêu cầu nhiều mô hình ML để phục vụ một yêu cầu duy nhất. lời yêu cầu.
- Suy luận gần thời gian thực (không đồng bộ) – Với suy luận gần thời gian thực, bạn có thể xếp hàng đợi các yêu cầu đến. Điều này có thể được sử dụng để chạy suy luận trên các đầu vào có kích thước hàng trăm MB. Nó hoạt động trong thời gian gần như thực và cho phép người dùng sử dụng đầu vào để suy luận và đọc đầu ra từ điểm cuối từ bộ chứa S3. Nó đặc biệt hữu ích trong các trường hợp có NLP và thị giác máy tính, nơi có tải trọng lớn đòi hỏi thời gian tiền xử lý lâu hơn.
- Suy luận hàng loạt – Suy luận hàng loạt có thể được sử dụng để chạy suy luận ngoại tuyến trên một tập dữ liệu lớn. Bởi vì nó chạy ngoại tuyến, suy luận hàng loạt không cung cấp độ trễ thấp nhất. Tại đây, yêu cầu suy luận được xử lý bằng trình kích hoạt theo lịch trình hoặc dựa trên sự kiện của công việc suy luận hàng loạt.
- Suy luận không có máy chủ – Suy luận phi máy chủ lý tưởng cho các khối lượng công việc có khoảng thời gian nhàn rỗi giữa các lần tăng lưu lượng truy cập và có thể chịu được độ trễ thêm vài giây (khởi động nguội) cho lệnh gọi đầu tiên sau một khoảng thời gian không hoạt động. Ví dụ: dịch vụ chatbot hoặc ứng dụng xử lý biểu mẫu hoặc phân tích dữ liệu từ tài liệu. Trong trường hợp này, bạn có thể muốn một tùy chọn suy luận trực tuyến có khả năng tự động cung cấp và thay đổi quy mô công suất điện toán dựa trên khối lượng yêu cầu suy luận. Và trong thời gian nhàn rỗi, nó có thể tắt hoàn toàn khả năng tính toán để bạn không bị tính phí. Suy luận không có máy chủ loại bỏ gánh nặng không phân biệt trong việc lựa chọn và quản lý máy chủ bằng cách tự động khởi chạy tài nguyên điện toán và mở rộng quy mô của chúng tùy thuộc vào lưu lượng truy cập.
Sử dụng các chức năng thể dục để chọn tùy chọn suy luận ML phù hợp
Việc quyết định tùy chọn lưu trữ phù hợp là rất quan trọng vì nó tác động đến người dùng cuối do ứng dụng của bạn hiển thị. Với mục đích này, chúng tôi đang mượn khái niệm về chức năng tập thể dục, do Neal Ford và đồng nghiệp của anh ấy từ AWS Partner ThoughtWorks đặt ra trong công việc của họ Xây dựng kiến trúc tiến hóa. Các chức năng thể dục cung cấp đánh giá theo quy định về các tùy chọn lưu trữ khác nhau dựa trên mục tiêu của khách hàng. Các chức năng phù hợp giúp bạn có được dữ liệu cần thiết để cho phép phát triển theo kế hoạch kiến trúc của bạn. Chúng đặt các giá trị có thể đo lường để đánh giá mức độ gần gũi của giải pháp với việc đạt được các mục tiêu đã đề ra. Các chức năng phù hợp có thể và nên được điều chỉnh khi kiến trúc phát triển để hướng dẫn quá trình thay đổi mong muốn. Điều này cung cấp cho các kiến trúc sư một công cụ để hướng dẫn nhóm của họ trong khi vẫn duy trì quyền tự chủ của nhóm.
Có năm chức năng thể dục chính mà khách hàng quan tâm khi chọn tùy chọn suy luận ML phù hợp để lưu trữ các mô hình và ứng dụng ML của họ.
chức năng tập thể dục | Mô tả |
Phí Tổn |
Để triển khai và duy trì mô hình ML và ứng dụng ML trên khung có thể mở rộng là một quy trình kinh doanh quan trọng và chi phí có thể khác nhau rất nhiều tùy thuộc vào các lựa chọn về cơ sở hạ tầng lưu trữ mô hình, tùy chọn lưu trữ, khung ML, đặc điểm mô hình ML, tối ưu hóa, chính sách mở rộng quy mô, và nhiều hơn nữa. Khối lượng công việc phải sử dụng cơ sở hạ tầng phần cứng một cách tối ưu để đảm bảo rằng chi phí vẫn nằm trong tầm kiểm soát. Chức năng phù hợp này đề cập cụ thể đến chi phí cơ sở hạ tầng, là một phần của tổng chi phí sở hữu (TCO). Chi phí cơ sở hạ tầng là chi phí kết hợp cho lưu trữ, mạng và điện toán. Việc hiểu các thành phần khác của TCO cũng rất quan trọng, bao gồm chi phí vận hành, chi phí bảo mật và tuân thủ. Chi phí vận hành là tổng chi phí vận hành, giám sát và duy trì cơ sở hạ tầng ML. Chi phí vận hành được tính bằng số lượng kỹ sư cần thiết dựa trên từng kịch bản và mức lương hàng năm của các kỹ sư, được tổng hợp trong một khoảng thời gian cụ thể. Khách hàng sử dụng các giải pháp ML tự quản lý trên Đám mây điện toán đàn hồi Amazon (Amazon EC2), Dịch vụ container đàn hồi Amazon (Amazon ECS) và Dịch vụ Kubernetes đàn hồi của Amazon (Amazon EKS) cần tự xây dựng công cụ vận hành. Khách hàng sử dụng SageMaker phải chịu TCO ít hơn đáng kể. Suy luận SageMaker là một dịch vụ được quản lý hoàn toàn và cung cấp các khả năng vượt trội để triển khai các mô hình ML cho suy luận. Bạn không cần cung cấp các phiên bản, theo dõi tình trạng của phiên bản, quản lý các bản vá hoặc cập nhật bảo mật, đưa ra các chỉ số hoạt động hoặc xây dựng hệ thống giám sát cho khối lượng công việc suy luận ML của bạn. Nó có các khả năng tích hợp để đảm bảo tính khả dụng và khả năng phục hồi cao. SageMaker hỗ trợ bảo mật với mã hóa đầu cuối khi lưu trữ và chuyển tiếp, bao gồm mã hóa ổ đĩa gốc và Cửa hàng đàn hồi Amazon khối lượng (Amazon EBS), Đám mây riêng ảo Amazon hỗ trợ (Amazon VPC), Liên kết riêng AWS, khóa do khách hàng quản lý, Quản lý truy cập và nhận dạng AWS (IAM) kiểm soát truy cập chi tiết, Đường mòn đám mây AWS kiểm tra, mã hóa nút nội bộ để đào tạo, kiểm soát truy cập dựa trên thẻ, cách ly mạng và Proxy ứng dụng tương tác. Tất cả các tính năng bảo mật này đều được cung cấp sẵn trong SageMaker và có thể tiết kiệm cho doanh nghiệp hàng chục tháng nỗ lực phát triển kỹ thuật trong khoảng thời gian 3 năm. SageMaker là dịch vụ đủ điều kiện HIPAA và được chứng nhận theo PCI, SOC, GDPR và ISO. SageMaker cũng hỗ trợ các điểm cuối FIPS. Để biết thêm thông tin về TCO, tham khảo Tổng chi phí sở hữu của Amazon SageMaker. |
Độ trễ suy luận | Nhiều mô hình và ứng dụng ML rất quan trọng về độ trễ, trong đó độ trễ suy luận phải nằm trong giới hạn được chỉ định bởi mục tiêu cấp độ dịch vụ. Độ trễ suy luận phụ thuộc vào vô số yếu tố, bao gồm kích thước và độ phức tạp của mô hình, nền tảng phần cứng, môi trường phần mềm và kiến trúc mạng. Ví dụ: các mô hình lớn hơn và phức tạp hơn có thể mất nhiều thời gian hơn để chạy suy luận. |
Thông lượng (giao dịch mỗi giây) | Đối với suy luận mô hình, việc tối ưu hóa thông lượng là rất quan trọng để điều chỉnh hiệu suất và đạt được mục tiêu kinh doanh của ứng dụng ML. Khi chúng tôi tiếp tục phát triển nhanh chóng trong tất cả các khía cạnh của ML, bao gồm triển khai cấp thấp các hoạt động toán học trong thiết kế chip, các thư viện dành riêng cho phần cứng đóng vai trò lớn hơn trong việc tối ưu hóa hiệu suất. Nhiều yếu tố khác nhau như kích thước tải trọng, bước nhảy mạng, bản chất của bước nhảy, tính năng biểu đồ mô hình, toán tử trong mô hình cũng như cấu hình CPU, GPU và bộ nhớ của phiên bản lưu trữ mô hình ảnh hưởng đến thông lượng của mô hình ML. |
Mở rộng cấu hình phức tạp | Điều quan trọng đối với các mô hình hoặc ứng dụng ML là chạy trên một khung có thể mở rộng để có thể xử lý nhu cầu về lưu lượng truy cập khác nhau. Nó cũng cho phép tận dụng tối đa tài nguyên CPU và GPU, đồng thời ngăn việc cung cấp quá mức tài nguyên điện toán. |
Mô hình lưu lượng truy cập dự kiến | Các mô hình hoặc ứng dụng ML có thể có các mẫu lưu lượng truy cập khác nhau, từ lưu lượng truy cập trực tiếp liên tục theo thời gian thực đến các đỉnh định kỳ gồm hàng nghìn yêu cầu mỗi giây và từ các mẫu yêu cầu không thường xuyên, không thể đoán trước đến các yêu cầu hàng loạt ngoại tuyến trên các bộ dữ liệu lớn hơn. Bạn nên làm ngược lại mẫu lưu lượng truy cập dự kiến để chọn tùy chọn lưu trữ phù hợp cho mô hình ML của mình. |
Triển khai các mô hình với SageMaker
SageMaker là một dịch vụ AWS được quản lý hoàn toàn, cung cấp cho mọi nhà phát triển và nhà khoa học dữ liệu khả năng xây dựng, đào tạo và triển khai nhanh chóng các mô hình ML trên quy mô lớn. Với suy luận SageMaker, bạn có thể triển khai các mô hình ML của mình trên các điểm cuối được lưu trữ và nhận kết quả suy luận. SageMaker cung cấp nhiều lựa chọn phần cứng và tính năng để đáp ứng các yêu cầu về khối lượng công việc của bạn, cho phép bạn chọn hơn 70 loại phiên bản với khả năng tăng tốc phần cứng. SageMaker cũng có thể cung cấp đề xuất loại phiên bản suy luận bằng tính năng mới có tên là Trình đề xuất suy luận SageMaker, trong trường hợp bạn không chắc chắn loại nào sẽ tối ưu nhất cho khối lượng công việc của mình.
Bạn có thể chọn các tùy chọn triển khai để đáp ứng tốt nhất các trường hợp sử dụng của mình, chẳng hạn như suy luận thời gian thực, không đồng bộ, hàng loạt và thậm chí cả các điểm cuối không có máy chủ. Ngoài ra, SageMaker cung cấp các chiến lược triển khai khác nhau như canary, xanh lam / xanh lục, bóng tốivà thử nghiệm A/B để triển khai mô hình, cùng với việc triển khai tiết kiệm chi phí với nhiều mô hình, nhiều vùng chứa điểm cuối và thay đổi quy mô linh hoạt. Với suy luận SageMaker, bạn có thể xem số liệu hiệu suất cho các điểm cuối của mình trong amazoncloudwatch, tự động quy mô điểm cuối dựa trên lưu lượng truy cập và cập nhật các mô hình của bạn trong sản xuất mà không mất bất kỳ tính khả dụng nào.
SageMaker cung cấp bốn tùy chọn để triển khai mô hình của bạn để bạn có thể bắt đầu đưa ra dự đoán:
- Suy luận thời gian thực – Điều này phù hợp với khối lượng công việc có yêu cầu về độ trễ tính bằng mili giây, kích thước tải trọng lên tới 6 MB và thời gian xử lý lên tới 60 giây.
- Chuyển đổi hàng loạt – Điều này lý tưởng cho các dự đoán ngoại tuyến trên các lô dữ liệu lớn có sẵn từ trước.
- Suy luận không đồng bộ – Điều này được thiết kế cho khối lượng công việc không có yêu cầu về độ trễ dưới giây, kích thước tải trọng lên tới 1 GB và thời gian xử lý lên tới 15 phút.
- Suy luận không có máy chủ – Với suy luận không có máy chủ, bạn có thể nhanh chóng triển khai các mô hình ML để suy luận mà không cần phải định cấu hình hoặc quản lý cơ sở hạ tầng bên dưới. Ngoài ra, bạn chỉ trả tiền cho năng lực điện toán được sử dụng để xử lý các yêu cầu suy luận, lý tưởng cho khối lượng công việc không liên tục.
Sơ đồ sau đây có thể giúp bạn hiểu các tùy chọn triển khai mô hình lưu trữ SageMaker cùng với các đánh giá chức năng thể dục có liên quan.
Hãy khám phá từng tùy chọn triển khai chi tiết hơn.
Suy luận thời gian thực trong SageMaker
Suy luận thời gian thực SageMaker được khuyến nghị nếu bạn có lưu lượng truy cập ổn định và cần độ trễ thấp hơn và nhất quán cho các yêu cầu của mình với kích thước tải trọng lên tới 6 MB và thời gian xử lý lên tới 60 giây. Bạn triển khai mô hình của mình cho các dịch vụ lưu trữ SageMaker và nhận một điểm cuối có thể được sử dụng để suy luận. Các điểm cuối này được quản lý hoàn toàn và hỗ trợ tự động thay đổi quy mô. Suy luận thời gian thực phổ biến đối với các trường hợp sử dụng mà bạn mong đợi phản hồi đồng bộ, độ trễ thấp với các mẫu lưu lượng truy cập có thể dự đoán được, chẳng hạn như các đề xuất được cá nhân hóa cho các sản phẩm và dịch vụ hoặc các trường hợp sử dụng phát hiện gian lận trong giao dịch.
Thông thường, ứng dụng khách sẽ gửi yêu cầu đến điểm cuối HTTPS của SageMaker để thu được kết luận từ mô hình đã triển khai. Bạn có thể triển khai nhiều biến thể của một mô hình cho cùng một điểm cuối HTTPS SageMaker. Điều này hữu ích để thử nghiệm các biến thể của một mô hình trong sản xuất. Tính năng tự động thay đổi quy mô cho phép bạn tự động điều chỉnh số lượng phiên bản được cung cấp cho một mô hình để đáp ứng những thay đổi trong khối lượng công việc của bạn.
Bảng sau đây cung cấp hướng dẫn về cách đánh giá suy luận thời gian thực của SageMaker dựa trên các chức năng thể dục.
chức năng tập thể dục | Mô tả |
Phí Tổn |
Điểm cuối thời gian thực cung cấp phản hồi đồng bộ cho các yêu cầu suy luận. Vì điểm cuối luôn chạy và sẵn sàng cung cấp phản hồi suy luận đồng bộ theo thời gian thực nên bạn phải trả tiền khi sử dụng phiên bản. Chi phí có thể tăng lên nhanh chóng khi bạn triển khai nhiều điểm cuối, đặc biệt nếu các điểm cuối không sử dụng hết các phiên bản cơ bản. Việc chọn đúng phiên bản cho mô hình của bạn sẽ giúp đảm bảo bạn có phiên bản hiệu quả nhất với chi phí thấp nhất cho các mô hình của mình. Bạn nên tự động thay đổi quy mô để tự động điều chỉnh dung lượng tùy thuộc vào lưu lượng truy cập nhằm duy trì hiệu suất ổn định và có thể dự đoán được với chi phí thấp nhất có thể. SageMaker mở rộng quyền truy cập vào các dòng phiên bản ML dựa trên Graviton2 và Graviton3. AWS trọng lực bộ xử lý được Amazon Web Services tùy chỉnh xây dựng bằng cách sử dụng lõi Arm Neoverse 64 bit để mang lại hiệu suất ở mức giá tốt nhất cho khối lượng công việc trên đám mây của bạn chạy trên Amazon EC2. Với các phiên bản dựa trên Graviton, bạn có nhiều tùy chọn hơn để tối ưu hóa chi phí và hiệu suất khi triển khai các mô hình ML của mình trên SageMaker. SageMaker cũng hỗ trợ Phiên bản Inf1, cung cấp suy luận ML hiệu suất cao và tiết kiệm chi phí. Với 1–16 Chip AWS Inferentia mỗi phiên bản, các phiên bản Inf1 có thể thay đổi quy mô về hiệu suất và mang lại thông lượng cao hơn tới ba lần cũng như chi phí mỗi lần suy luận thấp hơn tới 50% so với các phiên bản dựa trên GPU AWS. Để sử dụng các phiên bản Inf1 trong SageMaker, bạn có thể biên dịch các mô hình đã đào tạo của mình bằng cách sử dụng Amazon SageMaker Neo và chọn các phiên bản Inf1 để triển khai mô hình đã biên dịch trên SageMaker. Bạn cũng có thể khám phá Kế hoạch tiết kiệm cho SageMaker được hưởng lợi từ việc tiết kiệm chi phí lên đến 64% so với giá bán theo yêu cầu. Khi bạn tạo một điểm cuối, SageMaker sẽ gắn một ổ đĩa lưu trữ EBS vào mỗi phiên bản điện toán ML lưu trữ điểm cuối. Kích thước của ổ đĩa lưu trữ phụ thuộc vào loại phiên bản. Chi phí bổ sung cho các điểm cuối thời gian thực bao gồm chi phí cho GB-tháng dung lượng lưu trữ được cung cấp, cộng với GB dữ liệu được xử lý trong và GB dữ liệu được xử lý bên ngoài phiên bản điểm cuối. |
Độ trễ suy luận | Suy luận thời gian thực là lý tưởng khi bạn cần một điểm cuối liên tục với các yêu cầu về độ trễ mili giây. Nó hỗ trợ kích thước tải trọng lên tới 6 MB và thời gian xử lý lên tới 60 giây. |
Thông lượng |
Giá trị lý tưởng của thông lượng suy luận phụ thuộc vào các yếu tố như mô hình, kích thước đầu vào mô hình, kích thước lô và loại phiên bản điểm cuối. Phương pháp hay nhất là xem xét các chỉ số của CloudWatch cho các yêu cầu đầu vào và mức sử dụng tài nguyên, đồng thời chọn loại phiên bản phù hợp để đạt được thông lượng tối ưu. Một ứng dụng kinh doanh có thể được tối ưu hóa thông lượng hoặc tối ưu hóa độ trễ. Ví dụ: tạo nhóm động có thể giúp tăng thông lượng cho các ứng dụng nhạy cảm với độ trễ bằng cách sử dụng suy luận thời gian thực. Tuy nhiên, có các giới hạn đối với kích thước lô, nếu không có giới hạn này thì độ trễ suy luận có thể bị ảnh hưởng. Độ trễ suy luận sẽ tăng lên khi bạn tăng kích thước lô để cải thiện thông lượng. Do đó, suy luận thời gian thực là một lựa chọn lý tưởng cho các ứng dụng nhạy cảm với độ trễ. SageMaker cung cấp các tùy chọn suy luận không đồng bộ và chuyển đổi hàng loạt, được tối ưu hóa để mang lại thông lượng cao hơn so với suy luận thời gian thực nếu các ứng dụng kinh doanh có thể chịu được độ trễ cao hơn một chút. |
Mở rộng cấu hình phức tạp |
Hỗ trợ điểm cuối thời gian thực SageMaker tự động mở rộng ngoài cái hộp. Khi khối lượng công việc tăng lên, tính năng tự động thay đổi quy mô sẽ mang lại nhiều phiên bản trực tuyến hơn. Khi khối lượng công việc giảm, tính năng tự động thay đổi quy mô sẽ loại bỏ các phiên bản không cần thiết, giúp bạn giảm chi phí điện toán. Nếu không có tính năng tự động thay đổi quy mô, bạn cần dự phòng cho lưu lượng truy cập cao nhất hoặc không có sẵn mô hình rủi ro. Trừ khi lưu lượng truy cập vào mô hình của bạn ổn định suốt cả ngày, nếu không sẽ có dung lượng dư thừa không được sử dụng. Điều này dẫn đến việc sử dụng thấp và lãng phí tài nguyên. Với SageMaker, bạn có thể định cấu hình các tùy chọn chia tỷ lệ khác nhau dựa trên mẫu lưu lượng dự kiến. Chia tỷ lệ theo dõi mục tiêu hoặc theo dõi mục tiêu đơn giản là lý tưởng khi bạn muốn chia tỷ lệ dựa trên một số liệu CloudWatch cụ thể. Bạn có thể làm điều này bằng cách chọn một số liệu cụ thể và đặt các giá trị ngưỡng. Các số liệu được đề xuất cho tùy chọn này là trung bình Nếu yêu cầu cấu hình nâng cao, bạn có thể đặt chính sách chia tỷ lệ theo bước để tự động điều chỉnh số lượng phiên bản theo tỷ lệ dựa trên quy mô của vi phạm cảnh báo. Điều này giúp bạn định cấu hình phản hồi tích cực hơn khi nhu cầu đạt đến một mức nhất định. Bạn có thể sử dụng tùy chọn chia tỷ lệ theo lịch trình khi bạn biết rằng nhu cầu tuân theo một lịch trình cụ thể trong ngày, tuần, tháng hoặc năm. Điều này giúp bạn chỉ định lịch trình một lần hoặc lịch trình định kỳ hoặc biểu thức cron cùng với thời gian bắt đầu và kết thúc, tạo thành ranh giới khi hành động tự động thay đổi quy mô bắt đầu và dừng. Để biết thêm chi tiết, hãy tham khảo Định cấu hình điểm cuối suy luận tự động thay đổi quy mô trong Amazon SageMaker và Kiểm tra tải và tối ưu hóa điểm cuối Amazon SageMaker bằng tính năng tự động thay đổi quy mô. |
mô hình giao thông | Suy luận thời gian thực lý tưởng cho khối lượng công việc có mẫu lưu lượng truy cập liên tục hoặc thường xuyên. |
Suy luận không đồng bộ trong SageMaker
SageMaker suy luận không đồng bộ là một khả năng mới trong SageMaker xếp hàng đợi các yêu cầu đến và xử lý chúng một cách không đồng bộ. Tùy chọn này lý tưởng cho các yêu cầu có kích thước tải trọng lớn (tối đa 1 GB), thời gian xử lý lâu (tối đa 15 phút) và yêu cầu độ trễ gần thời gian thực. Ví dụ về khối lượng công việc cho suy luận không đồng bộ bao gồm các công ty chăm sóc sức khỏe xử lý hình ảnh hoặc video y sinh có độ phân giải cao như siêu âm tim để phát hiện các điểm bất thường. Các ứng dụng này nhận được các đợt lưu lượng truy cập vào các thời điểm khác nhau trong ngày và yêu cầu xử lý gần thời gian thực với chi phí thấp. Thời gian xử lý cho những yêu cầu này có thể dao động theo thứ tự phút, loại bỏ nhu cầu chạy suy luận thời gian thực. Thay vào đó, tải trọng đầu vào có thể được xử lý không đồng bộ từ kho lưu trữ đối tượng như Amazon S3 với hàng đợi tự động và ngưỡng đồng thời được xác định trước. Sau khi xử lý, SageMaker đặt phản hồi suy luận vào vị trí Amazon S3 đã trả về trước đó. Bạn có thể tùy chọn nhận thông báo thành công hay lỗi qua Dịch vụ thông báo đơn giản của Amazon (SNS của Amazon).
Bảng sau đây cung cấp hướng dẫn về cách đánh giá suy luận không đồng bộ của SageMaker dựa trên các chức năng thể dục.
chức năng tập thể dục | Mô tả |
Phí Tổn | Suy luận không đồng bộ là một lựa chọn tuyệt vời cho khối lượng công việc nhạy cảm với chi phí với tải trọng lớn và lưu lượng truy cập bùng nổ. Suy luận không đồng bộ cho phép bạn tiết kiệm chi phí bằng cách tự động thay đổi số lượng phiên bản thành XNUMX khi không có yêu cầu xử lý, vì vậy, bạn chỉ phải trả tiền khi điểm cuối của mình đang xử lý yêu cầu. Các yêu cầu nhận được khi không có phiên bản nào sẽ được xếp hàng đợi để xử lý sau khi điểm cuối tăng quy mô. |
Độ trễ suy luận | Suy luận không đồng bộ là lý tưởng cho các yêu cầu độ trễ gần thời gian thực. Các yêu cầu được đặt trong hàng đợi và được xử lý ngay khi máy tính khả dụng. Điều này thường dẫn đến độ trễ hàng chục mili giây. |
Thông lượng | Suy luận không đồng bộ là lý tưởng cho các trường hợp sử dụng không nhạy cảm với độ trễ, bởi vì các ứng dụng không phải thỏa hiệp về thông lượng. Các yêu cầu không bị loại bỏ khi lưu lượng truy cập tăng đột biến vì điểm cuối suy luận không đồng bộ xếp hàng các yêu cầu thay vì loại bỏ chúng. |
Mở rộng cấu hình phức tạp |
hỗ trợ SageMaker tự động mở rộng cho điểm cuối không đồng bộ. Không giống như các điểm cuối được lưu trữ theo thời gian thực, các điểm cuối suy luận không đồng bộ hỗ trợ thu nhỏ các phiên bản về XNUMX bằng cách đặt dung lượng tối thiểu thành XNUMX. Đối với các điểm cuối không đồng bộ, SageMaker thực sự khuyên bạn nên tạo cấu hình chính sách để mở rộng quy mô theo dõi mục tiêu cho một mô hình đã triển khai (biến thể). Đối với các trường hợp sử dụng có thể chịu được hình phạt bắt đầu nguội trong vài phút, bạn có thể tùy chọn giảm số lượng phiên bản điểm cuối xuống XNUMX khi không có yêu cầu chưa xử lý nào và tăng quy mô khi có yêu cầu mới để bạn chỉ phải trả trong khoảng thời gian mà các điểm cuối đang tích cực xử lý các yêu cầu. |
mô hình giao thông | Điểm cuối không đồng bộ xếp hàng các yêu cầu đến và xử lý chúng không đồng bộ. Chúng là một lựa chọn tốt cho các mẫu lưu lượng truy cập gián đoạn hoặc không thường xuyên. |
Suy luận hàng loạt trong SageMaker
Chuyển đổi hàng loạt SageMaker lý tưởng cho các dự đoán ngoại tuyến trên các lô dữ liệu lớn có sẵn từ trước. Tính năng chuyển đổi hàng loạt là phương pháp hiệu suất cao và thông lượng cao để chuyển đổi dữ liệu và tạo kết luận. Đó là lý tưởng cho các tình huống mà bạn đang xử lý các lô dữ liệu lớn, không cần độ trễ dưới giây hoặc cần cả xử lý trước và chuyển đổi dữ liệu đào tạo. Khách hàng trong một số lĩnh vực nhất định như quảng cáo và tiếp thị hoặc chăm sóc sức khỏe thường cần đưa ra dự đoán ngoại tuyến trên bộ dữ liệu siêu quy mô trong đó thông lượng cao thường là mục tiêu của trường hợp sử dụng và độ trễ không phải là vấn đề đáng lo ngại.
Khi một tác vụ chuyển đổi hàng loạt bắt đầu, SageMaker sẽ khởi tạo các phiên bản điện toán và phân phối khối lượng công việc suy luận giữa chúng. Nó giải phóng các tài nguyên khi công việc hoàn thành, vì vậy bạn chỉ phải trả tiền cho những gì đã được sử dụng trong quá trình thực hiện công việc của mình. Khi công việc hoàn tất, SageMaker lưu kết quả dự đoán vào bộ chứa S3 mà bạn chỉ định. Các tác vụ suy luận hàng loạt thường là những ứng cử viên tốt cho việc chia tỷ lệ theo chiều ngang. Mỗi công nhân trong một cụm có thể hoạt động trên một tập hợp con dữ liệu khác nhau mà không cần trao đổi thông tin với các công nhân khác. AWS cung cấp nhiều tùy chọn lưu trữ và điện toán cho phép mở rộng quy mô theo chiều ngang. Khối lượng công việc ví dụ cho chuyển đổi hàng loạt SageMaker bao gồm các ứng dụng ngoại tuyến, chẳng hạn như ứng dụng ngân hàng để dự đoán tỷ lệ rời bỏ của khách hàng trong đó một công việc ngoại tuyến có thể được lên lịch để chạy định kỳ.
Bảng sau đây cung cấp hướng dẫn về cách đánh giá biến đổi hàng loạt SageMaker dựa trên các chức năng phù hợp.
chức năng tập thể dục | Mô tả |
Phí Tổn | Biến đổi hàng loạt SageMaker cho phép bạn chạy các dự đoán trên bộ dữ liệu lô lớn hoặc nhỏ. Bạn bị tính phí cho loại phiên bản bạn chọn, dựa trên thời lượng sử dụng. SageMaker quản lý việc cung cấp tài nguyên khi bắt đầu công việc và giải phóng chúng khi công việc hoàn thành. Không có chi phí xử lý dữ liệu bổ sung. |
Độ trễ suy luận | Bạn có thể sử dụng lời gọi dựa trên sự kiện hoặc theo lịch trình. Độ trễ có thể khác nhau tùy thuộc vào kích thước của dữ liệu suy luận, tính đồng thời của công việc, độ phức tạp của mô hình và khả năng tính toán của phiên bản. |
Thông lượng |
Công việc chuyển đổi hàng loạt có thể được thực hiện trên nhiều bộ dữ liệu, từ hàng petabyte dữ liệu đến các bộ dữ liệu rất nhỏ. Không cần phải thay đổi kích thước tập dữ liệu lớn hơn thành các khối dữ liệu nhỏ. Bạn có thể tăng tốc công việc chuyển đổi hàng loạt bằng cách sử dụng các giá trị tối ưu cho các tham số, chẳng hạn như Tải trọng tối đaInMB, Chuyển đổi đồng thời tối đa, hoặc là Chiến lược hàng loạt. Giá trị lý tưởng cho Xử lý hàng loạt có thể tăng thông lượng và tối ưu hóa tài nguyên của bạn vì nó giúp hoàn thành số lượng suy luận lớn hơn trong một khoảng thời gian nhất định với chi phí là độ trễ. Để tối ưu hóa việc triển khai mô hình cho thông lượng cao hơn, nguyên tắc chung là tăng kích thước lô cho đến khi thông lượng giảm. |
Mở rộng cấu hình phức tạp | Chuyển đổi lô SageMaker được sử dụng để suy luận ngoại tuyến không nhạy cảm với độ trễ. |
mô hình giao thông | Đối với suy luận ngoại tuyến, công việc chuyển đổi hàng loạt được lên lịch hoặc bắt đầu bằng cách sử dụng trình kích hoạt dựa trên sự kiện. |
Suy luận không có máy chủ trong SageMaker
Suy luận không cần máy chủ của SageMaker cho phép bạn triển khai các mô hình ML để suy luận mà không phải định cấu hình hoặc quản lý cơ sở hạ tầng cơ bản. Dựa trên khối lượng yêu cầu suy luận mà mô hình của bạn nhận được, suy luận không cần máy chủ của SageMaker sẽ tự động cung cấp, chia tỷ lệ và tắt khả năng tính toán. Do đó, bạn chỉ trả tiền cho thời gian tính toán để chạy mã suy luận và lượng dữ liệu được xử lý, không phải cho thời gian nhàn rỗi. Bạn có thể sử dụng các thuật toán tích hợp sẵn của SageMaker và các bộ chứa phân phát khung ML để triển khai mô hình của bạn đến một điểm cuối suy luận không có máy chủ hoặc chọn mang theo bộ chứa của riêng bạn. Nếu lưu lượng truy cập trở nên ổn định và có thể dự đoán được, thì bạn có thể dễ dàng cập nhật từ điểm cuối suy luận không có máy chủ sang điểm cuối thời gian thực SageMaker mà không cần thực hiện thay đổi đối với hình ảnh vùng chứa của mình. Với suy luận serverless, bạn cũng được hưởng lợi từ các tính năng khác của SageMaker, bao gồm các chỉ số tích hợp như số lệnh gọi, lỗi, độ trễ, chỉ số máy chủ và lỗi trong CloudWatch.
Bảng sau đây cung cấp hướng dẫn về cách đánh giá suy luận không cần máy chủ của SageMaker dựa trên các chức năng thể dục.
chức năng tập thể dục | Mô tả |
Phí Tổn | Với mô hình trả tiền khi bạn chạy, suy luận không có máy chủ là một tùy chọn hiệu quả về chi phí nếu bạn có các mẫu lưu lượng truy cập không thường xuyên hoặc không liên tục. Bạn chỉ trả tiền cho khoảng thời gian mà điểm cuối xử lý yêu cầu và do đó có thể tiết kiệm chi phí nếu mẫu lưu lượng không liên tục. |
Độ trễ suy luận |
Điểm cuối serverless cung cấp độ trễ suy luận thấp (theo thứ tự từ mili giây đến giây), với khả năng thay đổi quy mô ngay lập tức từ hàng chục đến hàng nghìn lần suy luận trong vòng vài giây dựa trên các kiểu sử dụng, khiến nó trở nên lý tưởng cho các ứng dụng ML có lưu lượng truy cập gián đoạn hoặc không thể đoán trước. Do điểm cuối serverless cung cấp tài nguyên điện toán theo yêu cầu nên điểm cuối của bạn có thể gặp phải độ trễ thêm vài giây (khởi động nguội) cho lệnh gọi đầu tiên sau một khoảng thời gian không hoạt động. Thời gian bắt đầu nguội tùy thuộc vào kích thước mô hình của bạn, thời gian tải mô hình xuống và thời gian khởi động vùng chứa của bạn. |
Thông lượng | Khi định cấu hình điểm cuối serverless, bạn có thể chỉ định kích thước bộ nhớ và số lượng lệnh gọi đồng thời tối đa. SageMaker suy luận serverless tự động chỉ định tài nguyên điện toán tỷ lệ thuận với bộ nhớ bạn chọn. Nếu bạn chọn kích thước bộ nhớ lớn hơn, bộ chứa của bạn có quyền truy cập vào nhiều vCPU hơn. Theo nguyên tắc chung, kích thước bộ nhớ ít nhất phải lớn bằng kích thước mô hình của bạn. Kích thước bộ nhớ bạn có thể chọn là 1024 MB, 2048 MB, 3072 MB, 4096 MB, 5120 MB và 6144 MB. Bất kể kích thước bộ nhớ bạn chọn là gì, các điểm cuối serverless đều có sẵn 5 GB dung lượng lưu trữ tạm thời trên đĩa. |
Mở rộng cấu hình phức tạp | Điểm cuối serverless tự động khởi chạy tài nguyên điện toán và thay đổi quy mô tùy thuộc vào lưu lượng truy cập, loại bỏ nhu cầu chọn loại phiên bản hoặc quản lý chính sách thay đổi quy mô. Điều này loại bỏ công việc nặng nhọc không phân biệt trong việc lựa chọn và quản lý máy chủ. |
mô hình giao thông | Suy luận không có máy chủ lý tưởng cho các khối lượng công việc có các mẫu lưu lượng truy cập không thường xuyên hoặc không liên tục. |
Mô hình lưu trữ các mẫu thiết kế trong SageMaker
Điểm cuối suy luận SageMaker sử dụng bộ chứa Docker để lưu trữ các mô hình ML. Bộ chứa cho phép bạn đóng gói phần mềm thành các đơn vị được tiêu chuẩn hóa chạy nhất quán trên mọi nền tảng hỗ trợ Docker. Điều này đảm bảo tính di động trên các nền tảng, triển khai cơ sở hạ tầng bất biến và quản lý thay đổi cũng như triển khai CI/CD dễ dàng hơn. SageMaker cung cấp các bộ chứa được quản lý dựng sẵn cho các khung phổ biến như Apache MXNet, TensorFlow, PyTorch, Sklearn và Hugging Face. Để biết danh sách đầy đủ các hình ảnh bộ chứa SageMaker có sẵn, hãy tham khảo Hình ảnh các thùng chứa Deep Learning có sẵn. Trong trường hợp SageMaker không có vùng chứa được hỗ trợ, bạn cũng có thể tạo vùng chứa của riêng mình (BYOC) và đẩy hình ảnh tùy chỉnh của riêng mình, cài đặt các phụ thuộc cần thiết cho mô hình của bạn.
Để triển khai một mô hình trên SageMaker, bạn cần có một bộ chứa (bộ chứa khung do SageMaker quản lý hoặc BYOC) và một phiên bản điện toán để lưu trữ bộ chứa. SageMaker hỗ trợ nhiều tùy chọn nâng cao cho các mẫu thiết kế lưu trữ mô hình ML phổ biến trong đó các mô hình có thể được lưu trữ trên một vùng chứa hoặc đồng lưu trữ trên một vùng chứa dùng chung.
Ứng dụng ML thời gian thực có thể sử dụng một mô hình hoặc nhiều mô hình để phục vụ một yêu cầu dự đoán. Sơ đồ sau đây hiển thị các kịch bản suy luận khác nhau cho một ứng dụng ML.
Hãy khám phá tùy chọn lưu trữ SageMaker phù hợp cho từng tình huống suy luận trước đó. Bạn có thể tham khảo các chức năng thể dục để đánh giá xem đó có phải là tùy chọn phù hợp cho trường hợp sử dụng nhất định hay không.
Lưu trữ một ứng dụng ML dựa trên một mô hình
Có một số tùy chọn để lưu trữ các ứng dụng ML dựa trên một mô hình bằng cách sử dụng dịch vụ lưu trữ SageMaker tùy thuộc vào kịch bản triển khai.
Điểm cuối mô hình đơn
Điểm cuối mô hình đơn SageMaker cho phép bạn lưu trữ một mô hình trên vùng chứa được lưu trữ trên các phiên bản chuyên dụng để có độ trễ thấp và thông lượng cao. Các điểm cuối này được quản lý hoàn toàn và hỗ trợ tự động thay đổi quy mô. Bạn có thể định cấu hình điểm cuối mô hình đơn làm điểm cuối được cung cấp trong đó bạn chuyển vào cấu hình cơ sở hạ tầng điểm cuối, chẳng hạn như loại phiên bản và số lượng hoặc điểm cuối serverless trong đó SageMaker tự động khởi chạy tài nguyên điện toán và thay đổi tỷ lệ chúng tùy thuộc vào lưu lượng truy cập, loại bỏ nhu cầu để chọn loại phiên bản hoặc quản lý chính sách thay đổi quy mô. Điểm cuối không có máy chủ dành cho các ứng dụng có lưu lượng truy cập không liên tục hoặc không thể đoán trước.
Sơ đồ sau đây cho thấy các kịch bản suy luận điểm cuối mô hình đơn.
Bảng sau đây cung cấp hướng dẫn về cách đánh giá các chức năng phù hợp cho điểm cuối một mô hình được cung cấp. Để đánh giá chức năng hoạt động của điểm cuối không có máy chủ, hãy tham khảo phần điểm cuối không có máy chủ trong bài đăng này.
chức năng tập thể dục | Mô tả |
Phí Tổn | Bạn bị tính phí cho việc sử dụng loại phiên bản mà bạn chọn. Vì điểm cuối luôn chạy và khả dụng nên chi phí có thể tăng lên nhanh chóng. Việc chọn đúng phiên bản cho mô hình của bạn sẽ giúp đảm bảo bạn có phiên bản hiệu quả nhất với chi phí thấp nhất cho các mô hình của mình. Bạn nên tự động thay đổi quy mô để tự động điều chỉnh dung lượng tùy thuộc vào lưu lượng truy cập nhằm duy trì hiệu suất ổn định và có thể dự đoán được với chi phí thấp nhất có thể. |
Độ trễ suy luận | Điểm cuối một mô hình cung cấp suy luận đồng bộ, tương tác, thời gian thực với các yêu cầu về độ trễ mili giây. |
Thông lượng | Thông lượng có thể bị ảnh hưởng bởi nhiều yếu tố, chẳng hạn như kích thước đầu vào của mô hình, kích thước lô, loại phiên bản điểm cuối, v.v. Bạn nên xem xét các chỉ số của CloudWatch đối với các yêu cầu đầu vào và mức sử dụng tài nguyên, đồng thời chọn loại phiên bản phù hợp để đạt được thông lượng tối ưu. SageMaker cung cấp các tính năng để quản lý tài nguyên và tối ưu hóa hiệu suất suy luận khi triển khai các mô hình ML. Bạn có thể tối ưu hóa hiệu suất mô hình bằng Neohoặc sử dụng các phiên bản Inf1 để có thông lượng tốt hơn cho các mô hình được lưu trữ trên SageMaker của bạn bằng cách sử dụng phiên bản GPU cho điểm cuối của bạn. |
Mở rộng cấu hình phức tạp | Tự động chia tỷ lệ được hỗ trợ ngay lập tức. SageMaker khuyên bạn nên chọn một cấu hình mở rộng bằng cách biểu diễn kiểm tra tải. |
mô hình giao thông | Điểm cuối một mô hình lý tưởng cho khối lượng công việc với các mẫu lưu lượng có thể dự đoán được. |
Đồng tổ chức nhiều mô hình
Khi bạn đang xử lý một số lượng lớn mô hình, việc triển khai từng mô hình trên một điểm cuối riêng lẻ với một thùng chứa và phiên bản chuyên dụng có thể dẫn đến chi phí tăng đáng kể. Ngoài ra, việc quản lý quá nhiều mô hình trong quá trình sản xuất cũng trở nên khó khăn, cụ thể là khi bạn không cần gọi tất cả các mô hình cùng một lúc nhưng vẫn cần chúng luôn sẵn sàng. Đồng lưu trữ nhiều mô hình trên cùng một tài nguyên điện toán cơ bản giúp dễ dàng quản lý các triển khai ML trên quy mô lớn và giảm chi phí lưu trữ của bạn thông qua việc tăng mức sử dụng điểm cuối và tài nguyên điện toán cơ bản của nó. SageMaker hỗ trợ các tùy chọn đồng lưu trữ mô hình nâng cao, chẳng hạn như điểm cuối đa mô hình (MME) cho các mô hình đồng nhất và điểm cuối đa vùng chứa (MCE) cho các mô hình không đồng nhất. Các mô hình đồng nhất sử dụng cùng một khung ML trên một vùng chứa dịch vụ dùng chung, trong khi các mô hình không đồng nhất cho phép bạn triển khai nhiều vùng chứa phục vụ sử dụng các mô hình hoặc khung khác nhau trên một điểm cuối duy nhất.
Sơ đồ sau đây hiển thị các tùy chọn đồng lưu trữ mô hình bằng SageMaker.
Điểm cuối đa mô hình của SageMaker
SageMaker MME cho phép bạn lưu trữ nhiều mô hình bằng cách sử dụng vùng chứa phân phối dùng chung trên một điểm cuối duy nhất. Đây là một giải pháp có thể mở rộng và tiết kiệm chi phí để triển khai một số lượng lớn các mô hình phục vụ cho cùng một trường hợp sử dụng, khung hoặc logic suy luận. MME có thể tự động phục vụ các yêu cầu dựa trên mô hình được gọi bởi người gọi. Nó cũng giảm chi phí triển khai vì SageMaker quản lý tải các mô hình trong bộ nhớ và mở rộng chúng dựa trên các mẫu lưu lượng truy cập đến chúng. Tính năng này rất lý tưởng khi bạn có một số lượng lớn các mô hình tương tự mà bạn có thể phân phát thông qua vùng chứa phân phối dùng chung và không cần truy cập tất cả các mô hình cùng một lúc. Điểm cuối đa mô hình cũng cho phép chia sẻ thời gian tài nguyên bộ nhớ trên các mô hình của bạn. Điều này hoạt động tốt nhất khi các mô hình có kích thước và độ trễ gọi tương đối giống nhau, cho phép các MME sử dụng hiệu quả các phiên bản trên tất cả các mô hình. SageMaker MME hỗ trợ lưu trữ cả mô hình được hỗ trợ bởi CPU và GPU. Bằng cách sử dụng các mô hình được hỗ trợ bởi GPU, bạn có thể giảm chi phí triển khai mô hình của mình thông qua việc tăng cường sử dụng điểm cuối và các phiên bản điện toán được tăng tốc cơ bản của nó. Đối với trường hợp sử dụng MME trong thế giới thực, hãy tham khảo Cách chia tỷ lệ suy luận máy học cho các trường hợp sử dụng SaaS nhiều bên thuê.
Bảng sau đây cung cấp hướng dẫn về cách đánh giá các chức năng phù hợp cho MME.
chức năng tập thể dục | Mô tả |
Phí Tổn |
MME cho phép sử dụng bộ chứa phân phát dùng chung để lưu trữ hàng nghìn mô hình trên một điểm cuối duy nhất. Điều này giúp giảm đáng kể chi phí lưu trữ bằng cách cải thiện việc sử dụng điểm cuối so với việc sử dụng các điểm cuối mô hình đơn lẻ. Ví dụ: nếu bạn có 10 mô hình để triển khai bằng phiên bản ml.c5.large, dựa trên giá SageMaker, chi phí để có 10 điểm cuối liên tục của một mô hình là: 10 * 0.102 USD = 1.02 USD mỗi giờ. Trong khi với một MME lưu trữ 10 mô hình, chúng tôi tiết kiệm được chi phí gấp 10 lần: 1 * 0.102 USD = 0.102 USD mỗi giờ. |
Độ trễ suy luận |
Theo mặc định, các mô hình được sử dụng thường xuyên trong bộ nhớ cache của MME trong bộ nhớ và trên đĩa để cung cấp khả năng suy luận có độ trễ thấp. Các mô hình được lưu trong bộ nhớ cache chỉ được tải hoặc xóa khỏi đĩa khi vùng chứa hết bộ nhớ hoặc dung lượng ổ đĩa để chứa mô hình mới được nhắm mục tiêu. MME cho phép tải từng phần mô hình, có nghĩa là các mô hình được tải vào bộ nhớ khi được gọi lần đầu tiên. Điều này tối ưu hóa việc sử dụng bộ nhớ; tuy nhiên, nó khiến thời gian phản hồi tăng vọt trong lần tải đầu tiên, dẫn đến sự cố khởi động nguội. Do đó, các MME cũng rất phù hợp với các tình huống có thể chịu được các hình phạt về độ trễ liên quan đến khởi động nguội không thường xuyên xảy ra khi gọi các mô hình không được sử dụng thường xuyên. Để đáp ứng các mục tiêu về độ trễ và thông lượng của các ứng dụng ML, các phiên bản GPU được ưu tiên hơn các phiên bản CPU (do GPU cung cấp sức mạnh tính toán). Với hỗ trợ MME cho GPU, bạn có thể triển khai hàng nghìn mô hình deep learning phía sau một điểm cuối SageMaker. MME có thể chạy nhiều mô hình trên lõi GPU, chia sẻ các phiên bản GPU đằng sau một điểm cuối trên nhiều mô hình và tự động tải và hủy tải các mô hình dựa trên lưu lượng truy cập đến. Với điều này, bạn có thể tiết kiệm đáng kể chi phí và đạt được hiệu suất giá tốt nhất. Nếu trường hợp sử dụng của bạn yêu cầu số giao dịch mỗi giây (TPS) hoặc độ trễ cao hơn đáng kể, chúng tôi khuyên bạn nên lưu trữ các mô hình trên các điểm cuối chuyên dụng. |
Thông lượng |
Giá trị lý tưởng của thông lượng suy luận MME phụ thuộc vào các yếu tố như kiểu máy, kích thước tải trọng và loại phiên bản điểm cuối. Dung lượng bộ nhớ phiên bản cao hơn cho phép bạn tải nhiều mô hình hơn và sẵn sàng phục vụ các yêu cầu suy luận. Bạn không cần mất thời gian tải mô hình. Số lượng vCPU cao hơn cho phép bạn gọi đồng thời nhiều mô hình độc đáo hơn. MME tự động tải và hủy tải mô hình đến và từ bộ nhớ phiên bản, điều này có thể ảnh hưởng đến hiệu suất I/O. SageMaker MME với GPU hoạt động bằng cách sử dụng Máy chủ suy luận NVIDIA Triton, là một phần mềm phục vụ suy luận mã nguồn mở giúp đơn giản hóa quy trình phục vụ suy luận và cung cấp hiệu suất suy luận cao. SageMaker tải mô hình vào bộ nhớ của bộ chứa NVIDIA Triton trên phiên bản được tăng tốc GPU và phục vụ yêu cầu suy luận. Lõi GPU được chia sẻ bởi tất cả các kiểu máy trong một phiên bản. Nếu mô hình đã được tải trong bộ nhớ vùng chứa, các yêu cầu tiếp theo sẽ được phục vụ nhanh hơn vì SageMaker không cần tải xuống và tải lại. Một thử nghiệm và phân tích hiệu suất phù hợp được khuyến nghị trong các triển khai sản xuất thành công. SageMaker cung cấp số liệu CloudWatch cho các điểm cuối đa mô hình để bạn có thể xác định mức sử dụng điểm cuối và tỷ lệ đạt bộ nhớ đệm để giúp tối ưu hóa điểm cuối của mình. |
Mở rộng cấu hình phức tạp | Các điểm cuối đa mô hình của SageMaker hỗ trợ đầy đủ tính năng tự động thay đổi quy mô, quản lý các bản sao của mô hình để đảm bảo quy mô mô hình dựa trên các mẫu lưu lượng truy cập. Tuy nhiên, bạn nên thử nghiệm tải phù hợp để xác định kích thước tối ưu của phiên bản nhằm tự động thay đổi quy mô điểm cuối. Việc định cỡ phù hợp cho nhóm MME là rất quan trọng để tránh dỡ quá nhiều mô hình. Việc tải hàng trăm mô hình trên một vài phiên bản lớn hơn có thể dẫn đến điều tiết trong một số trường hợp và sử dụng nhiều phiên bản nhỏ hơn có thể được ưu tiên hơn. Để tận dụng tính năng chia tỷ lệ mô hình tự động trong SageMaker, hãy đảm bảo bạn có ví dụ tự động mở rộng thiết lập để cung cấp dung lượng phiên bản bổ sung. Thiết lập chính sách thay đổi quy mô cấp điểm cuối của bạn với thông số tùy chỉnh hoặc số lần gọi mỗi phút (được đề xuất) để thêm nhiều phiên bản hơn vào nhóm điểm cuối. Tỷ lệ yêu cầu được sử dụng để kích hoạt sự kiện quy mô tự động dựa trên tập hợp dự đoán tổng hợp trên toàn bộ mô hình do điểm cuối cung cấp. |
mô hình giao thông | MME lý tưởng khi bạn có một số lượng lớn các mô hình có kích thước tương tự mà bạn có thể phân phát thông qua vùng chứa phân phối dùng chung và không cần truy cập tất cả các mô hình cùng một lúc. |
Điểm cuối đa vùng chứa SageMaker
SageMaker MCE hỗ trợ triển khai tối đa 15 vùng chứa sử dụng các mô hình hoặc khung khác nhau trên một điểm cuối duy nhất và gọi chúng một cách độc lập hoặc theo trình tự để suy luận có độ trễ thấp và tiết kiệm chi phí. Các mô hình có thể hoàn toàn không đồng nhất, với ngăn xếp phục vụ độc lập của riêng chúng. Lưu trữ an toàn nhiều mô hình từ các khung khác nhau trên một phiên bản duy nhất có thể giúp bạn tiết kiệm tới 90% chi phí.
Các mẫu gọi MCE như sau:
- Đường ống suy luận – Các bộ chứa trong MME có thể được gọi theo trình tự tuyến tính, còn được gọi là đường ống suy luận nối tiếp. Chúng thường được sử dụng để tách tiền xử lý, suy luận mô hình và xử lý hậu kỳ thành các thùng chứa độc lập. Đầu ra từ vùng chứa hiện tại được chuyển làm đầu vào cho vùng chứa tiếp theo. Chúng được biểu diễn dưới dạng một mô hình đường ống duy nhất trong SageMaker. Một quy trình suy luận có thể được triển khai dưới dạng MME, trong đó một trong các bộ chứa trong quy trình có thể tự động phục vụ các yêu cầu dựa trên mô hình được gọi.
- Lời kêu gọi trực tiếp - Với gọi trực tiếp, một yêu cầu có thể được gửi đến một vùng chứa suy luận cụ thể được lưu trữ trên MCE.
Bảng sau đây cung cấp hướng dẫn về cách đánh giá các chức năng phù hợp cho MCE.
chức năng tập thể dục | Mô tả |
Phí Tổn | MCE cho phép bạn chạy tối đa 15 bộ chứa ML khác nhau trên một điểm cuối duy nhất và gọi chúng một cách độc lập, nhờ đó tiết kiệm chi phí. Tùy chọn này lý tưởng khi bạn có nhiều mô hình chạy trên các ngăn xếp phân phối khác nhau có nhu cầu tài nguyên tương tự và khi các mô hình riêng lẻ không có đủ lưu lượng truy cập để sử dụng hết công suất của các phiên bản điểm cuối. Do đó, MCE tiết kiệm chi phí hơn so với điểm cuối một mô hình. MCE cung cấp phản hồi suy luận đồng bộ, nghĩa là điểm cuối luôn khả dụng và bạn trả tiền cho thời gian hoạt động của phiên bản. Chi phí có thể tăng lên tùy thuộc vào số lượng và loại phiên bản. |
Độ trễ suy luận | MCE lý tưởng để chạy các ứng dụng ML với các thuật toán và khung ML khác nhau cho từng mô hình được truy cập không thường xuyên nhưng vẫn yêu cầu suy luận có độ trễ thấp. Các mô hình luôn có sẵn để suy luận với độ trễ thấp và không có vấn đề khởi động nguội. |
Thông lượng | MCE được giới hạn ở tối đa 15 vùng chứa trên điểm cuối nhiều vùng chứa và suy luận GPU không được hỗ trợ do tranh chấp tài nguyên. Đối với các điểm cuối nhiều vùng chứa sử dụng chế độ gọi trực tiếp, SageMaker không chỉ cung cấp các chỉ số ở cấp phiên bản giống như với các điểm cuối phổ biến khác mà còn hỗ trợ các chỉ số trên mỗi vùng chứa. Phương pháp hay nhất là xem xét các chỉ số của CloudWatch đối với các yêu cầu đầu vào và mức sử dụng tài nguyên, đồng thời chọn loại phiên bản phù hợp để đạt được thông lượng tối ưu. |
Mở rộng cấu hình phức tạp | MCE hỗ trợ tự động mở rộng quy mô. Tuy nhiên, để định cấu hình thay đổi quy mô tự động, mô hình trong mỗi vùng chứa nên thể hiện mức sử dụng CPU và độ trễ tương tự trên mỗi yêu cầu suy luận. Bạn nên làm điều này vì nếu lưu lượng truy cập đến điểm cuối nhiều vùng chứa chuyển từ mô hình sử dụng CPU thấp sang mô hình sử dụng CPU cao, nhưng tổng khối lượng cuộc gọi vẫn giữ nguyên, điểm cuối sẽ không mở rộng quy mô và có thể không có đủ phiên bản để xử lý tất cả các yêu cầu đối với mô hình sử dụng CPU cao. |
mô hình giao thông | MCE lý tưởng cho các khối lượng công việc có mẫu lưu lượng truy cập liên tục hoặc thường xuyên, để lưu trữ các mô hình trên các khung khác nhau (chẳng hạn như TensorFlow, PyTorch hoặc Sklearn) có thể không có đủ lưu lượng truy cập để bão hòa toàn bộ công suất của phiên bản điểm cuối. |
Lưu trữ một ứng dụng ML dựa trên nhiều mô hình
Nhiều ứng dụng kinh doanh cần sử dụng nhiều mô hình ML để phục vụ một yêu cầu dự đoán duy nhất cho người tiêu dùng của họ. Ví dụ: một công ty bán lẻ muốn cung cấp đề xuất cho người dùng của mình. Ứng dụng ML trong trường hợp sử dụng này có thể muốn sử dụng các mô hình tùy chỉnh khác nhau để đề xuất các danh mục sản phẩm khác nhau. Nếu công ty muốn thêm cá nhân hóa vào các đề xuất bằng cách sử dụng thông tin người dùng cá nhân, số lượng mô hình tùy chỉnh sẽ tăng thêm. Lưu trữ từng mô hình tùy chỉnh trên một phiên bản điện toán riêng biệt không chỉ tốn kém mà còn dẫn đến việc sử dụng không đúng mức tài nguyên lưu trữ nếu không phải tất cả các mô hình đều được sử dụng thường xuyên. SageMaker cung cấp các tùy chọn lưu trữ hiệu quả cho các ứng dụng ML dựa trên nhiều mô hình.
Sơ đồ sau đây hiển thị các tùy chọn lưu trữ đa mô hình cho một điểm cuối duy nhất bằng SageMaker.
Đường ống suy luận nối tiếp
Một quy trình suy luận là một mô hình SageMaker bao gồm một chuỗi tuyến tính gồm 2–15 vùng chứa xử lý các yêu cầu suy luận trên dữ liệu. Bạn sử dụng một quy trình suy luận để xác định và triển khai bất kỳ sự kết hợp nào giữa các thuật toán tích hợp SageMaker được đào tạo trước và các thuật toán tùy chỉnh của riêng bạn được đóng gói trong bộ chứa Docker. Bạn có thể sử dụng một quy trình suy luận để kết hợp các tác vụ khoa học dữ liệu tiền xử lý, dự đoán và hậu xử lý. Đầu ra từ một vùng chứa được chuyển thành đầu vào cho vùng chứa tiếp theo. Khi xác định vùng chứa cho mô hình đường ống, bạn cũng chỉ định thứ tự chạy vùng chứa. Chúng được biểu diễn dưới dạng một mô hình đường ống duy nhất trong SageMaker. Đường ống suy luận có thể được triển khai dưới dạng MME, trong đó một trong các vùng chứa trong đường ống có thể tự động phục vụ các yêu cầu dựa trên mô hình được gọi. Bạn cũng có thể chạy một biến đổi hàng loạt công việc với một đường ống suy luận. Đường ống suy luận được quản lý đầy đủ.
Bảng sau đây cung cấp hướng dẫn về cách đánh giá các chức năng phù hợp cho lưu trữ mô hình ML bằng cách sử dụng đường dẫn suy luận nối tiếp.
chức năng tập thể dục | Mô tả |
Phí Tổn | Đường dẫn suy luận nối tiếp cho phép bạn chạy tối đa 15 vùng chứa ML khác nhau trên một điểm cuối duy nhất, giúp tiết kiệm chi phí lưu trữ các vùng chứa suy luận. Không có chi phí bổ sung cho việc sử dụng tính năng này. Bạn chỉ trả tiền cho các phiên bản chạy trên một điểm cuối. Chi phí có thể tăng lên tùy thuộc vào số lượng và loại phiên bản. |
Độ trễ suy luận | Khi một ứng dụng ML được triển khai dưới dạng một đường dẫn suy luận, dữ liệu giữa các mô hình khác nhau sẽ không rời khỏi vùng chứa. Quá trình xử lý tính năng và suy luận chạy với độ trễ thấp vì các vùng chứa được đặt cùng vị trí trên cùng một phiên bản EC2. |
Thông lượng | Trong mô hình đường dẫn suy luận, SageMaker xử lý các yêu cầu dưới dạng một chuỗi các yêu cầu HTTP. Vùng chứa đầu tiên trong đường ống xử lý yêu cầu ban đầu, sau đó phản hồi trung gian được gửi dưới dạng yêu cầu đến vùng chứa thứ hai, v.v. cho từng vùng chứa trong đường ống. SageMaker trả về phản hồi cuối cùng cho khách hàng. Thông lượng tùy thuộc vào các yếu tố như kiểu máy, kích thước đầu vào của mô hình, kích thước lô và loại phiên bản điểm cuối. Phương pháp hay nhất là xem xét các chỉ số của CloudWatch cho các yêu cầu đầu vào và mức sử dụng tài nguyên, đồng thời chọn loại phiên bản phù hợp để đạt được thông lượng tối ưu. |
Mở rộng cấu hình phức tạp | Đường ống suy luận nối tiếp hỗ trợ tự động mở rộng quy mô. Tuy nhiên, để định cấu hình thay đổi quy mô tự động, mô hình trong mỗi vùng chứa nên thể hiện mức sử dụng CPU và độ trễ tương tự trên mỗi yêu cầu suy luận. Bạn nên làm điều này vì nếu lưu lượng truy cập đến điểm cuối nhiều vùng chứa chuyển từ mô hình sử dụng CPU thấp sang mô hình sử dụng CPU cao, nhưng tổng khối lượng cuộc gọi vẫn giữ nguyên, điểm cuối sẽ không mở rộng quy mô và có thể không có đủ phiên bản để xử lý tất cả các yêu cầu đối với mô hình sử dụng CPU cao. |
mô hình giao thông |
Đường ống suy luận nối tiếp lý tưởng cho các mẫu lưu lượng có thể dự đoán được với các mô hình chạy tuần tự trên cùng một điểm cuối. |
Triển khai cụm mô hình (Triton DAG):
SageMaker cung cấp tích hợp với Máy chủ suy luận NVIDIA Triton thông qua Bộ chứa máy chủ suy luận Triton. Các vùng chứa này bao gồm Máy chủ suy luận NVIDIA Triton, hỗ trợ cho các khung ML phổ biến và các biến môi trường hữu ích cho phép bạn tối ưu hóa hiệu suất trên SageMaker. Với hình ảnh bộ chứa NVIDIA Triton, bạn có thể dễ dàng phục vụ các mô hình ML và hưởng lợi từ việc tối ưu hóa hiệu suất, tạo khối động và hỗ trợ đa khung do NVIDIA Triton cung cấp. Triton giúp tối đa hóa việc sử dụng GPU và CPU, tiếp tục giảm chi phí suy luận.
Trong các trường hợp sử dụng dành cho doanh nghiệp khi các ứng dụng ML sử dụng một số mô hình để phục vụ yêu cầu dự đoán, nếu mỗi mô hình sử dụng một khung khác hoặc được lưu trữ trên một phiên bản riêng biệt, điều đó có thể dẫn đến tăng khối lượng công việc và chi phí cũng như tăng độ trễ tổng thể. SageMaker NVIDIA Triton Inference Server hỗ trợ triển khai các mô hình từ tất cả các khung chính, chẳng hạn như TensorFlow GraphDef, TensorFlow SavingModel, ONNX, PyTorch TorchScript, TensorRT và các định dạng mô hình Python/C++, v.v. Tập hợp mô hình Triton đại diện cho một đường ống của một hoặc nhiều mô hình hoặc logic tiền xử lý và hậu xử lý cũng như kết nối của các tenxơ đầu vào và đầu ra giữa chúng. Một yêu cầu suy luận duy nhất cho một tập hợp sẽ kích hoạt hoạt động của toàn bộ đường ống. Triton cũng có nhiều thuật toán lập lịch và theo lô tích hợp kết hợp các yêu cầu suy luận riêng lẻ để cải thiện thông lượng suy luận. Các quyết định lập lịch và theo lô này là minh bạch đối với khách hàng yêu cầu suy luận. Các mô hình này có thể chạy trên CPU hoặc GPU để có tính linh hoạt tối đa và hỗ trợ các yêu cầu điện toán không đồng nhất.
Lưu trữ nhiều mô hình được GPU hỗ trợ trên các điểm cuối đa mô hình được hỗ trợ thông qua Máy chủ suy luận SageMaker Triton. Máy chủ suy luận NVIDIA Triton đã được mở rộng để thực hiện một Hợp đồng API MME, để tích hợp với các MME. Bạn có thể sử dụng Máy chủ suy luận NVIDIA Triton, vốn tạo cấu hình kho lưu trữ mô hình cho các chương trình phụ trợ khung khác nhau, để triển khai MME với tính năng tự động thay đổi quy mô. Tính năng này cho phép bạn mở rộng hàng trăm mô hình siêu cá nhân hóa được tinh chỉnh để phục vụ cho trải nghiệm độc đáo của người dùng cuối trong các ứng dụng AI. Bạn cũng có thể sử dụng tính năng này để đạt được hiệu suất giá cần thiết cho ứng dụng suy luận của mình bằng GPU phân đoạn. Để tìm hiểu thêm, hãy tham khảo Chạy nhiều mô hình học sâu trên GPU với các điểm cuối đa mô hình của Amazon SageMaker.
Bảng sau đây cung cấp hướng dẫn về cách đánh giá các chức năng phù hợp cho lưu trữ mô hình ML bằng cách sử dụng MME có hỗ trợ GPU trên bộ chứa suy luận Triton. Đối với các đánh giá chức năng hoạt động của điểm cuối mô hình đơn và điểm cuối không có máy chủ, hãy tham khảo các phần trước trong bài đăng này.
chức năng tập thể dục | Mô tả |
Phí Tổn | SageMaker MME có hỗ trợ GPU sử dụng Triton Inference Server cung cấp một cách có thể mở rộng và tiết kiệm chi phí để triển khai một số lượng lớn các mô hình deep learning đằng sau một điểm cuối SageMaker. Với MME, nhiều mô hình chia sẻ phiên bản GPU phía sau một điểm cuối. Điều này cho phép bạn giảm chi phí lưu trữ nhiều mô hình và tái sử dụng cơ sở hạ tầng trên tất cả các mô hình. Bạn trả tiền cho thời gian hoạt động của phiên bản. |
Độ trễ suy luận |
SageMaker với Máy chủ suy luận Triton được xây dựng có mục đích nhằm tối đa hóa thông lượng và sử dụng phần cứng với độ trễ suy luận cực thấp (một phần nghìn giây). Nó có nhiều khung ML được hỗ trợ (bao gồm TensorFlow, PyTorch, ONNX, XGBoost và NVIDIA TensorRT) và các phụ trợ cơ sở hạ tầng, bao gồm GPU NVIDIA, CPU và Suy luận AWS. Với hỗ trợ MME cho GPU sử dụng Máy chủ suy luận SageMaker Triton, bạn có thể triển khai hàng nghìn mô hình deep learning đằng sau một điểm cuối SageMaker. SageMaker tải mô hình vào bộ nhớ của bộ chứa NVIDIA Triton trên phiên bản được tăng tốc GPU và phục vụ yêu cầu suy luận. Lõi GPU được chia sẻ bởi tất cả các kiểu máy trong một phiên bản. Nếu mô hình đã được tải trong bộ nhớ vùng chứa, các yêu cầu tiếp theo sẽ được phục vụ nhanh hơn vì SageMaker không cần tải xuống và tải lại. |
Thông lượng |
MME cung cấp các khả năng để chạy đồng thời nhiều mô hình deep learning hoặc ML trên GPU với Triton Inference Server. Điều này cho phép bạn dễ dàng sử dụng phân phát suy luận hiệu suất cao, đa khung NVIDIA Triton với việc triển khai mô hình được quản lý hoàn toàn của SageMaker. Triton hỗ trợ tất cả suy luận dựa trên NVIDIA GPU-, x86-, Arm® CPU- và AWS Inferentia. Nó cung cấp khả năng tạo khối động, chạy đồng thời, cấu hình mô hình tối ưu, tập hợp mô hình và truyền phát âm thanh và video đầu vào để tối đa hóa thông lượng và mức sử dụng. Các yếu tố khác như mạng và kích thước tải trọng có thể đóng một vai trò tối thiểu trong chi phí liên quan đến suy luận. |
Mở rộng cấu hình phức tạp |
MME có thể mở rộng quy mô theo chiều ngang bằng cách sử dụng chính sách tự động thay đổi quy mô và cung cấp các phiên bản điện toán GPU bổ sung dựa trên các chỉ số như Với máy chủ suy luận Triton, bạn có thể dễ dàng xây dựng vùng chứa tùy chỉnh bao gồm mô hình của mình bằng Triton và đưa mô hình đó đến SageMaker. SageMaker Inference sẽ xử lý các yêu cầu và tự động thay đổi quy mô vùng chứa khi mức sử dụng tăng lên, giúp việc triển khai mô hình với Triton trên AWS trở nên dễ dàng hơn. |
mô hình giao thông |
MME lý tưởng cho các mẫu lưu lượng có thể dự đoán được với các mô hình chạy dưới dạng DAG trên cùng một điểm cuối. SageMaker chăm sóc định hình lưu lượng truy cập đến điểm cuối MME và duy trì các bản sao mô hình tối ưu trên các phiên bản GPU để có hiệu suất giá tốt nhất. Nó tiếp tục định tuyến lưu lượng truy cập đến phiên bản mà mô hình được tải. Nếu tài nguyên cá thể đạt đến dung lượng do mức sử dụng cao, SageMaker sẽ dỡ các mô hình ít được sử dụng nhất khỏi vùng chứa để giải phóng tài nguyên nhằm tải các mô hình được sử dụng thường xuyên hơn. |
Các phương pháp hay nhất
Hãy xem xét các phương pháp hay nhất sau đây:
- Độ gắn kết cao và khớp nối thấp giữa các mô hình – Lưu trữ các mô hình trong cùng một vùng chứa có tính liên kết cao (thúc đẩy chức năng của một doanh nghiệp) và đóng gói chúng lại với nhau để dễ dàng nâng cấp và dễ quản lý. Đồng thời, tách các mô hình đó ra khỏi nhau (lưu trữ chúng trong các vùng chứa khác nhau) để bạn có thể dễ dàng nâng cấp một mô hình mà không ảnh hưởng đến các mô hình khác. Lưu trữ nhiều mô hình sử dụng các vùng chứa khác nhau phía sau một điểm cuối và sau đó gọi một cách độc lập hoặc thêm logic tiền xử lý và hậu xử lý mô hình dưới dạng đường dẫn suy luận nối tiếp.
- Độ trễ suy luận – Nhóm các mô hình được điều khiển bởi chức năng của một doanh nghiệp và lưu trữ chúng trong một vùng chứa duy nhất để giảm thiểu số bước nhảy và do đó giảm thiểu độ trễ tổng thể. Có những lưu ý khác, chẳng hạn như nếu các mô hình được nhóm sử dụng nhiều khung; bạn cũng có thể chọn lưu trữ trong nhiều vùng chứa nhưng chạy trên cùng một máy chủ để giảm độ trễ và giảm thiểu chi phí.
- Nhóm các mô hình ML một cách hợp lý với tính gắn kết cao – Nhóm logic có thể bao gồm các mô hình đồng nhất (ví dụ: tất cả các mô hình XGBoost) hoặc không đồng nhất (ví dụ: một vài XGBoost và một vài BERT). Nó có thể bao gồm các mô hình được chia sẻ trên nhiều chức năng kinh doanh hoặc có thể cụ thể để đáp ứng chỉ một chức năng kinh doanh.
- mô hình chia sẻ – Nếu nhóm logic bao gồm các mô hình dùng chung, thì việc dễ dàng nâng cấp các mô hình và độ trễ sẽ đóng vai trò chính trong việc thiết kế các điểm cuối SageMaker. Ví dụ: nếu ưu tiên độ trễ, thì tốt hơn là đặt tất cả các mô hình vào một vùng chứa phía sau một điểm cuối SageMaker duy nhất để tránh nhiều bước nhảy. Nhược điểm là nếu bất kỳ mô hình nào cần được nâng cấp, điều đó sẽ dẫn đến việc nâng cấp tất cả các điểm cuối SageMaker có liên quan đang lưu trữ mô hình này.
- Mô hình không chia sẻ – Nếu nhóm logic chỉ bao gồm các mô hình cụ thể về tính năng kinh doanh và không được chia sẻ với các nhóm khác, thì độ phức tạp của gói và thứ nguyên độ trễ sẽ trở thành chìa khóa để đạt được. Bạn nên lưu trữ các mô hình này trong một vùng chứa phía sau một điểm cuối SageMaker duy nhất.
- Sử dụng hiệu quả phần cứng (CPU, GPU) – Nhóm các mô hình dựa trên CPU lại với nhau và lưu trữ chúng trên cùng một máy chủ để bạn có thể sử dụng CPU một cách hiệu quả. Tương tự, hãy nhóm các mô hình dựa trên GPU lại với nhau để bạn có thể sử dụng và chia tỷ lệ chúng một cách hiệu quả. Có những khối lượng công việc kết hợp yêu cầu cả CPU và GPU trên cùng một máy chủ. Việc lưu trữ các mô hình chỉ có CPU và chỉ có GPU trên cùng một máy chủ phải được thúc đẩy bởi các yêu cầu về độ trễ của ứng dụng và độ gắn kết cao. Ngoài ra, chi phí, khả năng mở rộng quy mô và bán kính vụ nổ khi va chạm trong trường hợp hỏng hóc là những yếu tố chính cần xem xét.
- Chức năng thể dục – Sử dụng các chức năng thể dục làm hướng dẫn để chọn tùy chọn lưu trữ ML.
Kết luận
Khi nói đến dịch vụ lưu trữ ML, không có cách tiếp cận nào phù hợp với tất cả. Các học viên ML cần chọn mẫu thiết kế phù hợp để giải quyết các thách thức về lưu trữ ML của họ. Đánh giá các chức năng phù hợp cung cấp hướng dẫn theo quy định về việc chọn tùy chọn lưu trữ ML phù hợp.
Để biết thêm chi tiết về từng tùy chọn lưu trữ, hãy tham khảo các bài đăng sau trong loạt bài này:
Giới thiệu về tác giả
Dhawal Patel là một Kiến trúc sư chính về Học máy tại AWS. Ông đã làm việc với các tổ chức khác nhau, từ các doanh nghiệp lớn đến các công ty khởi nghiệp quy mô trung bình về các vấn đề liên quan đến máy tính phân tán và Trí tuệ nhân tạo. Ông tập trung vào Học sâu bao gồm các lĩnh vực NLP và Thị giác máy tính. Anh ấy giúp khách hàng đạt được khả năng suy luận mô hình hiệu suất cao trên SageMaker.
Deepali Rajale là Chuyên gia quản lý tài khoản kỹ thuật AI/ML tại Amazon Web Services. Cô làm việc với các khách hàng doanh nghiệp để cung cấp hướng dẫn kỹ thuật về cách triển khai các giải pháp máy học với các phương pháp hay nhất. Khi rảnh rỗi, cô thích đi bộ đường dài, xem phim và đi chơi với gia đình và bạn bè.
Saurabh Trikande là Giám đốc Sản phẩm Cấp cao của Amazon SageMaker Inference. Anh ấy đam mê làm việc với khách hàng và được thúc đẩy bởi mục tiêu dân chủ hóa việc học máy. Ông tập trung vào những thách thức cốt lõi liên quan đến việc triển khai các ứng dụng ML phức tạp, mô hình ML nhiều người thuê, tối ưu hóa chi phí và làm cho việc triển khai các mô hình học sâu dễ tiếp cận hơn. Khi rảnh rỗi, Saurabh thích đi bộ đường dài, tìm hiểu về các công nghệ tiên tiến, theo dõi TechCrunch và dành thời gian cho gia đình.
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- Platoblockchain. Web3 Metaverse Intelligence. Khuếch đại kiến thức. Truy cập Tại đây.
- nguồn: https://aws.amazon.com/blogs/machine-learning/model-hosting-patterns-in-amazon-sagemaker-part-1-common-design-patterns-for-building-ml-applications-on-amazon-sagemaker/
- 1
- 10
- 100
- 11
- 39
- 7
- 70
- a
- có khả năng
- Có khả năng
- Giới thiệu
- tăng tốc
- truy cập
- truy cập
- có thể truy cập
- chứa
- Tài khoản
- chính xác
- Đạt được
- đạt được
- ngang qua
- Hoạt động
- tích cực
- Ngoài ra
- thêm vào
- Ngoài ra
- địa chỉ
- tiến
- tiên tiến
- Lợi thế
- Quảng cáo
- ảnh hưởng đến
- Sau
- tập hợp
- Bộ tổng hợp
- tích cực
- thỏa thuận
- AI
- AI / ML
- báo động
- thuật toán
- Tất cả
- Cho phép
- cho phép
- Đã
- luôn luôn
- đàn bà gan dạ
- Amazon EC2
- Amazon SageMaker
- Amazon Web Services
- số lượng
- phân tích
- phân tích
- và
- và cơ sở hạ tầng
- hàng năm
- Một
- Apache
- api
- Apple
- Các Ứng Dụng
- các ứng dụng
- phương pháp tiếp cận
- thích hợp
- ứng dụng
- kiến trúc
- ARM
- nhân tạo
- trí tuệ nhân tạo
- các khía cạnh
- thẩm định, lượng định, đánh giá
- liên kết
- thuộc tính
- âm thanh
- kiểm toán
- tự động
- Tự động
- Tự động
- tự động
- sẵn có
- có sẵn
- Trung bình cộng
- AWS
- trở lại
- được hậu thuẫn
- Ngân hàng
- cơ sở
- dựa
- bởi vì
- trở nên
- trở thành
- trước
- sau
- được
- hưởng lợi
- BEST
- thực hành tốt nhất
- Hơn
- giữa
- y sinh
- Chặn
- Mượn
- ranh giới
- Hộp
- vi phạm
- Nghỉ giải lao
- mang lại
- Mang lại
- Ngân sách
- xây dựng
- Xây dựng
- xây dựng
- được xây dựng trong
- kinh doanh
- Ứng dụng kinh doanh
- Quy trình kinh doanh
- các doanh nghiệp
- Bộ nhớ cache
- tính
- cuộc gọi
- gọi là
- Caller
- ứng cử viên
- khả năng
- Sức chứa
- mà
- trường hợp
- trường hợp
- đố
- nguyên nhân
- nhất định
- CHỨNG NHẬN
- thách thức
- thay đổi
- Những thay đổi
- đặc điểm
- tính phí
- chatbot
- kiểm tra
- Chip
- sự lựa chọn
- lựa chọn
- Chọn
- lựa chọn
- tốt nghiệp lớp XNUMX
- phân loại
- Phân loại
- khách hàng
- khách hàng
- Đóng
- đám mây
- cụm
- mã
- đặt ra
- đồng nghiệp
- thu thập
- chống lại
- kết hợp
- kết hợp
- kết hợp
- Chung
- Các công ty
- công ty
- so
- hoàn thành
- hoàn toàn
- phức tạp
- phức tạp
- tuân thủ
- các thành phần
- sáng tác
- thỏa hiệp
- khả năng tính toán
- Tính
- máy tính
- Tầm nhìn máy tính
- máy tính
- khái niệm
- Liên quan
- đồng thời
- Cấu hình
- liên quan
- thích hợp
- tiêu thụ
- Người tiêu dùng
- Container
- Container
- chứa
- tiếp tục
- liên tiếp
- liên tục
- điều khiển
- Trung tâm
- Tương ứng
- Phí Tổn
- tiết kiệm chi phí
- chi phí-hiệu quả
- Chi phí
- có thể
- tạo
- tạo ra
- quan trọng
- quan trọng
- Current
- khách hàng
- khách hàng
- khách hàng
- DAG
- dữ liệu
- xử lý dữ liệu
- khoa học dữ liệu
- nhà khoa học dữ liệu
- Cơ sở dữ liệu
- bộ dữ liệu
- ngày
- xử lý
- quyết định
- dành riêng
- sâu
- học kĩ càng
- Mặc định
- xác định
- cung cấp
- Nhu cầu
- nhu cầu
- Dân chủ hóa
- Tùy
- phụ thuộc
- triển khai
- triển khai
- triển khai
- triển khai
- triển khai
- Thiết kế
- mẫu thiết kế
- thiết kế
- chi tiết
- chi tiết
- Phát hiện
- Xác định
- Nhà phát triển
- Phát triển
- sơ đồ
- khác nhau
- khó khăn
- kích thước
- trực tiếp
- khác biệt
- phân phối
- phân phối máy tính
- khác nhau
- phu bến tàu
- tài liệu
- Không
- lĩnh vực
- dont
- xuống
- tải về
- nhược điểm
- điều khiển
- hủy bỏ
- Rơi
- suốt trong
- năng động
- mỗi
- Sớm hơn
- dễ dàng hơn
- dễ dàng
- Hiệu quả
- hiệu quả
- hiệu quả
- hiệu quả
- hiệu quả
- hiệu quả
- nỗ lực
- hay
- loại bỏ
- cho phép
- cho phép
- mã hóa
- Cuối cùng đến cuối
- Điểm cuối
- Kỹ Sư
- Kỹ sư
- đủ
- đảm bảo
- đảm bảo
- Doanh nghiệp
- doanh nghiệp
- Toàn bộ
- Môi trường
- lôi
- lỗi
- đặc biệt
- đánh giá
- đánh giá
- Ngay cả
- Sự kiện
- tất cả mọi thứ
- sự tiến hóa
- ví dụ
- ví dụ
- Sàn giao dịch
- triển lãm
- mong đợi
- dự kiến
- kinh nghiệm
- Kinh nghiệm
- khám phá
- biểu thức
- ngoài
- thêm
- Đối mặt
- các yếu tố
- Không
- khá
- gia đình
- gia đình
- nhanh hơn
- Đặc tính
- Tính năng
- cho ăn
- vài
- cuối cùng
- Tên
- lần đầu tiên
- phòng tập thể dục
- VÒI
- Linh hoạt
- dòng chảy
- dao động
- tập trung
- tiếp theo
- sau
- khúc sông cạn
- hình thức
- các hình thức
- phân số
- Khung
- khung
- gian lận
- phát hiện gian lận
- Miễn phí
- tần số
- thường xuyên
- bạn bè
- từ
- Trái cây
- Full
- đầy đủ
- chức năng
- chức năng
- chức năng
- chức năng
- xa hơn
- GDPR
- Tổng Quát
- tạo ra
- tạo ra
- được
- Cho
- được
- mục tiêu
- Các mục tiêu
- tốt
- GPU
- GPU
- đồ thị
- tuyệt vời
- lớn hơn
- rất nhiều
- Nhóm
- Các nhóm
- Phát triển
- hướng dẫn
- xử lý
- Xử lý
- tiện dụng
- phần cứng
- có
- cho sức khoẻ
- chăm sóc sức khỏe
- giúp đỡ
- giúp đỡ
- giúp
- tại đây
- Cao
- hiệu suất cao
- độ phân giải cao
- cao hơn
- Đánh
- Ngang
- chủ nhà
- tổ chức
- lưu trữ
- chi phí lưu trữ
- dịch vụ lưu trữ
- Độ đáng tin của
- Tuy nhiên
- HTML
- HTTPS
- Hàng trăm
- Hỗn hợp
- lý tưởng
- Bản sắc
- Nhàn rỗi
- hình ảnh
- Phân loại hình ảnh
- hình ảnh
- bất biến
- Va chạm
- tác động
- Tác động
- thực hiện
- thực hiện
- thực hiện
- quan trọng
- nâng cao
- cải thiện
- in
- bao gồm
- bao gồm
- Bao gồm
- Incoming
- Tăng lên
- tăng
- Tăng
- tăng
- độc lập
- độc lập
- hệ thống riêng biệt,
- thông tin
- Cơ sở hạ tầng
- ban đầu
- sáng tạo
- công nghệ tiên tiến
- đầu vào
- Cài đặt
- ví dụ
- thay vì
- tích hợp
- hội nhập
- Sự thông minh
- tương tác
- liên quan
- ISO
- cô lập
- IT
- Việc làm
- việc làm
- Key
- phím
- Biết
- nổi tiếng
- lớn
- lớn hơn
- Độ trễ
- phóng
- ra mắt
- ra mắt
- dẫn
- hàng đầu
- Dẫn
- LEARN
- học tập
- Rời bỏ
- Led
- Cấp
- thư viện
- nâng
- Hạn chế
- giới hạn
- Danh sách
- sống
- tải
- tải
- tải
- địa điểm thư viện nào
- dài
- còn
- Xem
- mất
- Rất nhiều
- Thấp
- máy
- học máy
- thực hiện
- Chủ yếu
- duy trì
- duy trì
- chính
- làm cho
- LÀM CHO
- Làm
- quản lý
- quản lý
- quản lý
- giám đốc
- quản lý
- quản lý
- nhiều
- Marketing
- toán học
- chất
- Tối đa hóa
- tối đa
- có nghĩa
- Gặp gỡ
- Bộ nhớ
- phương pháp
- phương pháp
- số liệu
- Metrics
- Might
- tối thiểu
- tối thiểu
- Phút
- Trộn
- ML
- Chế độ
- kiểu mẫu
- mô hình
- Màn Hình
- giám sát
- tháng
- tháng
- chi tiết
- hầu hết
- động cơ
- Phim Điện Ảnh
- Điểm cuối đa mô hình
- nhiều
- nhiều
- Thiên nhiên
- cần thiết
- Cần
- nhu cầu
- mạng
- Mới
- tiếp theo
- nlp
- thông báo
- thông báo
- con số
- Nvidia
- vật
- Mục tiêu
- mục tiêu
- có được
- thỉnh thoảng
- cung cấp
- Cung cấp
- Ngoại tuyến
- ONE
- Trực tuyến
- mã nguồn mở
- hoạt động
- hoạt động
- hoạt động
- hoạt động
- Hoạt động
- khai thác
- tối ưu
- tối ưu hóa
- Tối ưu hóa
- tối ưu hóa
- Tối ưu hóa
- tối ưu hóa
- Tùy chọn
- Các lựa chọn
- trái cam
- gọi món
- tổ chức
- Nền tảng khác
- nổi bật
- tổng thể
- riêng
- quyền sở hữu
- gói
- bao bì
- thông số
- một phần
- riêng
- đối tác
- thông qua
- đam mê
- Các bản vá lỗi
- Họa tiết
- mô hình
- Trả
- Đỉnh
- Thực hiện
- hiệu suất
- biểu diễn
- thời gian
- định kỳ
- kinh nguyệt
- cá nhân
- Cá nhân
- chọn
- đường ống dẫn
- Nơi
- Nơi
- kế hoạch
- kế hoạch
- nền tảng
- Nền tảng
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- Play
- thêm
- Chính sách
- điều luật
- Phổ biến
- có thể
- Bài đăng
- bài viết
- quyền lực
- thực hành
- thực hành
- Dự đoán
- dự đoán
- dự đoán
- Dự đoán
- ưa thích
- trước đây
- giá
- Hiệu trưởng
- ưu tiên
- riêng
- Vấn đề
- vấn đề
- quá trình
- Xử lý
- Quy trình
- xử lý
- bộ vi xử lý
- Sản phẩm
- giám đốc sản xuất
- Sản lượng
- Sản phẩm
- Hồ sơ
- đúng
- cho
- cung cấp
- cung cấp
- cung cấp
- cung cấp
- Proxy
- mục đích
- Đẩy
- ngọn đuốc
- Mau
- phạm vi
- khác nhau,
- nhanh chóng
- Tỷ lệ
- Giá
- đạt
- Đạt
- Đọc
- sẵn sàng
- thực
- thế giới thực
- thời gian thực
- nhận
- nhận
- nhận
- giới thiệu
- Khuyến nghị
- khuyến nghị
- đề nghị
- đề nghị
- đề nghị
- định kỳ
- giảm
- làm giảm
- đề cập
- Bất kể
- đều đặn
- liên quan
- Phát hành
- có liên quan
- vẫn còn
- kho
- đại diện
- đại diện cho
- yêu cầu
- yêu cầu
- yêu cầu
- cần phải
- yêu cầu
- Yêu cầu
- đòi hỏi
- tài nguyên
- Thông tin
- phản ứng
- REST của
- kết quả
- kết quả
- Kết quả
- bán lẻ
- Trả về
- xem xét
- Nguy cơ
- Vai trò
- nguồn gốc
- Route
- Quy tắc
- chạy
- chạy
- SaaS
- nhà làm hiền triết
- Suy luận của SageMaker
- tiền lương
- tương tự
- Lưu
- tiết kiệm
- Tiết kiệm
- khả năng mở rộng
- Quy mô
- quy mô
- mở rộng quy mô
- kịch bản
- lịch trình
- lên kế hoạch
- Khoa học
- Nhà khoa học
- Thứ hai
- giây
- Phần
- phần
- an toàn
- an ninh
- lựa chọn
- lựa chọn
- cao cấp
- nhạy cảm
- Trình tự
- nối tiếp
- Loạt Sách
- phục vụ
- Không có máy chủ
- Các máy chủ
- phục vụ
- dịch vụ
- DỊCH VỤ
- phục vụ
- định
- thiết lập
- một số
- định hình
- Chia sẻ
- chia sẻ
- Thay đổi
- nên
- Chương trình
- có ý nghĩa
- đáng kể
- tương tự
- Tương tự
- Đơn giản
- duy nhất
- Kích thước máy
- kích thước
- nhỏ
- nhỏ hơn
- So
- Phần mềm
- giải pháp
- Giải pháp
- một số
- nguồn
- Không gian
- chuyên gia
- chuyên nghành
- riêng
- đặc biệt
- quy định
- tốc độ
- Chi
- gai
- ổn định
- ngăn xếp
- Stacks
- Bắt đầu
- bắt đầu
- bắt đầu
- khởi động
- Startups
- vững chắc
- Bước
- Các bước
- Vẫn còn
- Dừng
- là gắn
- hàng
- chiến lược
- trực tuyến
- Nghiêm ngặt
- mạnh mẽ
- tiếp theo
- thành công
- thành công
- như vậy
- đủ
- phù hợp
- hỗ trợ
- Hỗ trợ
- Hỗ trợ
- dâng trào
- bàn
- Hãy
- mất
- Mục tiêu
- nhắm mục tiêu
- Nhiệm vụ
- nhiệm vụ
- nhóm
- đội
- TechCrunch
- Kỹ thuật
- Công nghệ
- người thuê nhà
- tensorflow
- thử nghiệm
- Kiểm tra
- Sản phẩm
- cung cấp their dịch
- tự
- bằng cách ấy
- vì thế
- hàng ngàn
- số ba
- ngưỡng
- Thông qua
- khắp
- thông lượng
- thời gian
- thời gian
- đến
- bên nhau
- quá
- công cụ
- Tổng số:
- Tps
- Theo dõi
- giao thông
- Train
- đào tạo
- Hội thảo
- giao dịch
- Giao dịch
- Chuyển đổi
- Chuyển đổi
- biến đổi
- quá cảnh
- minh bạch
- kích hoạt
- Triton
- XOAY
- loại
- điển hình
- thường
- Dưới
- cơ bản
- hiểu
- độc đáo
- các đơn vị
- không thể đoán trước
- không sử dụng
- Cập nhật
- Cập nhật
- nâng cấp
- nâng cấp
- thời gian hoạt động
- Sử dụng
- sử dụng
- ca sử dụng
- người sử dang
- Người sử dụng
- thường
- sử dụng
- tận dụng
- HIỆU LỰC
- giá trị
- Các giá trị
- biến thể
- khác nhau
- thông qua
- Video
- Video
- Xem
- ảo
- tầm nhìn
- khối lượng
- Bỏ phiếu
- phiếu
- Chất thải
- web
- các dịch vụ web
- tuần
- Điều gì
- Là gì
- cái nào
- trong khi
- rộng
- Phạm vi rộng
- sẽ
- ở trong
- không có
- Công việc
- làm việc
- công nhân
- công nhân
- đang làm việc
- công trinh
- thế giới
- sẽ
- XGBoost
- năm
- Bạn
- trên màn hình
- zephyrnet
- không