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

Azure ML Studio:如何从DatasetConsumptionConfig获取数据目录路径?

关于Azure ML DatasetConsumptionConfig获取实际路径的问题

首先明确:无法在定义Pipeline的代码中直接从DatasetConsumptionConfig获取真实的挂载路径,因为这个路径是计算节点运行时动态生成的,并非提前固定的。DatasetConsumptionConfig本质是用来配置数据集在计算目标上的消费规则(挂载/下载)的对象,本身不存储实际路径,只有当Pipeline在计算节点上执行时,Azure ML才会完成挂载并生成本地路径。

简化的替代方案

1. 用Named Input在脚本内直接获取路径

不用通过arguments传参,而是在PythonScriptStep中指定inputs,然后在脚本内部通过Run上下文获取路径,步骤更简洁:

Pipeline定义代码:

from azureml.pipeline.steps import PythonScriptStep

step = PythonScriptStep(
    script_name="myscript.py",
    inputs=[dataset_mount],  # 直接传入DatasetConsumptionConfig对象
    compute_target=compute_target,
    workspace=aml_workspace
)

myscript.py中的代码:

from azureml.core.run import Run

run = Run.get_context()
# 通过命名输入的名称获取实际路径
dataset_path = run.input_datasets["mydatasetname"]
# 后续即可用dataset_path访问数据文件

2. 交互式环境(如Notebook)下获取路径

如果是在Notebook这类交互式环境中想访问数据集,不需要用DatasetConsumptionConfig,直接手动挂载数据集获取路径:

mount_context = dataset.mount()
mount_context.start()
# 获取挂载路径
dataset_path = mount_context.mount_point

# 在此处进行数据读取操作...

# 操作完成后停止挂载
mount_context.stop()

补充说明

你之前通过arguments传参的方式是Azure ML的标准用法之一,但用Named Input的方式可以省去手动处理参数的步骤,更符合Pipeline的设计逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 17:05:41