Trackio documentation
自托管 Trackio 服务器
自托管 Trackio 服务器
您可以在自己的机器(或任何您控制的主机)上运行 Trackio 仪表板和 API,并通过 HTTP 将训练脚本中的指标发送到该服务器。这是通过 space_id 记录到 Hugging Face Space 的一种替代方案。
在本地运行服务器
安装 Trackio,然后启动仪表盘。默认情况下,它监听 127.0.0.1,如果设置了 GRADIO_SERVER_PORT 则使用该端口,否则使用 7860(参见 启动仪表盘)。
trackio show
import trackio
trackio.show()在训练期间,请保持该进程持续运行。终端会打印出 UI 的基础 URL 以及一个包含 write token 的 URL;任何能够使用该 token 访问该 URL 的人都可以执行服务器支持的写操作(例如重命名运行记录),因此在不受信任的网络中,请将其视为机密信息。
监听所有接口
要从网络中的另一台机器(或从容器)访问仪表板,请绑定到所有接口:
trackio show --host 0.0.0.0
import trackio
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)。请参阅 环境变量。
相关
- 启动 Dashboard — CLI 选项、端口和远程访问
- 环境变量 —
TRACKIO_SERVER_URL、TRACKIO_DIR等