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
|
備註
藉由傳遞先前建立的 ContainerImage 的名稱或標識碼, Image 使用類別建構函式擷取 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 的映像只能在 azure 服務Microsoft上執行。 |
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() 和 run(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 機器學習 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 機器學習 Compute、Azure 虛擬機器 和 Azure Kubernetes Service。 支援的版本為9.0、9.1和10.0。 如果已設定 『enable_gpu』,則預設為 『9.1』。 預設值: None
|
傳回
類型 | Description |
---|---|
建立映像時要使用的組態物件。 |
例外狀況
類型 | Description |
---|---|
run
使用指定的輸入數據在本機執行映像。
必須安裝並執行 Docker 才能運作。 此方法只能在 CPU 上運作,因為已啟用 GPU 的映像只能在 azure 服務Microsoft上執行。
run(input_data)
參數
名稱 | Description |
---|---|
input_data
必要
|
<xref:varies>
執行時要傳遞至影像的輸入數據 |
傳回
類型 | Description |
---|---|
<xref:varies>
|
執行映像的結果。 |
例外狀況
類型 | Description |
---|---|
serialize
將此 ContainerImage 物件轉換成 JSON 串行化字典。
serialize()
傳回
類型 | Description |
---|---|
這個 ContainerImage 的 JSON 表示法。 |
例外狀況
類型 | Description |
---|---|