Skip to content

获取训练结果

训练结果、checkpoint、TensorBoard 日志和中间产物应写入挂载的共享存储。任务结束后,平台会清理 Worker 本地文件系统;只保存在本地路径中的结果无法找回。

先确认结果路径在共享存储中

任务详情 页查看存储挂载路径,并对照训练脚本中的输出目录。常见安全路径类似:

language-text
/mnt/public/projects/llm-train/output/exp-001
/mnt/public/projects/llm-train/checkpoints/exp-001
/mnt/public/projects/llm-train/runs/exp-001

如果输出路径是 /tmp/root/workspace 或容器镜像内的其他本地目录,任务结束后通常无法再取回这些文件。

使用 AICoder 查看和下载结果

如果 AICoder 挂载了同一个共享存储卷,可以直接在 AICoder 中进入输出目录,查看或下载训练结果。

  1. 打开 AICoder。
  2. 进入训练任务使用的共享存储挂载路径。
  3. 找到输出目录、checkpoint 目录或 TensorBoard 日志目录。
  4. 小文件可按需下载;大文件、大量文件或需要断点续传时使用 rsync

详见AICoder 文件传输

使用开发机处理结果

如果需要运行评估脚本、转换权重格式或整理大文件,建议创建开发机并挂载同一共享存储卷,然后在开发机中处理结果。

  1. 创建开发机,并选择与训练任务相同的共享存储卷。
  2. 进入训练输出目录。
  3. 运行评估、转换、压缩或上传脚本。
  4. 使用开发机文件传输能力下载结果。

详见开发机文件传输

用支持断点续传的方式下载大文件

模型权重、checkpoint 和数据产物通常较大。以下命令使用 --inc-recursive--info=progress2,因此本地计算机和目标 AICoder 都应使用 rsync 3.1.0 或更高版本;两端版本号不必完全相同。先检查实际调用的本地程序、两端版本和远端结果路径:

language-shell
command -v rsync
rsync --version
ssh -J <ssh-jumper> root@<aicoder-id> \
  'rsync --version && findmnt -T /mnt/public && df -h /mnt/public && test -r /mnt/public/projects/llm-train/output/exp-001 && echo source-ready'

只有两端均显示 rsync 3.1.0 或更高版本、findmnt 显示共享存储文件系统且命令输出 source-ready 时,才在本地计算机运行下载命令。macOS 的程序路径和跨平台注意事项参见 AICoder 上传和下载文件

language-shell
mkdir -p /path/to/local/output
rsync -a \
  --inc-recursive \
  --partial \
  --partial-dir=.rsync-partial \
  --info=progress2 \
  --human-readable \
  -e "ssh -T -o Compression=no -o ServerAliveInterval=30 -o ServerAliveCountMax=6 -J <ssh-jumper>" \
  root@<aicoder-id>:/mnt/public/projects/llm-train/output/exp-001/ \
  /path/to/local/output/

单个文件可以大于 AICoder 的 4 GiB 内存。初次下载只运行一个 rsync 进程;包含数百万个文件时,按一级子目录分批串行下载。完整说明参见 AICoder 上传和下载文件。网页端更适合查看目录、下载小文件和确认结果是否生成。

是否需要先压缩结果

模型权重、压缩包、图片和大多数 checkpoint 通常已经压缩,再次压缩只会增加 CPU 消耗。只有结果包含大量小文件时,才考虑先归档再传输。归档文件必须写入共享存储,并在开始前确认有足够空间容纳原文件和归档文件;不要把归档写到 AICoder 系统盘。

优先使用不额外压缩的 tar 降低小文件传输的元数据开销,然后用 rsync 下载归档:

language-shell
tar -cf /mnt/public/projects/llm-train/output/exp-001.tar \
  -C /mnt/public/projects/llm-train/output \
  exp-001

一次只运行一个归档或传输进程。确认本地文件可用后,再单独清理共享存储中的临时归档。