提问人:Stefan 提问时间:5/4/2021 最后编辑:Stefan 更新时间:8/17/2021 访问量:3946
如何使用 azureml.core.Environment 中的 azureml.core.runconfig.DockerConfiguration 类或 azureml.core.ScriptRunConfig 类
How to use azureml.core.runconfig.DockerConfiguration class in azureml.core.Environment or azureml.core.ScriptRunConfig class
问:
我使用 Microsoft Azure 机器学习 (Azure-ml) 来运行我的 (python) 试验。
为了指定 VM 和 python 环境,我使用:
from azureml.core import Environment
from azureml.core import ScriptRunConfig
# Other imports and code...
# Specify VM and Python environment:
vm_env = Environment.from_conda_specification(name='my-test-env', file_path=PATH_TO_YAML_FILE)
vm_env.docker.enabled = True
vm_env.docker.base_image = 'mcr.microsoft.com/azureml/openmpi3.1.2-cuda10.2-cudnn7-ubuntu18.04'
# Finally, use the environment in the ScriptRunConfig:
src = ScriptRunConfig(source_directory=DEPLOY_CONTAINER_FOLDER_PATH,
script=SCRIPT_FILE_TO_EXECUTE,
arguments=EXECUTE_ARGUMENTS,
compute_target=compute_target,
environment=vm_env)
我收到以下警告:vm_env.docker.enabled = True
'enabled' is deprecated. Please use the azureml.core.runconfig.DockerConfiguration object with the 'use_docker' param instead.
有关 DockerSection
类和 DockerConfiguration 类
的文档对应用 .DockerConfiguration Class
我不知道如何使用azureml.core.runconfig.DockerConfiguration
对象。有人可以给我举个例子吗?谢谢!
答:
14赞
Erik Z
5/6/2021
#1
该类现在接受一个参数,您可以在其中传递对象。ScriptRunConfig
docker_runtime_config
DockerConfiguration
因此,代码将如下所示:
from azureml.core import Environment
from azureml.core import ScriptRunConfig
from azureml.core.runconfig import DockerConfiguration
# Other imports and code...
# Specify VM and Python environment:
vm_env = Environment.from_conda_specification(name='my-test-env', file_path=PATH_TO_YAML_FILE)
vm_env.docker.base_image = 'mcr.microsoft.com/azureml/openmpi3.1.2-cuda10.2-cudnn7-ubuntu18.04'
docker_config = DockerConfiguration(use_docker=True)
# Finally, use the environment in the ScriptRunConfig:
src = ScriptRunConfig(source_directory=DEPLOY_CONTAINER_FOLDER_PATH,
script=SCRIPT_FILE_TO_EXECUTE,
arguments=EXECUTE_ARGUMENTS,
compute_target=compute_target,
environment=vm_env,
docker_runtime_config=docker_config)
评论
0赞
Stefan
5/7/2021
谢谢!我将在接下来的几天内尝试一下,并让您知道它是如何:)的。
0赞
Stefan
5/8/2021
它完美无缺。对于阅读本文的其他人,请记住您还必须使用 .from azureml.core.runconfig import DockerConfiguration
0赞
Erik Z
5/9/2021
太棒了 - 很高兴听到它!
9赞
Moshe Zvi
8/12/2021
#2
为使用 RunConfiguration 的任何人添加另一个示例:
改变:
run_config = RunConfiguration()
run_config.environment.docker.enabled = True
自:
run_config = RunConfiguration()
docker_config = DockerConfiguration(use_docker=True)
run_config.docker = docker_config
run_config
以后可以用作 PythonScriptStep 的参数。
请注意,docker 属性已从 internal 移至 direct。environment
RunConfiguration
评论
0赞
David Clarance
10/29/2021
谢谢,这对于我正在努力解决的问题非常有用。
0赞
Moran Neuhof
11/8/2021
我也很好用,一个快速简便的修复。谢谢!
评论