Trackio documentation

自托管 Trackio 服务器

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

自托管 Trackio 服务器

您可以在自己的机器(或任何您控制的主机)上运行 Trackio 仪表板和 API,并通过 HTTP 将训练脚本中的指标发送到该服务器。这是通过 space_id 记录到 Hugging Face Space 的一种替代方案。

在本地运行服务器

安装 Trackio,然后启动仪表盘。默认情况下,它监听 127.0.0.1,如果设置了 GRADIO_SERVER_PORT 则使用该端口,否则使用 7860(参见 启动仪表盘)。

Shell
Python
trackio show

在训练期间,请保持该进程持续运行。终端会打印出 UI 的基础 URL 以及一个包含 write token 的 URL;任何能够使用该 token 访问该 URL 的人都可以执行服务器支持的写操作(例如重命名运行记录),因此在不受信任的网络中,请将其视为机密信息。

监听所有接口

要从网络中的另一台机器(或从容器)访问仪表板,请绑定到所有接口:

Shell
Python
trackio show --host 0.0.0.0

请确保您的防火墙和安全策略允许您预期的流量。

将训练代码指向您的服务器

在训练脚本中,传入 server_url 并提供 写入令牌:可以将 write_token 嵌入查询字符串(即仪表板为写入权限打印的同一 URL,或 trackio.show() 返回的 full_url 值),或者传入类似 http://127.0.0.1:7860/ 的基础 URL,并将 TRACKIO_WRITE_TOKEN 环境变量设置为该令牌。此外,你还可以在启动 trackio.show() 之前,在 Trackio 服务器上设置 TRACKIO_WRITE_TOKEN,以选择服务器的写入令牌,而不是使用启动时生成的随机令牌。当服务器不在 Hugging Face Spaces 上时,指标摄取和上传需要此令牌。你也可以设置 TRACKIO_SERVER_URL,而不是在代码中传入 server_url。

import trackio

trackio.init(
    project="my-project",
    server_url="http://127.0.0.1:7860?write_token=YOUR_TOKEN",
)
trackio.log({"loss": 0.25})
trackio.finish()

优先级:space_id / TRACKIO_SPACE_ID 始终优先于 server_url / TRACKIO_SERVER_URL(当两者都在代码或环境中设置时)。此时 Trackio 的行为等同于仅配置了 Space。

诸如 dataset_id(已弃用;请改用 bucket_id)和 bucket_id 等 Hugging Face 特定选项,仅在将日志记录到 Space 时生效。当仅 server_url 生效时,请在服务器运行的机器上配置持久化(例如通过该主机上的 TRACKIO_DIR)。请参阅 环境变量。

相关

Update on GitHub