跳转到内容

swanlab sync

bash
swanlab sync [options] [logdir]
选项描述
-k, --api-key用于身份验证的API密钥。如果未指定,将使用环境中的默认API密钥。如果指定,将使用此API密钥登录但不会保存密钥。
-h, --host同步日志的主机地址。如果未指定,将使用默认主机(https://swanlab.cn)。
-w, --workspace同步日志的工作空间。如果未指定,将使用默认工作空间。
-p, --project同步日志的项目。如果未指定,将使用默认项目。
-i, --id同步日志的实验ID。仅当路径为单个目录时可用。

介绍

将本地日志,同步上传到SwanLab云端/私有化部署端。

版本对照

版本对照仅适用于swanlab sync命令

swanlab库版本特性支持的日志文件
>=0.6.8支持同步训练异常终端的日志文件;支持id参数>=0.6.8版本的swanlab库产生
<0.6.8-<0.6.8版本的swanlab库产生

命令行示例

找到你需要上传到云端的日志文件目录(默认是swanlog下的以run-开头的目录),然后执行命令:

bash
swanlab sync ./swanlog/run-xxx

INFO

默认同步到的项目的是日志文件中记录的project,即跑该实验时设置的project
如果想要同步到其他项目,可以使用-p选项指定项目。

看到下面的打印信息,则表示同步成功:

swanlab sync

完成sync操作后,项目上会多出一个新的实验。

Python代码示例

python
import swanlab

swanlab.login(api_key="你的API Key")

swanlab.sync(
    dir_path="./swanlog/run-xxx",
    workspace="swanlab",
    project_name="sync_test",
)

批量上传

bash
swanlab sync ./swanlog/run-*

resume式同步

如果你不希望创建1个新实验,而是在原本的实验上同步(会自行比对数据,增加差异的部分),可以使用--id参数:

bash
swanlab sync ./swanlog/run-xxx --id <实验ID>

实验ID获取方式见:恢复实验/断点续训