Share via


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

本文提供部署和查詢自定義模型的基本步驟,也就是傳統 ML 模型、安裝在 Unity 目錄中,或使用 Azure Databricks 模型服務在工作區模型登錄中註冊。

以下是描述為產生 AI 和 LLM 提供服務和部署 基礎模型的 指南:

步驟 1:將模型記錄至模型登錄

記錄模型服務的方式有不同:

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

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

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
    )

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

步驟 2:使用服務 UI 建立端點

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

  1. 按兩下 提要欄位中的 [服務 ] 以顯示 [服務 UI]。

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

    Databricks UI 中的模型服務窗格

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

  4. 在 [ 服務實體] 區 段中

    1. 按兩下 [ 實體] 欄位,以開啟 [ 選取提供的實體 ] 表單。
    2. 選取您想要提供服務的模型類型。 窗體會根據您的選擇動態更新。
    3. 選取您想要提供服務的模型和模型版本。
    4. 選取要路由傳送至您服務模型的流量百分比。
    5. 選取要使用的計算大小。 您可以針對工作負載使用 CPU 或 GPU 計算。 在 GPU 上提供模型的支持處於 公開預覽狀態。 如需可用 GPU 計算的詳細資訊,請參閱 GPU 工作負載類型
    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 服務 UI 外部存取服務端點,您需要 。DATABRICKS_API_TOKEN

重要

Databricks 是生產案例的安全性最佳做法,建議您在生產期間使用 機器對機器 OAuth 令牌 進行驗證。

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

Notebook 範例

請參閱下列筆記本,以使用模型服務來提供 MLflow transformers 模型。

部署擁抱臉部 transformers 模型筆記本

取得筆記本

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

部署 MLflow pyfunc 模型筆記本

取得筆記本