共用方式為


教學課程:部署和查詢自訂模型

本文提供使用 Mosaic AI 模型服務來部署和查詢自訂模型 (為傳統 ML 模型) 的基本步驟。 模型必須在 Unity 目錄或工作區模型登錄中註冊。

如需了解如何提供和部署生成式 AI 模型,請參閱以下文章:

步驟 1:記錄模型

記錄模型以供模型服務的方法有幾種不同:

記錄技術 描述
自動記錄 當您使用 Databricks Runtime 進行機器學習時,系統會自動開啟此功能。 這是最簡單的方式,但會限制您的控制能力。
使用 MLflow 的內建口味進行記錄 您可以手動記錄模型,使用 MLflow 的內建模型類型。
使用 pyfunc 的自訂記錄 如果您有自訂模型,或在推斷前後需要額外的步驟,請使用此方式。

下列範例示範如何使用 transformer 類別來記錄 MLflow 模型,並指定模型所需的參數。

with mlflow.start_run():
    model_info = mlflow.transformers.log_model(
        transformers_model=text_generation_pipeline,
        artifact_path="my_sentence_generator",
        inference_config=inference_config,
        registered_model_name='gpt2',
        input_example=input_example,
        signature=signature
    )

記錄模型之後,請務必檢查您的模型是否已在 Unity 目錄 或 MLflow 模型登錄中註冊。

步驟 2:使用 Serving UI 建立端點

記錄已註冊的模型並準備好提供服務之後,您可以使用 [服務] UI 建立模型服務端點。

  1. 按一下側邊欄中的 [服務] 以顯示 [服務] UI。

  2. 按下 [建立服務端點]

    Databricks UI 中的模型服務窗格

  3. 在 [名稱] 欄位中,提供端點的名稱。

  4. [服務實體] 區 段中

    1. 點擊 實體 欄位,以開啟 選取已處理的實體 表單。
    2. 選取您想要提供服務的模型類型。 表單會根據您的選擇動態更新。
    3. 選擇您想要提供服務的模型及其版本。
    4. 選擇要傳送到服務模型的流量百分比。
    5. 選取要使用的計算大小。
    6. [擴展計算] 下,選取符合此服務模型可同時處理的要求數量的擴展計算規模。 這個數字應該大致等於 QPS x 模型執行時間。
      1. 可用大小包括適用於 0-4 個要求的 [小型]、適用於 8-16 個要求的 [中型],以及適用於16-64 個要求的 [大型]
    7. 指定端點在不使用時是否應該調整為零。
  5. 按一下 [建立]。 [服務端點] 頁面隨即出現,[服務端點狀態] 顯示為 [未就緒]。

    建立服務端點的模型

如果您想要使用 Databricks 服務 API 以程式設計方式建立端點,請參閱 建立自定義模型服務端點

步驟 3:查詢端點

測試及傳送評分要求至服務模型的最簡單且最快方式,就是使用 服務 UI。

  1. 從 [ 服務端點] 頁面中,選取 [查詢端點]。

  2. 以 JSON 格式插入模型輸入資料,然後按下 [傳送要求] 。 如果已透過輸入範例記錄模型,請按一下 [顯示範例] 以載入輸入範例。

       {
       "inputs" : ["Hello, I'm a language model,"],
       "params" : {"max_new_tokens": 10, "temperature": 1}
       }
    

若要傳送評分要求,請使用其中一個支援的索引鍵和對應至輸入格式的 JSON 對象來建構 JSON。 如需支援的格式以及如何使用 API 傳送評分要求的指南,請參閱 自定義模型的服務端點查詢

如果您打算在 Azure Databricks Serving UI 外部存取服務端點,您需要 DATABRICKS_API_TOKEN

重要

在生產環境中,為了達到安全性的最佳做法,Databricks 建議您使用 機器對機器 OAuth 令牌 進行驗證。

為了測試和開發,Databricks 建議使用屬於 服務主體 的個人存取令牌,而不是工作區使用者。 若要建立服務主體的令牌,請參閱 管理服務主體的令牌

筆記本範例

請參閱以下筆記本,以使用模型服務來部署 MLflow 框架的 transformers 模型。

部署 Hugging Face Transformers 模型的筆記本環境

取得筆記本

請參閱以下筆記本,以使用模型服務來部署 MLflow 框架的 pyfunc 模型。 如需自定義模型部署的其他詳細數據,請參閱 使用模型服務部署 Python 程式代碼

部署 MLflow pyfunc 模型筆記本

取得筆記本