Các mô hình học máy (ML) không hoạt động biệt lập. Để mang lại giá trị, chúng phải tích hợp vào các hệ thống sản xuất và cơ sở hạ tầng hiện có, điều này đòi hỏi phải xem xét toàn bộ vòng đời ML trong quá trình thiết kế và phát triển. Hoạt động ML, được gọi là MLOps, tập trung vào việc hợp lý hóa, tự động hóa và giám sát các mô hình ML trong suốt vòng đời của chúng. Xây dựng quy trình MLOps mạnh mẽ đòi hỏi sự hợp tác đa chức năng. Các nhà khoa học dữ liệu, kỹ sư ML, nhân viên CNTT và nhóm DevOps phải làm việc cùng nhau để vận hành các mô hình từ nghiên cứu đến triển khai và bảo trì. Với các quy trình và công cụ phù hợp, MLOps cho phép các tổ chức áp dụng ML một cách đáng tin cậy và hiệu quả trong các nhóm của họ.
Mặc dù các yêu cầu về quy trình tích hợp liên tục và phân phối liên tục (CI/CD) có thể khác nhau và phản ánh nhu cầu của từng tổ chức, việc mở rộng quy trình thực hành MLOps giữa các nhóm có thể được đơn giản hóa bằng cách sử dụng các công cụ và điều phối được quản lý có thể đẩy nhanh quá trình phát triển và loại bỏ gánh nặng không phân biệt .
MLOps Amazon SageMaker là một bộ tính năng bao gồm Dự án Amazon SageMaker (CI/CD), Đường ống Amazon SageMaker và Cơ quan đăng ký mô hình Amazon SageMaker.
Đường ống SageMaker cho phép tạo và quản lý quy trình công việc ML một cách đơn giản, đồng thời cung cấp khả năng lưu trữ và tái sử dụng cho các bước quy trình công việc. Các Sổ đăng ký mô hình SageMaker tập trung theo dõi mô hình, đơn giản hóa việc triển khai mô hình. Dự án SageMaker giới thiệu các phương pháp thực hành CI/CD cho ML, bao gồm tính chẵn lẻ của môi trường, kiểm soát phiên bản, thử nghiệm và tự động hóa. Điều này cho phép thiết lập CI/CD nhanh chóng trong môi trường ML của bạn, tạo điều kiện cho khả năng mở rộng hiệu quả trong toàn doanh nghiệp của bạn.
Tích hợp sẵn dự án mẫu được cung cấp bởi Amazon SageMaker bao gồm tích hợp với một số công cụ của bên thứ ba, chẳng hạn như Jenkins để điều phối và GitHub để kiểm soát nguồn và một số công cụ sử dụng các công cụ CI/CD gốc của AWS như Cam kết mã AWS, Đường ống dẫn mã AWSvà Xây dựng mã AWS. Tuy nhiên, trong nhiều trường hợp, khách hàng muốn tích hợp SageMaker Pipelines với các công cụ CI/CD hiện có khác và do đó tạo các mẫu dự án tùy chỉnh của họ.
Trong bài đăng này, chúng tôi chỉ cho bạn cách triển khai từng bước để đạt được những điều sau:
- Tạo mẫu dự án SageMaker MLOps tùy chỉnh tích hợp với GitHub và GitHub Actions
- Cung cấp các mẫu dự án tùy chỉnh của bạn trong Xưởng sản xuất Amazon SageMaker cho nhóm khoa học dữ liệu của bạn với khả năng cung cấp chỉ bằng một cú nhấp chuột
Tổng quan về giải pháp
Trong bài đăng này, chúng tôi xây dựng kiến trúc sau. Chúng tôi tạo quy trình xây dựng mô hình tự động bao gồm các bước chuẩn bị dữ liệu, đào tạo mô hình, đánh giá mô hình và đăng ký mô hình được đào tạo trong Sổ đăng ký mô hình SageMaker. Sau đó, mô hình ML được đào tạo sau đó sẽ được triển khai từ Sổ đăng ký mô hình SageMaker đến các môi trường sản xuất và dàn dựng sau khi được phê duyệt thủ công.
Hãy đi sâu vào các thành phần của kiến trúc này để hiểu cấu hình hoàn chỉnh.
Hành động GitHub và GitHub
GitHub là một nền tảng dựa trên web cung cấp khả năng kiểm soát phiên bản và quản lý mã nguồn bằng Git. Nó cho phép các nhóm cộng tác trong các dự án phát triển phần mềm, theo dõi các thay đổi và quản lý kho mã. GitHub đóng vai trò là nơi tập trung để lưu trữ, tạo phiên bản và quản lý cơ sở mã ML của bạn. Điều này đảm bảo rằng cơ sở mã ML và quy trình dẫn của bạn được lập phiên bản, ghi lại và các thành viên trong nhóm có thể truy cập được.
Tác vụ GitHub là một công cụ tự động hóa mạnh mẽ trong hệ sinh thái GitHub. Nó cho phép bạn tạo các quy trình làm việc tùy chỉnh để tự động hóa các quy trình trong vòng đời phát triển phần mềm của bạn, chẳng hạn như xây dựng, thử nghiệm và triển khai mã. Bạn có thể tạo quy trình làm việc theo sự kiện được kích hoạt bởi các sự kiện cụ thể, chẳng hạn như khi mã được đẩy đến kho lưu trữ hoặc yêu cầu kéo được tạo. Khi triển khai MLOps, bạn có thể sử dụng Tác vụ GitHub để tự động hóa các giai đoạn khác nhau của quy trình ML, chẳng hạn như:
- Xác thực và tiền xử lý dữ liệu
- Đào tạo và đánh giá mô hình
- Triển khai và giám sát mô hình
- CI/CD cho mô hình ML
Với GitHub Actions, bạn có thể hợp lý hóa quy trình công việc ML của mình và đảm bảo rằng các mô hình của bạn được xây dựng, thử nghiệm và triển khai một cách nhất quán, dẫn đến việc triển khai ML hiệu quả và đáng tin cậy hơn.
Trong các phần sau, chúng tôi bắt đầu bằng cách thiết lập các điều kiện tiên quyết liên quan đến một số thành phần mà chúng tôi sử dụng như một phần của kiến trúc này:
- Hình thành đám mây AWS – Hình thành đám mây AWS bắt đầu triển khai mô hình và thiết lập các điểm cuối SageMaker sau khi quy trình triển khai mô hình được kích hoạt với sự phê duyệt của mô hình đã đào tạo.
- Kết nối AWS CodeStar - Chúng tôi sử dụng Ngôi sao mã AWS để thiết lập liên kết với kho lưu trữ GitHub và sử dụng nó dưới dạng tích hợp kho mã với các tài nguyên AWS, như SageMaker Studio.
- Sự kiện Amazon – Sự kiện Amazon theo dõi tất cả các sửa đổi đối với sổ đăng ký mô hình. Nó cũng duy trì một quy tắc nhắc hàm Lambda triển khai quy trình mô hình khi trạng thái của phiên bản gói mô hình thay đổi từ
PendingManualApproval
đếnApproved
trong sổ đăng ký mô hình. - AWS Lambda – Chúng tôi sử dụng một AWS Lambda để bắt đầu quy trình triển khai mô hình trong Hành động GitHub sau khi mô hình mới được đăng ký trong sổ đăng ký mô hình.
- Amazon SageMaker – Chúng tôi định cấu hình các thành phần SageMaker sau:
- Đường ống – Thành phần này bao gồm biểu đồ chu kỳ có hướng (DAG) giúp chúng tôi xây dựng quy trình làm việc ML tự động cho các giai đoạn chuẩn bị dữ liệu, đào tạo mô hình và đánh giá mô hình. Cơ quan đăng ký mô hình duy trì các bản ghi của các phiên bản mô hình, các tạo phẩm, dòng và siêu dữ liệu liên quan của chúng. Một nhóm gói mô hình được thành lập để chứa tất cả các phiên bản mô hình liên quan. Cơ quan đăng ký mô hình cũng chịu trách nhiệm quản lý trạng thái phê duyệt của phiên bản mô hình cho lần triển khai tiếp theo.
- Điểm cuối – Thành phần này thiết lập hai điểm cuối thời gian thực HTTPS để suy luận. Ví dụ: cấu hình lưu trữ có thể được điều chỉnh để chuyển đổi hàng loạt hoặc suy luận không đồng bộ. Điểm cuối dàn dựng được tạo khi quy trình triển khai mô hình được kích hoạt bằng sự phê duyệt của mô hình đã đào tạo từ Cơ quan đăng ký mô hình SageMaker. Điểm cuối này được sử dụng để xác thực mô hình đã triển khai bằng cách đảm bảo nó cung cấp các dự đoán đáp ứng các tiêu chuẩn về độ chính xác của chúng tôi. Khi mô hình được chuẩn bị để triển khai sản xuất, điểm cuối sản xuất sẽ được triển khai theo giai đoạn phê duyệt thủ công trong quy trình làm việc Hành động GitHub.
- Mã kho lưu trữ – Thao tác này sẽ tạo kho lưu trữ Git làm tài nguyên trong tài khoản SageMaker của bạn. Bằng cách sử dụng dữ liệu hiện có từ kho lưu trữ mã GitHub mà bạn nhập trong quá trình tạo dự án SageMaker, mối liên kết với cùng một kho lưu trữ sẽ được thiết lập trong SageMaker khi bạn khởi tạo dự án. Về cơ bản, điều này tạo thành một liên kết với kho lưu trữ GitHub trong SageMaker, cho phép các hành động tương tác (kéo/đẩy) với kho lưu trữ của bạn.
- Đăng ký mô hình – Điều này giám sát các phiên bản khác nhau của mô hình và các tạo phẩm tương ứng, bao gồm dòng và siêu dữ liệu. Một bộ sưu tập được gọi là nhóm gói mô hình được tạo ra, chứa các phiên bản liên quan đến mô hình. Hơn nữa, cơ quan đăng ký mô hình giám sát trạng thái phê duyệt của phiên bản mô hình, đảm bảo tính sẵn sàng cho việc triển khai tiếp theo.
- Quản lý bí mật AWS – Để bảo quản an toàn mã thông báo truy cập cá nhân GitHub của bạn, cần thiết lập bí mật trong Quản lý bí mật AWS và chứa mã thông báo truy cập của bạn trong đó.
- Danh mục dịch vụ AWS - Chúng tôi sử dụng Danh mục dịch vụ AWS để triển khai các dự án SageMaker, bao gồm các thành phần như kho lưu trữ mã SageMaker, hàm Lambda, quy tắc EventBridge, bộ chứa S3 tạo tác, v.v., tất cả đều được triển khai thông qua CloudFormation. Điều này cho phép tổ chức của bạn sử dụng các mẫu dự án nhiều lần, phân bổ dự án cho từng người dùng và hợp lý hóa các hoạt động.
- Amazon S3 – Chúng tôi sử dụng một Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3) để lưu giữ các thành phần mô hình do quy trình tạo ra.
Điều kiện tiên quyết
Bạn nên có các điều kiện tiên quyết sau:
Bạn cũng phải hoàn tất các bước thiết lập bổ sung trước khi triển khai giải pháp.
Thiết lập kết nối AWS CodeStar
Nếu bạn chưa có kết nối AWS CodeStar với tài khoản GitHub của mình, hãy tham khảo Tạo kết nối với GitHub để được hướng dẫn tạo một cái. ARN kết nối AWS CodeStar của bạn sẽ trông như thế này:
Trong ví dụ này, aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f
là ID duy nhất cho kết nối này. Chúng tôi sử dụng ID này khi tạo dự án SageMaker ở phần sau của ví dụ này.
Thiết lập khóa truy cập bí mật cho mã thông báo GitHub của bạn
Để lưu trữ an toàn mã thông báo truy cập cá nhân GitHub của bạn, bạn cần tạo bí mật trong Trình quản lý bí mật. Nếu bạn không có mã thông báo truy cập cá nhân cho GitHub, hãy tham khảo Quản lý mã thông báo truy cập cá nhân của bạn để được hướng dẫn tạo một cái.
Bạn có thể tạo mã thông báo truy cập cổ điển hoặc chi tiết hơn. Tuy nhiên, hãy đảm bảo rằng mã thông báo có quyền truy cập vào nội dung và hành động của kho lưu trữ (quy trình làm việc, hoạt động và tạo phẩm).
Hoàn tất các bước sau để lưu trữ mã thông báo của bạn trong Trình quản lý bí mật:
- Trên bảng điều khiển Secrets Manager, chọn Lưu trữ một bí mật mới.
- Chọn Loại bí mật khác cho Chọn loại bí mật.
- Cung cấp tên cho bí mật của bạn trong Key trường và thêm mã thông báo truy cập cá nhân của bạn vào trường tương ứng Giá trị trường.
- Chọn Sau, nhập tên cho bí mật của bạn và chọn Sau một lần nữa.
- Chọn Cửa hàng sách để lưu bí mật của bạn.
Bằng cách lưu trữ mã thông báo truy cập cá nhân GitHub của bạn trong Trình quản lý bí mật, bạn có thể truy cập mã thông báo đó một cách an toàn trong quy trình MLOps của mình trong khi vẫn đảm bảo tính bảo mật của nó.
Tạo người dùng IAM cho Tác vụ GitHub
Để cho phép GitHub Actions triển khai các điểm cuối SageMaker trong môi trường AWS của bạn, bạn cần tạo một Quản lý truy cập và nhận dạng AWS (IAM) và cấp cho nó những quyền cần thiết. Để biết hướng dẫn, hãy tham khảo Tạo người dùng IAM trong tài khoản AWS của bạn. Sử dụng iam/GithubActionsMLOpsExecutionPolicy.json
tập tin (được cung cấp trong mẫu mã) để cung cấp đủ quyền cho người dùng này triển khai các điểm cuối của bạn.
Sau khi bạn tạo người dùng IAM, tạo khóa truy cập. Bạn sẽ sử dụng khóa này, bao gồm cả ID khóa truy cập và khóa truy cập bí mật, trong bước tiếp theo khi định cấu hình bí mật GitHub của bạn.
Thiết lập tài khoản GitHub của bạn
Sau đây là các bước để chuẩn bị tài khoản GitHub của bạn chạy ví dụ này.
Sao chép kho lưu trữ GitHub
Bạn có thể sử dụng lại repo GitHub hiện có cho ví dụ này. Tuy nhiên, sẽ dễ dàng hơn nếu bạn tạo một kho lưu trữ mới. Kho lưu trữ này sẽ chứa tất cả mã nguồn cho cả quá trình xây dựng và triển khai quy trình SageMaker.
Sao chép nội dung của thư mục mã hạt giống vào thư mục gốc của kho lưu trữ GitHub của bạn. Ví dụ, .github
thư mục phải nằm dưới thư mục gốc của kho lưu trữ GitHub của bạn.
Tạo bí mật GitHub chứa khóa truy cập người dùng IAM của bạn
Trong bước này, chúng tôi lưu trữ chi tiết khóa truy cập của người dùng mới được tạo trong Bí mật GitHub.
- Trên trang web GitHub, điều hướng đến kho lưu trữ của bạn và chọn Cài đặt.
- Trong phần bảo mật, chọn Bí mật và biến số Và chọn Hoạt động.
- Chọn Bí mật kho lưu trữ mới.
- Trong Họ tên, đi vào
AWS_ACCESS_KEY_ID
- Trong Bí mật, hãy nhập ID khóa truy cập được liên kết với người dùng IAM mà bạn đã tạo trước đó.
- Chọn Thêm bí mật.
- Lặp lại quy trình tương tự cho
AWS_SECRET_ACCESS_KEY
Định cấu hình môi trường GitHub của bạn
Để tạo bước phê duyệt thủ công trong quy trình triển khai của mình, chúng tôi sử dụng Môi trường GitHub. Hoàn thành các bước sau:
- Điều hướng đến Cài đặt, Môi trường menu của kho lưu trữ GitHub của bạn và tạo một môi trường mới gọi là production.
- Trong Quy định bảo vệ môi trường, lựa chọn Người đánh giá cần thiết.
- Thêm tên người dùng GitHub mong muốn làm người đánh giá. Đối với ví dụ này, bạn có thể chọn tên người dùng của riêng mình.
Lưu ý rằng tính năng môi trường không có sẵn trong một số loại gói GitHub. Để biết thêm thông tin, hãy tham khảo Sử dụng môi trường để triển khai.
Triển khai hàm Lambda
Trong các bước sau, chúng tôi nén lambda_function.py
vào tệp .zip, sau đó được tải lên vùng lưu trữ S3.
Mẫu mã có liên quan cho việc này có thể được tìm thấy trong phần sau Repo GitHub. Cụ thể là lambda_function.py
được đánh dấu địa điểm ở lambda_functions/lambda_github_workflow_trigger thư mục.
Thay vào đó, bạn nên tạo một nhánh của mẫu mã và sao chép mã đó. Điều này sẽ cho phép bạn tự do sửa đổi mã và thử nghiệm các khía cạnh khác nhau của mẫu.
- Sau khi bạn có được bản sao mã, hãy điều hướng đến thư mục thích hợp và sử dụng
zip
lệnh nénlambda_function.py
. Cả người dùng Windows và MacOS đều có thể sử dụng hệ thống quản lý tệp gốc của họ, File Explorer hoặc Finder, để tạo tệp .zip.
- Tải lên
lambda-github-workflow-trigger.zip
vào một thùng S3.
Nhóm này sau đó sẽ được Danh mục dịch vụ truy cập. Bạn có thể chọn bất kỳ bộ chứa nào mà bạn có quyền truy cập, miễn là Danh mục dịch vụ có thể truy xuất dữ liệu từ bộ chứa đó trong các bước tiếp theo.
Từ bước này trở đi, chúng tôi yêu cầu cài đặt và cấu hình AWS CLI v2. Một giải pháp thay thế là sử dụng AWS CloudShell, được cài đặt sẵn tất cả các công cụ cần thiết, loại bỏ nhu cầu về bất kỳ cấu hình bổ sung nào.
- Để tải tệp lên vùng lưu trữ S3, hãy sử dụng lệnh sau:
Bây giờ chúng ta xây dựng một lớp Lambda cho các phần phụ thuộc liên quan đến lambda_function
chúng tôi vừa tải lên.
- Thiết lập môi trường ảo Python và cài đặt các phần phụ thuộc:
- Tạo tệp .zip bằng các lệnh sau:
- Xuất bản lớp lên AWS:
Khi lớp này được xuất bản, tất cả các hàm Lambda của bạn giờ đây có thể tham chiếu nó để đáp ứng các phần phụ thuộc của chúng. Để hiểu chi tiết hơn về các lớp Lambda, hãy tham khảo Làm việc với các lớp Lambda.
Tạo mẫu dự án tùy chỉnh trong SageMaker
Sau khi hoàn thành tất cả các bước trên, chúng ta có tất cả các thành phần và tài nguyên đường dẫn CI/CD. Tiếp theo, chúng tôi trình bày cách có thể cung cấp các tài nguyên này dưới dạng dự án tùy chỉnh trong SageMaker Studio và có thể truy cập được thông qua triển khai bằng một cú nhấp chuột.
Như đã thảo luận trước đó, khi các mẫu do SageMaker cung cấp không đáp ứng được nhu cầu của bạn (ví dụ: bạn muốn có sự điều phối phức tạp hơn trong CodePipeline với nhiều giai đoạn, các bước phê duyệt tùy chỉnh hoặc để tích hợp với công cụ của bên thứ ba như các hành động GitHub và GitHub được trình bày trong bài đăng này), bạn có thể tạo các mẫu của riêng mình. Chúng tôi khuyên bạn nên bắt đầu với các mẫu do SageMaker cung cấp để hiểu cách sắp xếp mã và tài nguyên của bạn cũng như xây dựng dựa trên đó. Để biết thêm chi tiết, hãy tham khảo Tạo mẫu dự án tùy chỉnh.
Lưu ý rằng bạn cũng có thể tự động hóa bước này và thay vào đó hãy sử dụng CloudFormation để triển khai danh mục và sản phẩm Danh mục dịch vụ thông qua mã. Tuy nhiên, trong bài đăng này, để có trải nghiệm học tập tốt hơn, chúng tôi sẽ giới thiệu cho bạn cách triển khai bảng điều khiển.
Ở giai đoạn này, chúng tôi sử dụng mẫu CloudFormation được cung cấp để tạo danh mục Danh mục dịch vụ giúp chúng tôi tạo các dự án tùy chỉnh trong SageMaker.
Bạn có thể tạo miền mới hoặc sử dụng lại miền SageMaker của mình cho các bước sau. Nếu bạn chưa có tên miền, hãy tham khảo Tích hợp vào Miền Amazon SageMaker bằng cách sử dụng Thiết lập nhanh để được hướng dẫn thiết lập.
Sau khi bạn cấp quyền truy cập của quản trị viên vào mẫu SageMaker, hãy hoàn thành các bước sau:
- Trên bảng điều khiển Danh mục dịch vụ, bên dưới Quản trị trong ngăn điều hướng, chọn Danh mục đầu tư.
- Chọn Tạo một danh mục đầu tư mới.
- Đặt tên cho danh mục đầu tư là “Mẫu tổ chức SageMaker”.
- Tải về mẫu.yml tệp vào máy tính của bạn.
Mẫu Cloud Formation này cung cấp tất cả tài nguyên CI/CD mà chúng tôi cần dưới dạng cấu hình và cơ sở hạ tầng dưới dạng mã. Bạn có thể nghiên cứu mẫu chi tiết hơn để xem tài nguyên nào được triển khai như một phần của mẫu. Mẫu này đã được tùy chỉnh để tích hợp với GitHub và GitHub Actions.
- Trong tạp chí
template.yml
tập tin, thay đổiS3Bucket
value vào vùng lưu trữ nơi bạn đã tải tệp Lambda .zip lên:
- Chọn danh mục đầu tư mới.
- Chọn Tải lên một sản phẩm mới.
- Trong Tên sản phẩm¸ nhập tên cho mẫu của bạn. Chúng tôi sử dụng tên
build-deploy-github
. - Trong Mô tả, nhập mô tả.
- Trong Chủ nhân, nhập tên của bạn.
- Theo Chi tiết phiên bản, Cho Phương pháp, chọn Sử dụng tệp mẫu.
- Chọn Tải lên một mẫu.
- Tải lên mẫu bạn đã tải xuống.
- Trong Tiêu đề phiên bản, chọn 1.0.
- Chọn Đánh giá.
- Xem lại cài đặt của bạn và chọn Tạo sản phẩm.
- Chọn Refresh để liệt kê sản phẩm mới.
- Chọn sản phẩm bạn vừa tạo.
- trên Tag , hãy thêm thẻ sau vào sản phẩm:
- Key =
sagemaker:studio-visibility
- Giá trị =
true
- Key =
Quay lại chi tiết danh mục đầu tư, bạn sẽ thấy nội dung tương tự như ảnh chụp màn hình sau (với các ID khác nhau).
- trên Những ràng buộc tab, chọn Tạo ràng buộc.
- Trong Sản phẩm, chọn
build-deploy-github
(sản phẩm bạn vừa tạo). - Trong Hạn chế gõ, chọn Khởi động.
- Theo Ràng buộc khởi chạy, Cho Phương pháp, chọn Chọn vai trò IAM.
- Chọn
AmazonSageMakerServiceCatalogProductsLaunchRole
. - Chọn Tạo.
- trên Nhóm, vai trò và người dùng tab, chọn Thêm nhóm, vai trò, người dùng.
- trên Vai trò tab, hãy chọn vai trò bạn đã sử dụng khi định cấu hình miền SageMaker Studio. Đây là nơi có thể tìm thấy vai trò miền SageMaker.
- Chọn Thêm quyền truy cập.
Triển khai dự án từ SageMaker Studio
Trong các phần trước, bạn đã chuẩn bị môi trường dự án MLOps tùy chỉnh. Bây giờ, hãy tạo một dự án bằng mẫu này:
- Trên bảng điều khiển SageMaker, điều hướng đến miền mà bạn muốn tạo dự án này.
- trên Khởi động menu, chọn Studio.
Bạn sẽ được chuyển hướng đến môi trường SageMaker Studio.
- Trong SageMaker Studio, trong ngăn điều hướng bên dưới Triển khai, chọn Dự án.
- Chọn Tạo dự án.
- Ở đầu danh sách các mẫu, chọn Mẫu tổ chức.
Nếu bạn đã thực hiện thành công tất cả các bước trước đó, bạn sẽ có thể thấy mẫu dự án tùy chỉnh mới có tên Build-Deploy-GitHub
.
- Chọn mẫu đó và chọn Chọn mẫu dự án.
- Nhập mô tả tùy chọn.
- Trong Tên chủ sở hữu kho lưu trữ GitHub, hãy nhập chủ sở hữu kho lưu trữ GitHub của bạn. Ví dụ: nếu kho lưu trữ của bạn ở
https://github.com/pooyavahidi/my-repo
, chủ sở hữu sẽ làpooyavahidi
. - Trong Tên kho lưu trữ GitHub, hãy nhập tên của kho lưu trữ mà bạn đã sao chép mã hạt giống vào đó. Nó sẽ chỉ là tên của repo. Ví dụ, trong
https://github.com/pooyavahidi/my-repo
, repo làmy-repo
. - Trong ID duy nhất của kết nối Codestar, hãy nhập ID duy nhất của kết nối AWS CodeStar mà bạn đã tạo.
- Trong Tên bí mật trong Trình quản lý bí mật lưu trữ mã thông báo GitHub, hãy nhập tên bí mật vào Trình quản lý bí mật nơi bạn đã tạo và lưu trữ mã thông báo GitHub.
- Trong Tệp quy trình làm việc GitHub để triển khai, hãy nhập tên của tệp quy trình công việc GitHub (tại
.github/workflows/deploy.yml
) nơi bạn có hướng dẫn triển khai. Đối với ví dụ này, bạn có thể giữ nó làm mặc định, tức làdeploy.yml
. - Chọn Tạo dự án.
- Sau khi tạo dự án, hãy đảm bảo bạn cập nhật
AWS_REGION
vàSAGEMAKER_PROJECT_NAME
các biến môi trường trong tệp quy trình công việc GitHub của bạn cho phù hợp. Các tệp quy trình công việc nằm trong kho lưu trữ GitHub của bạn (được sao chép từ mã hạt giống), bên trong.github/workflows
danh mục. Đảm bảo bạn cập nhật cả haibuild.yml
vàdeploy.yml
các tập tin.
Bây giờ môi trường của bạn đã sẵn sàng hoạt động! Bạn có thể chạy trực tiếp quy trình, thực hiện các thay đổi và đẩy những thay đổi đó vào kho lưu trữ GitHub của mình để kích hoạt quy trình xây dựng tự động và xem tất cả các bước xây dựng và triển khai được tự động hóa như thế nào.
Làm sạch
Để dọn sạch tài nguyên, hãy hoàn thành các bước sau:
- Xóa ngăn xếp CloudFormation được sử dụng cho dự án SageMaker và điểm cuối SageMaker.
- Xóa miền SageMaker.
- Xóa tài nguyên Danh mục dịch vụ.
- Xóa liên kết kết nối AWS CodeStar với kho GitHub.
- Xóa người dùng IAM mà bạn đã tạo cho GitHub Actions.
- Xóa bí mật trong Trình quản lý bí mật lưu trữ chi tiết truy cập cá nhân GitHub.
Tổng kết
Trong bài đăng này, chúng tôi đã hướng dẫn quy trình sử dụng mẫu dự án SageMaker MLOps tùy chỉnh để tự động xây dựng và tổ chức quy trình CI/CD. Quy trình này tích hợp hiệu quả các cơ chế CI/CD hiện có của bạn với các khả năng của SageMaker để thao tác dữ liệu, đào tạo mô hình, phê duyệt mô hình và triển khai mô hình. Trong kịch bản của mình, chúng tôi tập trung vào việc tích hợp GitHub Actions với các dự án và quy trình của SageMaker. Để hiểu toàn diện về chi tiết triển khai, hãy truy cập Kho GitHub. Hãy thoải mái thử nghiệm điều này và đừng ngần ngại để lại bất kỳ câu hỏi nào bạn có thể có trong phần bình luận.
Về các tác giả
Tiến sĩ Romina Sharifpour là Kiến trúc sư giải pháp trí tuệ nhân tạo và học máy cao cấp tại Amazon Web Services (AWS). Cô đã dành hơn 10 năm lãnh đạo việc thiết kế và triển khai các giải pháp sáng tạo toàn diện được hỗ trợ bởi những tiến bộ trong ML và AI. Lĩnh vực quan tâm của Romina là xử lý ngôn ngữ tự nhiên, mô hình ngôn ngữ lớn và MLOps.
Pooya Vahidi là Kiến trúc sư giải pháp cấp cao tại AWS, đam mê khoa học máy tính, trí tuệ nhân tạo và điện toán đám mây. Là một chuyên gia AI, anh là thành viên tích cực của nhóm Khu vực chuyên sâu AI/ML của AWS. Với nền tảng chuyên môn kéo dài hơn hai thập kỷ trong việc dẫn đầu về kiến trúc và kỹ thuật của các giải pháp quy mô lớn, ông giúp đỡ khách hàng trong hành trình chuyển đổi của họ thông qua công nghệ đám mây và AI/ML.
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- PlatoData.Network Vertical Generative Ai. Trao quyền cho chính mình. Truy cập Tại đây.
- PlatoAiStream. Thông minh Web3. Kiến thức khuếch đại. Truy cập Tại đây.
- Trung tâmESG. Than đá, công nghệ sạch, Năng lượng, Môi trường Hệ mặt trời, Quản lý chất thải. Truy cập Tại đây.
- PlatoSức khỏe. Tình báo thử nghiệm lâm sàng và công nghệ sinh học. Truy cập Tại đây.
- nguồn: https://aws.amazon.com/blogs/machine-learning/build-an-end-to-end-mlops-pipeline-using-amazon-sagemaker-pipelines-github-and-github-actions/
- : có
- :là
- :không phải
- :Ở đâu
- $ LÊN
- 10
- 100
- 114
- 14
- 20
- 28
- 7
- 8
- 9
- a
- Có khả năng
- Giới thiệu
- ở trên
- đẩy nhanh tiến độ
- truy cập
- truy cập
- có thể truy cập
- cho phù hợp
- Tài khoản
- chính xác
- Đạt được
- ngang qua
- hành động
- hoạt động
- xoay vòng
- thêm vào
- thêm vào
- Điều chỉnh
- nhận nuôi
- tiến bộ
- Sau
- một lần nữa
- AI
- AI / ML
- Tất cả
- chỉ định
- cho phép
- cho phép
- Đã
- Ngoài ra
- thay thế
- đàn bà gan dạ
- Amazon SageMaker
- Đường ống Amazon SageMaker
- Amazon Web Services
- Amazon Web Services (AWS)
- an
- và
- và cơ sở hạ tầng
- bất kì
- thích hợp
- phê duyệt
- kiến trúc
- LÀ
- khu vực
- nhân tạo
- trí tuệ nhân tạo
- AS
- các khía cạnh
- liên kết
- Hiệp hội
- At
- tự động hóa
- Tự động
- tự động
- tự động hóa
- Tự động hóa
- có sẵn
- AWS
- lý lịch
- cơ sở
- BE
- được
- trước
- cả hai
- xây dựng
- Xây dựng
- xây dựng
- xây dựng
- được xây dựng trong
- by
- gọi là
- CAN
- khả năng
- Danh mục hàng
- CD
- tập trung
- thay đổi
- Những thay đổi
- Chọn
- cổ điển
- giống cá lăng
- Nhấp chuột
- đám mây
- điện toán đám mây
- mã
- cơ sở mã
- hợp tác
- hợp tác
- bộ sưu tập
- đến
- Bình luận
- hoàn thành
- hoàn thành
- phức tạp
- thành phần
- các thành phần
- toàn diện
- máy tính
- Khoa học Máy tính
- máy tính
- bảo mật
- Cấu hình
- cấu hình
- cấu hình
- liên quan
- xem xét
- nhất quán
- bao gồm
- An ủi
- xây dựng
- chứa
- nội dung
- liên tục
- điều khiển
- Tương ứng
- tạo
- tạo ra
- tạo ra
- Tạo
- tạo
- khách hàng
- khách hàng
- tùy chỉnh
- DAG
- dữ liệu
- Chuẩn bị dữ liệu
- khoa học dữ liệu
- thập kỷ
- Mặc định
- cung cấp
- giao hàng
- đào sâu
- nhu cầu
- chứng minh
- chứng minh
- phụ thuộc
- triển khai
- triển khai
- triển khai
- triển khai
- triển khai
- Mô tả
- Thiết kế
- mong muốn
- chi tiết
- chi tiết
- chi tiết
- Phát triển
- khác nhau
- đạo diễn
- trực tiếp
- thảo luận
- do
- miền
- dont
- suốt trong
- mỗi
- Sớm hơn
- dễ dàng hơn
- hệ sinh thái
- Hiệu quả
- hiệu quả
- hiệu quả
- hiệu quả
- hay
- các yếu tố
- loại bỏ
- cho phép
- kích hoạt
- cho phép
- cho phép
- Cuối cùng đến cuối
- Điểm cuối
- Kỹ Sư
- Kỹ sư
- đảm bảo
- đảm bảo
- đảm bảo
- đăng ký hạng mục thi
- Doanh nghiệp
- Toàn bộ
- Môi trường
- môi trường
- chủ yếu
- thành lập
- thành lập
- thành lập
- thành lập
- vv
- đánh giá
- sự kiện
- ví dụ
- hiện tại
- kinh nghiệm
- thử nghiệm
- chuyên môn
- người khám phá
- tạo điều kiện
- Đặc tính
- Tính năng
- cảm thấy
- lĩnh vực
- Tập tin
- Các tập tin
- Finder
- Tập trung
- tập trung
- tiếp theo
- Trong
- ngã ba
- hình thành
- các hình thức
- tìm thấy
- Miễn phí
- Freedom
- từ
- chức năng
- chức năng
- tạo ra
- tạo ra
- được
- đi
- GitHub
- Cho
- đi
- đi
- cấp
- đồ thị
- lớn hơn
- Nhóm
- Các nhóm
- Có
- he
- nặng
- nâng nặng
- giúp
- lưu trữ
- House
- nhà
- nhà ở
- Độ đáng tin của
- Hướng dẫn
- Tuy nhiên
- HTML
- http
- HTTPS
- ID
- Bản sắc
- id
- if
- thực hiện
- thực hiện
- thực hiện
- in
- bao gồm
- bao gồm
- Bao gồm
- thông tin
- Cơ sở hạ tầng
- bắt đầu
- Đồng tu
- sáng tạo
- đầu vào
- trong
- cài đặt, dựng lên
- cài đặt
- ví dụ
- thay vì
- hướng dẫn
- tích hợp
- Tích hợp
- Tích hợp
- hội nhập
- Sự thông minh
- tương tác
- quan tâm
- trong
- Giới thiệu
- cô lập
- IT
- ITS
- Những hành trình
- jpg
- json
- chỉ
- Giữ
- giữ
- Key
- phím
- nổi tiếng
- Ngôn ngữ
- lớn
- quy mô lớn
- một lát sau
- phóng
- lớp
- lớp
- hàng đầu
- học tập
- Rời bỏ
- vòng đời
- nâng
- Lượt thích
- dòng
- LINK
- Danh sách
- nằm
- địa điểm thư viện nào
- dài
- Xem
- giống như
- máy
- học máy
- hệ điều hành Mac
- duy trì
- bảo trì
- làm cho
- quản lý
- quản lý
- quản lý
- giám đốc
- quản lý
- Thao tác
- nhãn hiệu
- nhiều
- cơ chế
- Gặp gỡ
- hội viên
- Các thành viên
- Menu
- Siêu dữ liệu
- Might
- MIT
- ML
- MLOps
- kiểu mẫu
- mô hình
- Sửa đổi
- sửa đổi
- giám sát
- màn hình
- chi tiết
- hiệu quả hơn
- Hơn thế nữa
- nhiều
- phải
- tên
- Được đặt theo tên
- tên
- tự nhiên
- Tự nhiên
- Xử lý ngôn ngữ tự nhiên
- Điều hướng
- THÔNG TIN
- cần thiết
- nhu yếu phẩm
- Cần
- nhu cầu
- Mới
- sản phẩm mới
- mới
- tiếp theo
- tại
- được
- of
- cung cấp
- on
- ONE
- trở đi
- hoạt động
- Hoạt động
- or
- dàn nhạc
- cơ quan
- tổ chức
- Nền tảng khác
- vfoXNUMXfipXNUMXhfpiXNUMXufhpiXNUMXuf
- kết thúc
- tổng quan
- riêng
- chủ sở hữu
- gói
- cửa sổ
- tính chẵn lẻ
- một phần
- bên
- đam mê
- quyền
- riêng
- đường ống dẫn
- kế hoạch
- nền tảng
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- danh mục đầu tư
- Bài đăng
- mạnh mẽ
- thực hành
- Dự đoán
- chuẩn bị
- Chuẩn bị
- chuẩn bị
- điều kiện tiên quyết
- trước
- thủ tục
- quá trình
- Quy trình
- xử lý
- Sản xuất
- Sản phẩm
- Sản lượng
- chuyên nghiệp
- dự án
- dự án
- nhắc nhở
- bảo vệ
- cho
- cung cấp
- cung cấp
- công bố
- Đẩy
- đẩy
- Python
- truy vấn
- Nhanh chóng
- Sẵn sàng
- sẵn sàng
- thời gian thực
- giới thiệu
- đề nghị
- hồ sơ
- xem
- tài liệu tham khảo
- phản ánh
- đăng ký
- Đăng Ký
- đăng ký
- liên quan
- có liên quan
- đáng tin cậy
- tẩy
- NHIỀU LẦN
- kho
- yêu cầu
- yêu cầu
- Yêu cầu
- nghiên cứu
- tài nguyên
- Thông tin
- tương ứng
- chịu trách nhiệm
- kết quả
- tái sử dụng
- ngay
- mạnh mẽ
- Vai trò
- vai trò
- nguồn gốc
- Quy tắc
- chạy
- chạy
- nhà làm hiền triết
- Đường ống SageMaker
- tương tự
- Lưu
- khả năng mở rộng
- mở rộng quy mô
- kịch bản
- kịch bản
- Khoa học
- các nhà khoa học
- Bí mật
- bí mật
- Phần
- phần
- an toàn
- an ninh
- xem
- hạt giống
- chọn
- cao cấp
- phục vụ
- dịch vụ
- DỊCH VỤ
- bộ
- thiết lập
- thiết lập
- thiết lập
- một số
- chị ấy
- nên
- hiển thị
- tương tự
- Đơn giản
- đơn giản hóa
- đơn giản hóa
- Phần mềm
- phát triển phần mềm
- giải pháp
- Giải pháp
- một số
- một cái gì đó
- nguồn
- mã nguồn
- Vôn
- riêng
- đặc biệt
- tiêu
- Stacks
- Nhân sự
- Traineeship
- giai đoạn
- dàn dựng
- tiêu chuẩn
- Bắt đầu
- Bắt đầu
- Trạng thái
- Bước
- Các bước
- là gắn
- hàng
- lưu trữ
- cửa hàng
- lưu trữ
- đơn giản
- hợp lý hóa
- tinh giản
- phòng thu
- Học tập
- tiếp theo
- Thành công
- như vậy
- đủ
- bộ
- chắc chắn
- hệ thống
- hệ thống
- TAG
- nhóm
- Thành viên của nhóm
- đội
- Công nghệ
- mẫu
- mẫu
- thử nghiệm
- Kiểm tra
- việc này
- Sản phẩm
- Nguồn
- cung cấp their dịch
- sau đó
- vì thế
- Kia là
- họ
- Thứ ba
- của bên thứ ba
- điều này
- những
- Thông qua
- khắp
- đến
- bên nhau
- mã thông báo
- công cụ
- công cụ
- hàng đầu
- theo dõi
- Theo dõi
- đào tạo
- Hội thảo
- Chuyển đổi
- biến đổi
- kích hoạt
- được kích hoạt
- hai
- kiểu
- loại
- Dưới
- hiểu
- sự hiểu biết
- độc đáo
- Cập nhật
- tải lên
- trên
- us
- sử dụng
- đã sử dụng
- người sử dang
- Người sử dụng
- sử dụng
- sử dụng
- tận dụng
- HIỆU LỰC
- xác nhận
- giá trị
- khác nhau
- phiên bản
- phiên bản
- thông qua
- ảo
- Truy cập
- đi bộ
- muốn
- we
- web
- các dịch vụ web
- Dựa trên web
- Website
- Điều gì
- khi nào
- cái nào
- trong khi
- sẽ
- cửa sổ
- với
- ở trong
- Công việc
- làm việc cùng nhau
- quy trình làm việc
- Luồng công việc
- sẽ
- năm
- Bạn
- trên màn hình
- zephyrnet
- Zip