Azure Kubernetes Service 中的機器學習作業 (MLOps) 最佳做法 (AKS)
本文說明在 AKS 中使用 MLOps 時的最佳做法和考慮。 如需 MLOps 的詳細資訊,請參閱 適用於 AI 和機器學習工作流程的機器學習作業 (MLOps)。
基礎結構即程式碼 (IaC)
IaC 可為各種應用程式類型啟用一致且可重現的基礎結構布建和管理。 透過智慧型手機應用程式部署,您的 IaC 實作可能會在 AI 管線中變更,因為推斷、服務、定型和微調模型所需的計算能力和資源可能會有所不同。 為您的 AI 開發人員小組定義和版本設定 IaC 範本,有助於確保作業類型之間的一致性和成本效益,同時取消其個別硬體需求並加速部署程式。
容器化
在容器映像中管理您的模型權數、元數據和組態,可讓您移植性、簡化版本設定,並隨著時間降低記憶體成本。 使用容器化,您可以:
- 利用現有的容器映像,特別是針對以數百萬至數十億個大小和穩定擴散模型的參數範圍,儲存在安全容器登錄中的大型語言模型(LLM)。
- 請避免管線中的單一失敗點 (SPOF)使用多個輕量型容器,其中包含每個工作的唯一相依性,而不是維護一個大型映像。
- 將大型文字/映射數據集儲存在基底容器映射之外,並在運行時間在需要時加以參考。
開始使用 Kubernetes AI 工具鏈操作員 ,在幾分鐘內在 AKS 上部署高效能 LLM。
模型管理和版本控制
模型管理和版本控制對於追蹤模型一段時間的變更至關重要。 藉由建立模型的版本,您可以:
- 維護模型容器之間的一致性,以方便在不同環境中部署。
- 採用具有參數效率的微調 (PEFT) 方法,以更快速地反覆運算模型權數子集,並在輕量型容器中維護新版本。
自動化
自動化是減少手動錯誤、提高效率並確保 ML 生命週期一致性的關鍵。 藉由自動化工作,您可以:
- 整合警示工具,以在新的數據流流入您的應用程式時自動觸發向量擷取流程。
- 設定模型效能閾值以追蹤效能降低,並觸發重新定型管線。
延展性和資源管理
延展性和資源管理對於確保您的 AI 管線可以處理應用程式的需求至關重要。 藉由優化您的資源使用量,您可以:
- 透過分散式運算和多個平行處理原則層級,整合有效率地使用已配置的 CPU、GPU 和記憶體資源的工具(例如:數據、模型和管線平行處理原則)。
- 在您的計算資源上啟用自動調整,以支援尖峰時間的高模型要求磁碟區,並在離峰時間相應減少。
- 與傳統應用程式類似,遵循 AKS 復原和可靠性最佳做法來規劃災害復原。
安全性與合規性
安全性與合規性對於保護您的數據以及確保您的 AI 管線符合法規需求至關重要。 藉由實作安全性和合規性最佳做法,您可以:
- 整合常見的弱點和暴露程度 (CVE) 掃描,以偵測開放原始碼模型容器映像上的常見弱點。
- 針對儲存在 Azure Container Registry 中的容器映射模型,使用 適用於容器 的 Defender Microsoft Defender。
- 維護內嵌數據、模型變更和計量的稽核記錄,以符合您的組織原則。
下一步
瞭解在 AKS 上部署和作業的其他區域的最佳作法: