You need to enable JavaScript to run this app. 如何在Azure Machine Learning Python脚本步骤中引用工作区已注册模型
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure Machine Learning Python脚本步骤中引用工作区已注册模型

AML Linux计算集群Python脚本读取注册模型的方法

你需要先在提交任务时将工作区已注册的mymodel声明为任务输入,AML会自动将模型下载/挂载到计算节点,可通过以下两种方式获取读取路径:

方式1:使用默认路径读取

如果提交任务时未指定模型的挂载路径,可按默认规则读取:

  • 提交任务时将注册模型声明为输入,示例提交代码(本地执行的提交逻辑):
from azure.ai.ml import command
from azure.ai.ml.entities import Model

# 拉取工作区中已注册的mymodel,latest代表调用最新版本
my_model = Model(name="mymodel", version="latest")

# 定义任务,将模型设为名为registered_model的输入
job = command(
    code="./src",
    command="python your_script.py",
    inputs={
        "registered_model": my_model
    },
    environment="你的环境名@latest",
    compute="你的Linux计算集群名"
)
  • 集群运行的Python脚本中,可通过两种路径读取:
    • 相对路径:模型默认存放于./inputs/<输入名>/,输入名对应上面定义的registered_model,读取代码如下:
    import joblib
    # 如你的模型文件在注册包根目录下名为mymodel.pkl
    model = joblib.load("./inputs/registered_model/mymodel.pkl")
    
    • 绝对路径:AML会自动注入对应输入的环境变量,格式为AZURE_ML_INPUT_<输入名大写>,读取代码如下:
    import os
    import joblib
    
    model_root_path = os.environ.get("AZURE_ML_INPUT_REGISTERED_MODEL")
    model = joblib.load(os.path.join(model_root_path, "mymodel.pkl"))
    

方式2:自定义挂载路径读取

你也可以在提交任务时手动指定模型的挂载路径,无需记忆默认规则:

  • 提交任务时指定path_on_compute参数自定义路径,示例代码:
from azure.ai.ml import command, Input
from azure.ai.ml.constants import AssetTypes

job = command(
    code="./src",
    command="python your_script.py",
    inputs={
        "registered_model": Input(
            type=AssetTypes.MODEL,
            path="azureml:mymodel:latest",
            path_on_compute="/models/mymodel" # 自定义的节点绝对路径
        )
    },
    environment="你的环境名@latest",
    compute="你的Linux计算集群名"
)
  • 脚本中直接读取自定义路径即可:
import joblib
model = joblib.load("/models/mymodel/mymodel.pkl")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.13 02:33:00