使用自定義Python庫模型

在本文中,您將了解如何從一個私人包括自定義庫或庫鏡像服務器當你日誌模式,這樣你可以使用它們模型服務模型部署。你應該完成本指南詳細的步驟之後,你有一個訓練有素的ML模式可以部署但在你創建一個磚模型服務端點

模型開發通常需要使用自定義Python庫,包含預處理或後處理功能,自定義模型定義,和其他共享公用事業。此外,許多企業安全團隊鼓勵使用私人PyPi鏡子,如聯係或Artifactory,減少的風險供應鏈的攻擊。磚了原生支持安裝自定義庫和庫的私人鏡磚工作區。

需求

  • MLflow 1.29或更高版本

第一步:上傳相關文件

磚建議你上傳相關文件統一目錄。或者,您可以上傳磚文件係統(DBFS)使用磚UI。

確保你的圖書館提供給你的筆記本,你需要安裝使用% pip %。使用%皮普圖書館在當前筆記本和下載安裝到集群的依賴。

步驟2:日誌模型與自定義庫

重要的

指導在這一節中不是必需的,如果你安裝指向一個定製的私人圖書館PyPi鏡子。

你安裝庫和上傳後車輪文件統一目錄冊或者DBFS,下麵的代碼包含在您的腳本。在pip_requirements指定的路徑依賴文件。

mlflowsklearnlog_model(模型,“sklearn-model”,pip_requirements=(“scikit-learn”,“numpy”,“/體積/道路/ / dependency.whl”])

DBFS,使用以下:

mlflowsklearnlog_model(模型,“sklearn-model”,pip_requirements=(“scikit-learn”,“numpy”,“/ dbfs /道路/ / dependency.whl”])

如果你有一個自定義庫,您必須手動指定所有與你相關的Python庫模型配置日誌記錄時。你可以這樣做pip_requirementsconda_env參數log_model ()

重要的

如果使用DBFS,一定要包括一個斜杠,/之前,你dbfs當日誌路徑pip_requirements。了解更多關於DBFS路徑如何處理文件數據磚嗎

mlflow.utils.environment進口_mlflow_conda_envconda_env=_mlflow_conda_env(additional_conda_deps=沒有一個,additional_pip_deps=(“/卷/道路/ /依賴”),additional_conda_channels=沒有一個,)mlflowpyfunclog_model(,conda_env=conda_env)

步驟3:更新MLflow模型與Python輪子

MLflow提供了add_libraries_to_model ()實用程序來記錄您的模型與它的所有依賴項預包裝的Python輪子。這包您的自定義庫與模型除了所有規定的其他庫,作為您的模型的依賴性。這可以保證您的模型所使用的庫是完全可以從你的訓練環境。

在接下來的例子中,model_uri使用語法引用模型注冊表模型:/ <模型名稱> / <模型版本>

當您使用該模型注冊表URI,該實用程序生成一個新版本在您現有的注冊模式。

進口mlflow.models.utilsmlflow模型跑龍套add_libraries_to_model(<模型- - - - - -uri>)

步驟4:為您的模型

當一個新的模型版本模型中包含的包是可用的注冊表,您可以添加這個模型版本一個端點模型服務