將 ML 工作流程升級至 Unity Catalog 中的目標模型
本文說明如何移轉和升級現有的 Databricks 工作流程,以在 Unity Catalog 中使用模型。
需求
必要權限
若要在 Unity Catalog 中執行模型訓練、部署或推斷工作流程,執行工作流程的主體必須擁有保存模型的目錄和結構描述的 USE CATALOG
和 USE SCHEMA
權限。
也需要下列權限:
- 若要建立模型,主體必須具有
CREATE MODEL
權限。 - 若要載入或部署模型,主體必須具有已註冊模型的
EXECUTE
權限。
只有已註冊模型的擁有者可執行下列動作:
- 建立新的模型版本。
- 在已註冊模型上設定別名。
計算需求
為工作流程指定的計算資源必須擁有 Unity Catalog 的存取權。 請參閱存取模式。
建立平行訓練、部署和推斷工作流程
若要將模型訓練和推斷工作流程升級至 Unity Catalog,Databricks 建議使用遞增方法,在其中建立利用 Unity Catalog 中模型的平行訓練、部署和推斷管線。 當您熟悉使用 Unity Catalog 的結果時,可將下游取用者切換為讀取批次推斷輸出,或在服務端點中增加路由傳送至 Unity Catalog 中模型的流量。
模型訓練工作流程
複製模型訓練工作流程。 確認執行工作流程的主體和為工作流程指定的計算符合需求。
接下來,修改複製工作流程中的模型訓練程式碼。 您可能需要複製工作流程執行的筆記本,或在複製的工作流程中建立新的 Git 分支並設定目標。 請遵循下列步驟,來安裝必要的 MLflow 版本,並將用戶端設定為在訓練程式碼中以 Unity Catalog 為目標。 然後,更新模型訓練程式碼,以向 Unity Catalog 註冊模型。 請參閱訓練和註冊 Unity Catalog 相容模型。
模型部署工作流程
複製模型部署工作流程。 確認執行工作流程的主體和為工作流程指定的計算符合需求。
如果您的部署工作流程中有模型驗證邏輯,將其更新為從 UC 載入模型版本。 使用別名來管理生產模型推出。
模型推斷工作流程
批次推斷工作流程
複製批次推斷工作流程。 確認執行工作流程的主體和為工作流程指定的計算符合需求。
模型服務工作流程
如果您使用 Mosaic AI 模型服務,則不需要複製現有的端點。 請改用流量分割功能,開始將少量流量路由傳送至 Unity Catalog 中的模型。 在您使用 Unity Catalog 檢閱結果時,請增加流量,直到重新路由傳送所有流量為止。
跨環境升階模型
跨環境提升模型的運作方式與 Unity Catalog 中的模型不同。 如需詳細資訊,請參閱跨環境升階模型。
使用工作 Webhook 進行模型部署的手動核准
Databricks 建議您盡可能自動化模型部署,並在模型部署程序期間使用適當的檢查和測試。 不過,如果您確實需要執行手動核准來部署生產模型,可在模型訓練工作成功完成後,使用工作通知來呼叫外部 CI/CD 系統,要求手動核准以部署模型。 提供手動核准之後,CI/CD 系統就可部署模型版本來提供流量,例如,在上面設定「Champion」的別名。