概觀

機器學習營運 (MLOps) 工作負載協調器可精簡 ML 模型部署,並強制執行最佳實務以實現可擴展性、可靠性和效率。此 AWS 解決方案是一種可擴展的架構,具有標準介面,用於管理 AWS ML 和第三方服務的 ML 管道。
此解決方案包括 AWS CloudFormation 範本:此範本可啟用模型訓練、上傳預先訓練的模型 (亦稱為自攜模型或 BYOM)、管道協同運作組態,以及進行管道營運監控。藉由實作此解決方案,您的團隊可提高其敏捷性和效率,並大規模重複成功的程序。
優勢

透過 API 呼叫或 HAQM S3 儲存貯體來初始化預先設定的管道。
使用 HAQM SageMaker BYOM 來自動化模型監控,並提供具有偏離偵測的無伺服器推論端點。
使用 HAQM SageMaker 模型儀表板來檢視、搜尋和探索由您的所有 HAQM SageMaker 資源,包括模型、端點、模型卡和批次轉換任務。
技術詳細資訊

您可以使用實作指南和隨附的 AWS CloudFormation 範本來自動部署此架構。為了支援多個使用案例和業務需求,該解決方案提供了兩個 AWS CloudFormation 範本:
- 使用單一帳戶範本在相同 AWS 帳戶中部署所有解決方案的管道。此選項適用於實驗、開發和/或小規模生產工作負載。
- 使用多帳戶範本跨不同的 AWS 帳戶佈建多個環境 (例如,開發、暫存和生產),這可改善管控及提高 ML 管道部署的安全和控制,提供安全的實驗和更快的創新,並保持生產資料和工作負載的安全性和可用性,以協助確保業務持續性。
-
選項 1 – 單一帳戶部署
-
選項 2 – 多帳戶部署
-
選項 1 – 單一帳戶部署
-
步驟 1
Orchestrator (可能是 DevOps 工程師或其他類型的使用者) 在其 AWS 帳戶中啟動此解決方案,並選擇其偏好的選項。例如,他們可以使用 HAQM SageMaker 模型註冊表或現有的 HAQM Simple Storage Service (HAQM S3) 儲存貯體。
步驟 2
Orchestrator 將所需的資產 (例如,模型成品、訓練資料或自訂演算法 zip 檔案) 上傳至 HAQM S3 資產儲存貯體中。如果使用 SageMaker 模型註冊表,則 Orchestrator (或自訂管道) 必須向模型註冊表註冊模型。
步驟 3a
透過將 API 呼叫傳送至 HAQM API Gateway 或將 mlops-config.json 檔案上傳至組態 HAQM S3 儲存貯體,來佈建單一帳戶 AWS CodePipeline 執行個體。
步驟 3b
視乎管道類型,AWS Lambda Orchestrator 函數使用 API 呼叫的主體或 mlops-config.json 檔案來封裝目標 CloudFormation 範本及其參數和組態。然後,Orchestrator 使用此封裝範本和組態,做為 CodePipeline 執行個體的來源階段。
步驟 4
DeployPipeline 階段採用封裝的 CloudFormation 範本及其參數或組態,並將目標管道部署到相同的帳戶中。
步驟 5
在佈建目標管道之後,使用者可以存取其功能。系統會將 HAQM Simple Notification Service (HAQM SNS) 通知傳送至解決方案的啟動參數中提供的電子郵件。 -
選項 2 – 多帳戶部署
-
步驟 1
Orchestrator (可能是 DevOps 工程師,或是以管理員身分存取 Orchestrator 帳戶的其他使用者) 提供 AWS Organizations 資訊,例如,開發、暫存和生產組織單位 ID 和帳戶號碼。
他們還指定所需的選項,這可能包括使用 SageMaker 模型註冊表,或提供現有 HAQM S3 儲存貯體,然後在其 AWS 帳戶中啟動解決方案。
步驟 2
Orchestrator 將目標管道所需的資產,例如,模型成品、訓練資料和/或自訂演算法 zip 檔案,上傳至 Orchestrator 的 AWS 帳戶中的 HAQM S3 資產儲存貯體中。如果使用 SageMaker 模型註冊表,則 Orchestrator (或自訂管道) 必須向模型註冊表註冊模型。
步驟 3a
透過將 API 呼叫傳送至 API Gateway 或將 mlops-config.json 檔案上傳至組態 HAQM S3 儲存貯體,來佈建多重帳戶 CodePipeline 執行個體。步驟 3b
視乎管道類型,Lambda Orchestrator 函數會封裝目標
CloudFormation 範本及其參數和組態使用 API 呼叫的主體或 mlops-config.json 檔案。然後,Orchestrator 使用此封裝範本和組態,做為 CodePipeline 執行個體的來源階段。
步驟 4
DeployDev 階段採用封裝的 CloudFormation 範本及其參數或組態,並將目標管道部署到開發帳戶中。
步驟 5
在目標管道佈建到開發帳戶之後,開發人員就可以在管道上反覆使用。步驟 6
完成開發之後,Orchestrator (或另一個授權帳戶) 會手動核准 DeployStaging 動作以移至下一個階段 DeployStaging。
步驟 7
DeployStaging 階段使用暫存組態將目標管道部署到暫存帳戶中。步驟 8
測試人員對部署的管道執行不同的測試。步驟 9
管道通過品質測試之後,Orchestrator 可以核准 DeployProd 動作。步驟 10
DeployProd 階段將目標管道 (具有生產組態) 部署到生產帳戶。步驟 11
目標管道進入生產環境。系統會將 HAQM SNS 通知傳送至解決方案的啟動參數中提供的電子郵件。
相關內容

透過與 AWS 合作夥伴解決方案架構師及 AWS 解決方案程式庫團隊合作,Cognizant 在 MLOps 工作負載協調器解決方案的基礎上建立了他們的 MLOps 模型生命週期協調器解決方案。