本部分假定你已了解 Docker 和 Azure 机器学习环境。
步骤 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 ######
requests == 2.32.3 # Version Matching. Must be version 2.32.3
numpy >= 1.26.0 # Minimum version 1.26.0
coverage != 3.5 # Version Exclusion. Anything except version 3.5
pillow ~= 11.0 # Compatible release. Same as >= 11.0, == 11.*
<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
注意
从提示流基映像生成此 Docker 映像 mcr.microsoft.com/azureml/promptflow/promptflow-runtime:<newest_version>。 如果可能,请使用 基础映像的最新版本。
步骤 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 的详细信息,请参阅管理环境。