Environment 類別

為機器學習實驗設定可重現的 Python 環境。

環境會定義機器學習實驗中使用的 Python 套件、環境變數和 Docker 設定,包括資料準備、定型和部署至 Web 服務。 環境是在 Azure Machine Learning Workspace 中管理和建立版本。 您可以更新現有的環境,並擷取要重複使用的版本。 環境專屬於其所建立的工作區,且無法跨不同的工作區使用。

如需環境的詳細資訊,請參閱 建立和管理可重複使用的環境

類別環境建構函式。

繼承
azureml._base_sdk_common.abstract_run_config_element._AbstractRunConfigElement
Environment

建構函式

Environment(name, **kwargs)

參數

名稱 Description
name
必要

環境的名稱。

注意

請勿使用 「Microsoft」 或 「AzureML」 來啟動您的環境名稱。 前置詞 「Microsoft」 和 「AzureML」 會保留給策劃環境。 如需有關策劃環境的詳細資訊,請參閱 建立和管理可重複使用的環境

備註

Azure Machine Learning 提供策劃的環境,這些是預先定義的環境,可提供良好的起點來建置您自己的環境。 策劃的環境是由快取的 Docker 映射所支援,可提供較低的執行準備成本。 如需有關策劃環境的詳細資訊,請參閱 建立和管理可重複使用的環境

在 Azure Machine Learning 中建立環境的方式有很多種,包括當您:

下列範例示範如何具現化新的環境。


   from azureml.core import Environment
   myenv = Environment(name="myenv")

您可以註冊環境來管理環境。 這樣做可讓您追蹤環境的版本,並在未來的執行中重複使用它們。


   myenv.register(workspace=ws)

如需使用環境的詳細資訊,請參閱使用環境Jupyter Notebook。

變數

名稱 Description
Environment.databricks

區段會設定 azureml.core.databricks.DatabricksSection 程式庫相依性。

docker

本節會設定與建置至環境規格的最終 Docker 映射相關的設定,以及是否要使用 Docker 容器來建置環境。

inferencing_stack_version

本節會指定新增至映射的推斷堆疊版本。 若要避免新增推斷堆疊,請勿設定此值。 有效值:"latest"。

python

本節會指定要在目標計算上使用的 Python 環境和解譯器。

spark

此區段可設定 Spark 設定。 只有當架構設為 PySpark 時,才會使用此設定。

r

本節會指定要在目標計算上使用的 R 環境。

version

環境的版本。

asset_id

資產識別碼。 在註冊環境時填入。

方法

add_private_pip_wheel

將磁片上的私人 pip wheel 檔案上傳至連結至工作區的 Azure 儲存體 Blob。

如果工作區儲存體 Blob 中已經有相同名稱的私人 pip 滾輪,則會擲回例外狀況。

build

在雲端中建置此環境的 Docker 映射。

build_local

建置本機 Docker 或 conda 環境。

clone

複製環境物件。

傳回具有新名稱之環境物件的新實例。

from_conda_specification

從環境規格 YAML 檔案建立環境物件。

若要取得環境規格 YAML 檔案,請參閱 conda 使用者指南中的 管理環境

from_docker_build_context

從 Docker 建置內容建立環境物件。

from_docker_image

使用選擇性的 Python 相依性,從基底 Docker 映射建立環境物件。

如果指定conda_specification或pip_requirements,則會將 Python 層新增至環境。 conda_specification和pip_requirements互斥。

from_dockerfile

使用選擇性的 Python 相依性,從 Dockerfile 建立環境物件。

如果指定conda_specification或pip_requirements,則會將 Python 層新增至環境。 conda_specification和pip_requirements互斥。

from_existing_conda_environment

建立從本機現有 conda 環境建立的環境物件。

若要取得現有 conda 環境的清單,請執行 conda env list 。 如需詳細資訊,請參閱 Conda 使用者指南中的 管理環境

from_pip_requirements

建立從 pip 需求檔案建立的環境物件。

如果未指定 pip_version, 則會新增未釘選的 pip 相依性。

get

傳回環境物件。

如果指定了 label,則會傳回先前以 值標示的物件。 只能指定其中一個版本或標籤參數。 如果兩者都遺漏,則會傳回最新版的 Environment 物件。

get_image_details

傳回影像詳細資料。

label

在工作區中加上指定值的標籤環境物件。

list

傳回包含工作區中環境的字典。

load_from_directory

從目錄中的檔案載入環境定義。

register

在您的工作區中註冊環境物件。

save_to_directory

以容易編輯的格式將環境定義儲存至目錄。

add_private_pip_wheel

將磁片上的私人 pip wheel 檔案上傳至連結至工作區的 Azure 儲存體 Blob。

如果工作區儲存體 Blob 中已經有相同名稱的私人 pip 滾輪,則會擲回例外狀況。

static add_private_pip_wheel(workspace, file_path, exist_ok=False)

參數

名稱 Description
workspace
必要

要用來註冊私人 pip wheel 的工作區物件。

file_path
必要
str

磁片上本機 pip 滾輪的路徑,包括副檔名。

exist_ok

指出如果滾輪已經存在,是否擲回例外狀況。

預設值: False

傳回

類型 Description
str

傳回 Azure Blob 儲存體上上傳之 pip wheel 的完整 URI,以用於 conda 相依性。

build

在雲端中建置此環境的 Docker 映射。

build(workspace, image_build_compute=None)

參數

名稱 Description
workspace
必要

工作區及其相關聯的Azure Container Registry影像儲存所在的位置。

image_build_compute
str

將執行映射建置的計算名稱

預設值: None

傳回

類型 Description

傳回映射組建詳細資料物件。

build_local

建置本機 Docker 或 conda 環境。

build_local(workspace, platform=None, **kwargs)

參數

名稱 Description
workspace
必要

工作區。

platform
str

平台。 其中一個 LinuxWindowsOSX。 預設會使用目前的平臺。

預設值: None
kwargs
必要

進階關鍵字引數

傳回

類型 Description
str

將進行中的 Docker 或 conda 建置輸出串流至主控台。

備註

下列範例示範如何建置本機環境。 請確定 工作區 已具現化為有效的 azureml.core.workspace.Workspace 物件

建置本機 conda 環境


   from azureml.core import Environment
   myenv = Environment(name="myenv")
   registered_env = myenv.register(workspace)
   registered_env.build_local(workspace)

建置本機 Docker 環境


   from azureml.core import Environment
   myenv = Environment(name="myenv")
   registered_env = myenv.register(workspace)
   registered_env.build_local(workspace, useDocker=True)

在本機建置 Docker 映射,並選擇性地將其推送至與工作區相關聯的容器登錄


   from azureml.core import Environment
   myenv = Environment(name="myenv")
   registered_env = myenv.register(workspace)
   registered_env.build_local(workspace, useDocker=True, pushImageToWorkspaceAcr=True)

clone

複製環境物件。

傳回具有新名稱之環境物件的新實例。

clone(new_name)

參數

名稱 Description
new_name
必要
str

新增環境名稱

傳回

類型 Description

新增環境物件

from_conda_specification

從環境規格 YAML 檔案建立環境物件。

若要取得環境規格 YAML 檔案,請參閱 conda 使用者指南中的 管理環境

static from_conda_specification(name, file_path)

參數

名稱 Description
name
必要
str

環境名稱。

file_path
必要
str

conda 環境規格 YAML 檔案路徑。

傳回

類型 Description

環境物件。

from_docker_build_context

從 Docker 建置內容建立環境物件。

static from_docker_build_context(name, docker_build_context)

參數

名稱 Description
name
必要
str

環境名稱。

docker_build_context
必要

DockerBuildCoNtext 物件。

傳回

類型 Description

環境物件。

from_docker_image

使用選擇性的 Python 相依性,從基底 Docker 映射建立環境物件。

如果指定conda_specification或pip_requirements,則會將 Python 層新增至環境。 conda_specification和pip_requirements互斥。

static from_docker_image(name, image, container_registry=None, conda_specification=None, pip_requirements=None)

參數

名稱 Description
name
必要
str

環境名稱。

image
必要
str

完整映射名稱。

conda_specification
str

conda 規格檔案。

預設值: None
container_registry

私人容器存放庫詳細資料。

預設值: None
pip_requirements
str

pip 需求檔案。

預設值: None

傳回

類型 Description

環境物件。

備註

如果基底映射來自需要授權的私人存放庫,且未在 AzureML 工作區層級上設定授權,則需要container_registry

from_dockerfile

使用選擇性的 Python 相依性,從 Dockerfile 建立環境物件。

如果指定conda_specification或pip_requirements,則會將 Python 層新增至環境。 conda_specification和pip_requirements互斥。

static from_dockerfile(name, dockerfile, conda_specification=None, pip_requirements=None)

參數

名稱 Description
name
必要
str

環境名稱。

dockerfile
必要
str

Dockerfile 內容或檔案的路徑。

conda_specification
str

conda 規格檔案。

預設值: None
pip_requirements
str

pip 需求檔案。

預設值: None

傳回

類型 Description

環境物件。

from_existing_conda_environment

建立從本機現有 conda 環境建立的環境物件。

若要取得現有 conda 環境的清單,請執行 conda env list 。 如需詳細資訊,請參閱 Conda 使用者指南中的 管理環境

static from_existing_conda_environment(name, conda_environment_name)

參數

名稱 Description
name
必要
str

環境名稱。

conda_environment_name
必要
str

本機現有 conda 環境的名稱。

傳回

類型 Description

如果匯出 conda 規格檔案失敗,環境物件或 None。

from_pip_requirements

建立從 pip 需求檔案建立的環境物件。

如果未指定 pip_version, 則會新增未釘選的 pip 相依性。

static from_pip_requirements(name, file_path, pip_version=None)

參數

名稱 Description
name
必要
str

環境名稱。

file_path
必要
str

pip 需求檔案路徑。

pip_version
str

Conda 環境的 Pip 版本。

預設值: None

傳回

類型 Description

環境物件。

get

傳回環境物件。

如果指定了 label,則會傳回先前以 值標示的物件。 只能指定其中一個版本或標籤參數。 如果兩者都遺漏,則會傳回最新版的 Environment 物件。

static get(workspace, name, version=None, label=None)

參數

名稱 Description
workspace
必要

包含環境的工作區。

name
必要
str

要傳回的環境名稱。

version
str

要傳回的環境版本。

預設值: None
label
str

環境標籤值。

預設值: None

傳回

類型 Description

環境物件。

get_image_details

傳回影像詳細資料。

get_image_details(workspace)

參數

名稱 Description
workspace
必要

工作區。

傳回

類型 Description

以聽寫的形式傳回影像詳細資料

label

在工作區中加上指定值的標籤環境物件。

static label(workspace, name, version, labels)

參數

名稱 Description
workspace
必要

工作區

name
必要
str

環境名稱

version
必要
str

環境版本

labels
必要

要加上環境標籤的值

list

傳回包含工作區中環境的字典。

static list(workspace)

參數

名稱 Description
workspace
必要

要從中列出環境的工作區。

傳回

類型 Description
<xref:builtin.dict>[str, Environment]

環境物件的字典。

load_from_directory

從目錄中的檔案載入環境定義。

static load_from_directory(path)

參數

名稱 Description
path
必要
str

來原始目錄的路徑。

register

在您的工作區中註冊環境物件。

register(workspace)

參數

名稱 Description
workspace
必要

工作區

name
必要
str

傳回

類型 Description

傳回環境物件

save_to_directory

以容易編輯的格式將環境定義儲存至目錄。

save_to_directory(path, overwrite=False)

參數

名稱 Description
path
必要
str

目的地目錄的路徑。

overwrite

如果應該覆寫現有的目錄。 預設值為 false。

預設值: False

屬性

environment_variables

使用 azureml.core.RunConfiguration 物件來設定執行時間變數。