You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure ML环境构建后、训练脚本运行前安装本地Python包?

在Azure ML中运行训练脚本前安装本地包的解决方案

你需要在Azure ML环境完成conda依赖安装后、执行训练脚本前,安装位于实验目录下的本地包(通过pip install -e .),可以用以下几种方法实现:

方法1:在Environment中添加可编辑安装依赖

直接将本地包的可编辑安装加入环境的pip依赖列表,Azure ML会在初始化conda环境后自动执行这个安装步骤:

from azureml.core import Environment
from azureml.core.runconfig import DockerConfiguration, ScriptRunConfig

# 从conda配置文件创建环境
env = Environment.from_conda_specification("experiment_env", "my_environment.yml")

# 将本地包的可编辑安装添加到pip依赖
env.python.conda_dependencies.add_pip_requirement("-e .")

# 构建ScriptRunConfig
script_config = ScriptRunConfig(source_directory=experiment_folder,
                                script='path_to_file/classifier_train.py',
                                arguments=arguments,
                                environment=env,
                                docker_runtime_config=DockerConfiguration(use_docker=True))

方法2:使用启动脚本封装执行流程

编写一个启动脚本,先执行本地包安装,再调用训练脚本,确保执行顺序:

  1. 在实验目录(experiment_folder)下创建start_train.py:
import subprocess
import sys

# 安装本地包
subprocess.run([sys.executable, "-m", "pip", "install", "-e", "."], check=True)

# 传递参数并启动训练脚本
subprocess.run([sys.executable, "path_to_file/classifier_train.py"] + sys.argv[1:], check=True)
  1. 修改ScriptRunConfig指向启动脚本:
script_config = ScriptRunConfig(source_directory=experiment_folder,
                                script='start_train.py',
                                arguments=arguments,
                                environment=env,
                                docker_runtime_config=DockerConfiguration(use_docker=True))

方法3:自定义ScriptRunConfig的command命令

直接构造完整的执行命令,用&&保证安装完成后再运行训练脚本:

script_config = ScriptRunConfig(source_directory=experiment_folder,
                                command=[
                                    "pip", "install", "-e", ".",
                                    "&&",
                                    "python", "path_to_file/classifier_train.py"
                                ] + arguments,
                                environment=env,
                                docker_runtime_config=DockerConfiguration(use_docker=True))

内容的提问来源于stack exchange,提问作者mayool

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 11:05:21