自定义计算会话的基本映像

本部分假定你已了解 DockerAzure 机器学习环境

步骤 1:准备 docker 上下文

创建 image_build 文件夹

在本地环境中,创建包含以下文件的文件夹,文件夹结构应如下所示:

|--image_build
|  |--requirements.txt
|  |--Dockerfile
|  |--environment.yaml

requirements.txt 中定义所需的包

可选:在个人 pypi 存储库中添加包。

使用以下命令将包下载到本地:pip wheel <package_name> --index-url=<private pypi> --wheel-dir <local path to save packages>

打开 requirements.txt 文件,并在其中添加额外的包和特定版本。 例如:

###### Requirements with Version Specifiers ######
langchain == 0.0.149        # Version Matching. Must be version 0.0.149
keyring >= 4.1.1            # Minimum version 4.1.1
coverage != 3.5             # Version Exclusion. Anything except version 3.5
Mopidy-Dirble ~= 1.1        # Compatible release. Same as >= 1.1, == 1.*
<path_to_local_package>     # reference to local pip wheel package

有关如何构建 requirements.txt 文件的详细信息,请参阅 pip 文档中的要求文件格式

定义 Dockerfile

创建 Dockerfile 并添加以下内容,然后保存文件:

FROM <Base_image>
COPY ./* ./
RUN pip install -r requirements.txt

注意

应根据提示流基础映像(即 mcr.microsoft.com/azureml/promptflow/promptflow-runtime:<newest_version>)生成此 docker 映像。 如果可能,请使用最新版本的基础映像

步骤 2:创建自定义 Azure 机器学习环境

environment.yaml 中定义环境

在本地计算中,可以使用 CLI (v2) 基于 docker 映像创建自定义环境。

注意

az login # if not already authenticated

az account set --subscription <subscription ID>
az configure --defaults workspace=<Azure Machine Learning workspace name> group=<resource group>

打开 environment.yaml 文件并添加以下内容。 将 environment_name 占位符替换为所需的环境名称。<>

$schema: https://azuremlschemas.azureedge.net/latest/environment.schema.json
name: <environment_name>
build:
  path: .

创建环境

cd image_build
az ml environment create -f environment.yaml --subscription <sub-id> -g <resource-group> -w <workspace>

注意

生成环境映像可能需要几分钟时间。

转到工作区 UI 页,然后转到“环境”页面,找到你创建的自定义环境。

还可以在环境详细信息页中找到该图像,并将其用作提示流的计算会话的基础映像。 此映像还用于从 UI 生成用于流部署的环境。 详细了解如何在计算会话中指定基本映像

要了解有关环境 CLI 的详细信息,请参阅管理环境