ContainerImage 類別
表示容器映射,目前僅適用于 Docker 映射。
這個類別已被取代。 請改用 Environment 類別。
映射包含執行模型所需的相依性,包括:
執行時間
Conda 檔案中指定的 Python 環境定義
啟用 GPU 支援的能力
特定執行命令的自訂 Docker 檔案
映射建構函式。
這個類別已被取代。 請改用 Environment 類別。
影像建構函式可用來擷取與所提供工作區相關聯之 Image 物件的雲端標記法。 會傳回對應至所擷取之 Image 物件之特定類型的子類別實例。
- 繼承
-
ContainerImage
建構函式
ContainerImage(workspace, name=None, id=None, tags=None, properties=None, version=None)
參數
名稱 | Description |
---|---|
workspace
必要
|
包含要擷取之 Image 的工作區物件 |
name
|
要擷取的 Image 名稱。 如果存在,則會傳回最新版本 預設值: None
|
id
|
要擷取之影像的特定識別碼。 (識別碼為 「:」) 預設值: None
|
tags
|
會根據提供的清單,依 'key' 或 '[key, value]' 來篩選影像結果。 例如 ['key', ['key2', 'key2 value']] 預設值: None
|
properties
|
會根據提供的清單,依 'key' 或 '[key, value]' 來篩選影像結果。 例如 ['key', ['key2', 'key2 value']] 預設值: None
|
version
|
同時指定版本和名稱時,將會傳回映射的特定版本。 預設值: None
|
備註
使用類別建構函式來擷取 Image ContainerImage,方法是傳遞先前建立之 ContainerImage 的名稱或識別碼。 下列程式碼範例顯示依名稱和識別碼從工作區擷取影像。
container_image_from_name = Image(workspace, name="image-name")
container_image_from_id = Image(workspace, id="image-id")
若要建立要用於部署的新映射組態,請建 ContainerImageConfig 置 物件,如下列程式碼範例所示:
from azureml.core.image import ContainerImage
image_config = ContainerImage.image_configuration(execution_script="score.py",
runtime="python",
conda_file="myenv.yml",
description="image for model",
cuda_version="9.0"
)
方法
image_configuration |
建立並傳回 ContainerImageConfig 物件。 此函式會接受參數來定義模型在 Webservice 中應如何執行,以及它必須能夠執行的特定環境和相依性。 |
run |
使用指定的輸入資料在本機執行映射。 必須安裝 Docker 並執行才能運作。 此方法只能在 CPU 上運作,因為已啟用 GPU 的映射只能在 Microsoft Azure 服務上執行。 |
serialize |
將此 ContainerImage 物件轉換成 JSON 序列化字典。 |
image_configuration
建立並傳回 ContainerImageConfig 物件。
此函式會接受參數來定義模型在 Webservice 中應如何執行,以及它必須能夠執行的特定環境和相依性。
static image_configuration(execution_script, runtime, conda_file=None, docker_file=None, schema_file=None, dependencies=None, enable_gpu=None, tags=None, properties=None, description=None, base_image=None, base_image_registry=None, cuda_version=None)
參數
名稱 | Description |
---|---|
execution_script
必要
|
本機 Python 檔案的路徑,其中包含要針對映射執行的程式碼。 必須同時包含 init () 並執行 (input_data) 函式,以定義 Webservice 的模型執行步驟。 |
runtime
必要
|
要用於映射的執行時間。 目前支援的執行時間是 'spark-py' 和 'python'。 |
conda_file
|
本機 .yml 檔案的路徑,其中包含要用於映射的 Conda 環境定義。 預設值: None
|
docker_file
|
本機檔案的路徑,其中包含設定映射時要執行的其他 Docker 步驟。 預設值: None
|
schema_file
|
本機檔案的路徑,其中包含部署映射時要使用的 Web 服務架構。 用於產生模型部署的 Swagger 規格。 預設值: None
|
dependencies
|
映射需要執行之其他檔案/資料夾的路徑清單。 預設值: None
|
enable_gpu
|
是否要在映射中啟用 GPU 支援。 GPU 映射必須用於 Microsoft Azure 服務,例如 Azure 容器執行個體、Azure Machine Learning Compute、Azure 虛擬機器 和 Azure Kubernetes Service。 預設為 False 預設值: None
|
tags
|
索引鍵值標籤的字典,以提供此影像。 預設值: None
|
properties
|
索引鍵值屬性的字典,以提供此影像。 部署之後無法變更這些屬性,不過可以新增新的索引鍵值組。 預設值: None
|
description
|
要提供此影像的文字描述。 預設值: None
|
base_image
|
做為基底映射的自訂映射。 如果沒有提供基底映射,則會根據指定的執行時間參數來使用基底映射。 預設值: None
|
base_image_registry
|
包含基底映射的映射登錄。 預設值: None
|
cuda_version
|
要針對需要 GPU 支援的映射安裝 CUDA 版本。 GPU 映射必須用於 Microsoft Azure 服務,例如 Azure 容器執行個體、Azure Machine Learning Compute、Azure 虛擬機器 和 Azure Kubernetes Service。 支援的版本為 9.0、9.1 和 10.0。 如果已設定 'enable_gpu',這會預設為 '9.1'。 預設值: None
|
傳回
類型 | Description |
---|---|
建立映射時要使用的組態物件。 |
例外狀況
類型 | Description |
---|---|
run
使用指定的輸入資料在本機執行映射。
必須安裝 Docker 並執行才能運作。 此方法只能在 CPU 上運作,因為已啟用 GPU 的映射只能在 Microsoft Azure 服務上執行。
run(input_data)
參數
名稱 | Description |
---|---|
input_data
必要
|
<xref:varies>
執行時要傳遞至映射的輸入資料 |
傳回
類型 | Description |
---|---|
<xref:varies>
|
執行映射的結果。 |
例外狀況
類型 | Description |
---|---|
serialize
將此 ContainerImage 物件轉換成 JSON 序列化字典。
serialize()
傳回
類型 | Description |
---|---|
這個 ContainerImage 的 JSON 標記法。 |
例外狀況
類型 | Description |
---|---|