共用方式為


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
str

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

預設值: None
id
str

要擷取之映像的特定標識碼。 (標識元為 “:”)

預設值: None
tags

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

預設值: None
properties

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

預設值: None
version
str

當同時指定版本和名稱時,將會傳回映像的特定版本。

預設值: 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
必要
str

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

runtime
必要
str

要用於映像的運行時間。 目前支持的運行時間是 『spark-py』 和 『python』。

conda_file
str

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

預設值: None
docker_file
str

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

預設值: None
schema_file
str

本機檔案的路徑,其中包含部署映射時要使用的 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
str

提供此影像的文字描述。

預設值: None
base_image
str

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

預設值: None
base_image_registry

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

預設值: None
cuda_version
str

要針對需要 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