摘要
手動管理機器學習程式碼 (一個筆記本、一個人、一次只執行一次),無法擴展到需要可追溯性、安全地進行實驗,以及自動化品質閘門的團隊。 本模組逐步說明如何建立自動化層。
你學到了什麼
- 在 Git 裡把你的訓練腳本、工作定義、環境檔案和設定檔設定好。 原始資料、模型產物、執行輸出和秘密,都存放在專門建置的服務中,例如 Azure Machine Learning 資料資產、模型登錄檔、GitHub secrets 或 Azure Key Vault。
- 以主幹為基礎的開發可讓
main維持穩定。 短期分支可隔離變更,提取要求便於進行審查,而分支保護規則則會在合併前強制執行必要的檢查。 - GitHub Actions 工作流程會自動對拉取請求執行 linting 和單元測試,結果會以狀態檢查的形式呈現,進而阻擋合併。
- 使用 OIDC 進行工作負載身份聯合是驗證 GitHub Actions 至 Azure 的首選方式。 它消除了儲存長效憑證的需求,並降低了與服務主體用戶端秘密相比的風險。
- GitHub Actions 工作流程會使用 Azure CLI 向 Azure Machine Learning 提交指令工作或管線工作。 觸發器包括推送、拉取請求、手動執行、排程,以及由中介機構如 Azure Logic Apps 或 Azure Functions 發送的儲存庫派遣事件。