目录

torchx.tracker 中

概述和用法

注意

原型,使用风险自负,API 可能会发生变化

运行 ML 作业的从业者通常需要跟踪以下信息:

  • Job inputs:
    • 配置
      • 模型配置

      • HPO 参数

    • 数据
      • 版本

      • 来源

  • 工作成果:
    • 指标

    • 模型位置

  • 概念性作业分组

AppRun提供统一的接口作为实验和工件跟踪解决方案,该解决方案 支持封装可插拔跟踪实现,方法是提供TrackerBase适配器 实现。

用法示例

使用跟踪器 API 的示例代码

跟踪链接设置

要启用跟踪,需要:

  1. 使用 .torchxconfig 在启动器端定义跟踪链接后端(入口点和配置)

  2. 使用 entry_points 在用户作业中添加入口点(规范)

1. 启动端配置

用户可以在 .torchxconfigtorchx:tracker 部分下定义任意数量的跟踪器后端,其中:
  • Key:是跟踪链接的任意名称,其中该名称将用于配置其属性

    在 [tracker:<TRACKER_NAME>] 下

  • 值:是必须在用户作业中可用的入口点/工厂方法。该值将被注入到

    user job 的 intent 中,用于构建跟踪器实现。

[torchx:tracker]
tracker_name=<entry_point>

每个跟踪链接都可以在 [tracker:<TRACKER NAME>] 部分下额外配置 (目前仅限于 config 参数):

[tracker:<TRACKER NAME>]
config=configvalue

例如,~/.torchxconfig 可以设置为:

[torchx:tracker]
tracker1=tracker1
tracker12=backend_2_entry_point

[tracker:tracker1]
config=s3://my_bucket/config.json

2. 用户作业配置 (Advanced)

上一步中定义的 entrypoint 值必须在 [torchx.tracker] 组下可被发现,并且可以在用户作业中调用 (取决于打包/分发机制)来创建TrackerBase.

要实现该目标,请在 entry_points.txt 中定义分发中的入口点,如下所示:

[torchx.tracker]
entry_point_name=my_module:create_tracker_fn

获取AppRun实例

用:app_run_from_env()

>>> import os; os.environ["TORCHX_JOB_ID"] = "scheduler://session/job_id" # Simulate running job first
>>> from torchx.tracker import app_run_from_env
>>> app_run = app_run_from_env()

参考TrackerBase实现

FsspecTracker提供跟踪器后端的参考实现。 GitHub 示例目录提供了有关如何 在 User Application 中配置并使用它。

查询数据

  • CmdTracker在 CLI 级别公开用户可用的作:
    • torchx tracker list jobs [–parent-run-id RUN_ID]

    • torchx tracker list metadata RUN_ID

    • torchx tracker list artifacts [–artifact ARTIFACT_NAME] RUN_ID

  • 或者,后端实现可能会公开 UI 供用户使用。

torchx.tracker 中。AppRunid strbackends Iterable[TrackerBase][来源]

在作业级别公开跟踪器 API,并且应该是唯一封装该模块实现的 API。

此 API 目前仍处于试验阶段,将来可能会更改。

参数
  • idstr) – 跟踪器 API 使用的任务身份

  • backendsIterable[TrackerBase]) —— 将用于持久化数据的 TrackerBase 实现列表。

torchx.tracker.api 中。TrackerBase[来源]

跟踪解决方案实现 / 服务的抽象。

此 API 目前仍处于试验阶段,将来可能会进行大规模更改。

class torchx.tracker.backend.fsspec 的FsspecTrackerfs AbstractFileSystemroot_dir: str[来源]

使用 Fsspec 抽象实现 TrackerBase,并具有以下优点 使用各种存储选项来持久保存数据。

重要提示: torchx.tracker.api API 仍处于实验阶段,因此存在 尚无与未来版本的向后兼容性保证。

每次运行都将有一个目录,其中包含元数据、构件、源和后代数据的子目录。

torchx.cli.cmd_tracker 中。CmdTracker[来源]

原型 TorchX tracker 子命令,允许通过以下方式查询数据 与 tracker implementation 交互。

重要提示:命令和参数将来可能会修改。

支持的命令:
  • 跟踪器列表作业 [–parent-run-id RUN_ID]

  • 跟踪链接列表元数据 RUN_ID

  • 跟踪器列表工件 [–artifact ARTIFACT_NAME] RUN_ID

文档

访问 PyTorch 的全面开发人员文档

查看文档

教程

获取面向初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并解答您的问题

查看资源