ContainerImage 類別

表示容器映射,目前僅適用于 Docker 映射。

這個類別已被取代。 請改用 Environment 類別。

映射包含執行模型所需的相依性,包括:

  • 執行時間

  • Conda 檔案中指定的 Python 環境定義

  • 啟用 GPU 支援的能力

  • 特定執行命令的自訂 Docker 檔案

影像建構函式。

這個類別已被取代。 請改用 Environment 類別。

影像建構函式是用來擷取與所提供工作區相關聯之 Image 物件的雲端標記法。 會傳回對應至所擷取 Image 物件之特定類型的子類別實例。

繼承
ContainerImage

建構函式

ContainerImage(workspace, name=None, id=None, tags=None, properties=None, version=None)

參數

workspace
Workspace
必要

包含要擷取之 Image 的工作區物件

name
str
預設值: None

要擷取的 Image 名稱。 如果存在,則會傳回最新版本

id
str
預設值: None

要擷取之影像的特定識別碼。 (識別碼為 「:」)

tags
list
預設值: None

會依據提供的清單篩選影像結果,方法是 'key' 或 '[key, value]'。 例如 ['key', ['key2', 'key2 value']]

properties
list
預設值: None

會依據提供的清單篩選影像結果,方法是 'key' 或 '[key, value]'。 例如 ['key', ['key2', 'key2 value']]

version
str
預設值: 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)

參數

execution_script
str
必要

本機 Python 檔案的路徑,其中包含要針對映射執行的程式碼。 必須同時包含 init () 並執行 (input_data) 函式,以定義 Webservice 的模型執行步驟。

runtime
str
必要

要用於映射的執行時間。 目前支援的執行時間是 'spark-py' 和 'python'。

conda_file
str
預設值: None

本機 .yml 檔案的路徑,其中包含要用於映射的 Conda 環境定義。

docker_file
str
預設值: None

本機檔案的路徑,其中包含設定映射時要執行的其他 Docker 步驟。

schema_file
str
預設值: None

本機檔案的路徑,其中包含部署映射時要使用的 Webservice 架構。 用於產生模型部署的 Swagger 規格。

dependencies
list[str]
預設值: None

映射需要執行之其他檔案/資料夾的路徑清單。

enable_gpu
bool
預設值: None

是否要在映射中啟用 GPU 支援。 GPU 映射必須用於 Microsoft Azure 服務,例如 Azure 容器執行個體、Azure Machine Learning Compute、Azure 虛擬機器 和 Azure Kubernetes Service。 預設為 False

tags
dict[str, str]
預設值: None

索引鍵值標籤的字典,以提供此影像。

properties
dict[str, str]
預設值: None

索引鍵值屬性的字典,以提供此影像。 部署之後,就無法變更這些屬性,但是可以新增新的索引鍵值組。

description
str
預設值: None

提供此影像的文字描述。

base_image
str
預設值: None

做為基底映射的自訂映射。 如果沒有提供基底映射,則會根據指定的執行時間參數使用基底映射。

base_image_registry
ContainerRegistry
預設值: None

包含基底映射的映射登錄。

cuda_version
str
預設值: None

要針對需要 GPU 支援的映射安裝 CUDA 版本。 GPU 映射必須用於 Microsoft Azure 服務,例如 Azure 容器執行個體、Azure Machine Learning Compute、Azure 虛擬機器 和 Azure Kubernetes Service。 支援的版本為 9.0、9.1 和 10.0。 如果已設定 'enable_gpu',則預設為 '9.1'。

傳回

建立映射時要使用的組態物件。

傳回類型

例外狀況

run

使用指定的輸入資料在本機執行映射。

必須安裝並執行 Docker 才能運作。 此方法只能在 CPU 上運作,因為已啟用 GPU 的映射只能在 Microsoft Azure 服務上執行。

run(input_data)

參數

input_data
<xref:varies>
必要

執行時要傳遞至映射的輸入資料

傳回

執行映射的結果。

傳回類型

<xref:varies>

例外狀況

serialize

將此 ContainerImage 物件轉換成 JSON 序列化字典。

serialize()

傳回

這個 ContainerImage 的 JSON 標記法。

傳回類型

例外狀況