共用方式為


部署批次推斷和預測的模型

本文說明如何部署 MLflow 模型以進行離線(批次和串流)推斷。 Databricks 建議您使用 MLflow 來部署機器學習模型以進行批次或串流推斷。 如需使用 MLflow 模型的一般資訊,請參閱 記錄、載入、註冊和部署 MLflow 模型

如需 Azure Databricks 上即時模型服務的相關信息,請參閱 使用 Azure Databricks 提供模型。

使用 MLflow 進行模型推斷

MLflow 可協助您產生批次或串流推斷的程序代碼。

您也可以自定義上述任一選項所產生的程式碼。 如需範例,請參閱下列筆記本:

  • 模型 推斷範例 會使用以 scikit-learn 定型的模型,並先前記錄至 MLflow 來示範如何載入模型,並用它來對不同格式的數據進行預測。 筆記本說明如何將模型當做 scikit-learn 模型套用至 pandas DataFrame,以及如何將模型套用為 PySpark UDF 至 Spark DataFrame。
  • MLflow 模型登錄範例示範如何使用模型登錄來建置、管理及部署模型。 在該頁面上,您可以搜尋 .predict 以識別離線(批次)預測的範例。

建立 Azure Databricks 作業

若要以作業形式執行批次或串流預測,請建立包含用來執行預測的程式代碼的筆記本或 JAR。 然後,以 Azure Databricks 作業的形式執行筆記本或 JAR。 作業可以立即或依排程執行

串流推斷

您可以從 MLflow 模型登錄自動產生筆記本,以整合 MLflow PySpark 推斷 UDF 與 Delta Live Tables

您也可以修改產生的推斷筆記本,以使用 Apache Spark 結構化串流 API。

使用深度學習模型的推斷

如需 Azure Databricks 上深度學習模型推斷的相關信息和範例,請參閱下列文章:

使用 MLlib 和 XGBoost4J 模型的推斷

若要使用 MLlib 和 XGBoost4J 模型進行可調整的模型推斷,請使用原生 transform 方法直接在 Spark DataFrame 上執行推斷。 MLlib 範例筆記本包含推斷步驟。

自定義和優化模型推斷

當您使用 MLflow API 在 Spark DataFrames 上執行推斷時,您可以將模型載入為 Spark UDF,並使用分散式運算大規模套用模型。

您可以自定義模型來新增前置處理或後置處理,並優化大型模型的計算效能。 自定義模型的絕佳選項是 MLflow pyfunc API,可讓您使用自定義邏輯包裝模型。

如果您需要進行進一步的自定義,您可以在 Pandas UDF 或 pandas 反覆運算器 UDF 中手動包裝機器學習模型。 請參閱深度學習範例

針對較小的數據集,您也可以使用連結庫所提供的原生模型推斷例程。