批次端點
Azure Machine Learning 可讓您實作批次端點和部署,以使用機器學習模型和管線執行長時間執行的非同步推斷。 當您訓練機器學習模型或管線時,您需要將其部署,以便其他人用來搭配新的輸入資料來產生預測。 使用模型或管線產生預測的流程稱為推斷。
批次端點會接收資料的指標,並以非同步方式執行作業,以在計算叢集上平行處理資料。 批次端點會將輸出儲存至資料存放區,以供進一步分析。 在下列情況下使用批次端點:
- 您有昂貴的模型或管線,其需要較長的執行時間。
- 您想要讓機器學習管線運作並重複使用元件。
- 您必須對大量資料執行推斷,這些資料分散在多個檔案中。
- 您沒有低延遲需求。
- 您的模型輸入會儲存在儲存體帳戶或 Azure Machine Learning 資料資產中。
- 您可以利用平行處理。
批次部署
部署是一組資源和計算,用於實作端點提供的功能。 每個端點都可以裝載數個具有不同設定的部署,這項功能有助於將「端點的介面」與部署所定義的「實作詳細資料」分離。 叫用批次端點時,此動作會自動將用戶端路由至其預設部署。 您可以隨時設定和變更此預設部署。
Azure Machine Learning 批次端點中可進行兩種類型的部署:
模型部署
模型部署可讓您大規模地進行模型推斷,讓您以低延遲和非同步方式處理大量資料。 Azure Machine Learning 會自動檢測可擴縮性,方法是跨計算叢集中多個節點提供推斷處理程序的平行處理。
使用模型部署的時機:
- 您有需要較長時間才能執行推斷的昂貴模型。
- 您必須對大量資料執行推斷,這些資料分散在多個檔案中。
- 您沒有低延遲需求。
- 您可以利用平行處理。
模型部署的主要優點是,您可以使用為線上端點進行即時推斷而部署的相同資產,但現在,您可以大規模地以批次方式執行這些資產。 如果您的模型需要簡單的前置處子或後置處理,您可以撰寫評分指令碼,以執行所需的資料轉換。
若要在批次端點中建立模型部署,您需要指定下列元素:
- 模型
- 計算叢集
- 評分指令碼 (對 MLflow 模型為選擇性)
- 環境 (對 MLflow 模型為選擇性)
管線元件部署
管線元件部署可讓整個處理圖形 (或管線) 運作,以低延遲和非同步的方式執行批次推斷。
使用管線元件部署的時機:
- 您需要讓可分解為多個步驟的完整計算圖形運作。
- 您需要在推斷管線中重複使用定型管線中的元件。
- 您沒有低延遲需求。
管線元件部署的主要優點是重複使用平台中已經存在的元件,以及能夠操作複雜的推斷常式的功能。
若要在批次端點中建立管線元件部署,您需要指定下列元素:
- 管線元件
- 計算叢集設定
批次端點也可讓您從現有的管線作業建立管線元件部署。 這麼做時,Azure Machine Learning 會自動從作業中建立管線元件。 這可簡化這些部署類型的使用。 不過,最好一律明確建立管線元件,以簡化 MLOps 作法。
成本管理
叫用批次端點會觸發非同步批次推斷作業。 Azure Machine Learning 會在作業啟動時自動佈建計算資源,並在作業完成時自動將其解除配置。 因此,您只需在使用時支付計算費用。
提示
部署模型時,您可針對每個個別批次推斷作業覆寫計算資源設定 (例如執行個體計數) 和進階設定 (例如小型批次大小、錯誤臨界值等等)。 藉由利用這些特定設定,您可以加速執行並降低成本。
批次端點也可以在低優先順序的 VM 上執行。 批次端點可以自動從解除配置的 VM 復原,並在部署模型以供推斷時,從其離開的位置繼續工作。 如需如何使用低優先順序 VM 來降低批次推斷工作負載成本的詳細資訊,請參閱在批次端點中使用低優先順序 VM (英文)。
最後,Azure Machine Learning 不會針對批次端點或批次部署本身向您收費,因此您可以將端點和部署組織成最適合您的案例。 端點和部署可以使用獨立或共用叢集,因此您可以精細控制作業要取用哪些計算。 在叢集中使用縮放至零,以確保閒置時不會取用任何資源。
簡化 MLOps 實務
批次端點可以在相同的端點下處理多個部署,讓您變更端點的實作,而不需要變更取用者用來叫用的 URL。
您可以新增、移除和更新部署,而不會影響端點本身。
彈性資料來源和儲存體
批次端點會直接從儲存體讀取和寫入資料。 您可以指定 Azure Machine Learning 資料存放區、Azure Machine Learning 資料資產或儲存體帳戶作為輸入。 如需支援輸入選項及如何指定選項的詳細資訊,請參閱建立作業和輸入資料至批次端點。
安全性
批次端點提供在企業設定中操作生產層級工作負載所需的所有功能。 其支援安全工作區上的私人網路、Microsoft Entra 驗證,無論是使用使用者主體 (例如使用者帳戶) 或服務主體 (例如受控或非受控識別)。 批次端點所產生的作業會在啟動程式的識別下執行,讓您彈性地實作任何案例。 如需使用批次端點時進行授權的詳細資訊,請參閱如何在批次端點上進行驗證。