如何通过 python API 下载历史 Azure ML 实验运行的输出

How can one download the outputs of historical Azure ML experiment Runs via the python API

我正在尝试编写一个脚本,它可以在事后从 Azure ML 实验 运行 下载输出。

本质上,我想知道如何通过 runId 属性(或其他标识符)获得 运行。

我知道我在创建 运行 对象时可以访问它以进行训练。我想要的是一种稍后在单独的脚本中重新创建此 运行 对象的方法,可能来自完全不同的环境。

到目前为止我发现的是一种通过 get_runs() 函数从实验中获取脚本 运行 对象列表的方法。但是我没有看到使用这些 Script运行 对象之一来创建代表原始 运行 并允许我下载输出的 运行 对象的方法。

感谢任何帮助。

我同意这可能会得到更好的记录,但幸运的是,这是一个简单的实现。

这就是您为 azureml-sdk>=1.16.0 已提交的 运行 获取 运行 对象的方式(对于旧方法

from azureml.core import Workspace

ws = Workspace.from_config()
run = ws.get_run('YOUR_RUN_ID')

获得 run 对象后,您可以调用

等方法
  • .get_file_names() 查看有哪些文件可用(azureml-logs/logs/azureml/ 中的日志也会被列出)
  • .download_file() 下载单个文件
  • .download_files() 下载匹配给定前缀的所有文件(或所有文件)

有关详细信息,请参阅 Run object docs