wandb离线同步(踩坑&&解决方案)

该文章已生成可运行项目,

问题:

远程服务器无法联网,导致直接在服务器上同步失败,因此考虑wandb的离线模式。

解决方案:

预备工作:申请wandb账号以及api key记录好    建好项目

定义:

先在服务器上面跑,然后定义wandb_entity和wandb_project这两项(在wandb官网上自己提前设置好)

然后给环境变量赋值

使用:

我这里是直接定义的trainer,然后调用已有的方法log_metrics就可以直接把loss、learning_rate等指标记录下来了

如果不是的话就需要自己手动wandb.init()   wandb.log()具体的不详细展开了

服务器端结果:

训练结束之后服务器上会出现一个wandb的文件夹,offline开头的就是要同步的内容了(虽然第一次全部都同步到本地了)

本地(踩坑指南)

安装wandb的安装包

pip install wandb

登录(不能直接wandb login ,划重点!!!)

有帖子说是环境变量的问题,没有这个问题的可以直接忽略

python -m wandb login

开始同步文件

python -m wandb sync xxx

xxx代表offline开头的那个文件
这样就能在wandb官网自己的文件夹下面看到之前的训练各种曲线的变化啦~~~

(但是同步过程好慢,有大佬知道的话欢迎赐教!)

---------------------------------------------------------9.23更新线--------------------------------------------------------

在本地同步时会出现断裂的情况,我一共训了174个step,但是更新到30就不再更新了,猜测原因:

1. 晚上回家之后把电脑关了,没有网导致更新失败,今天来了重新挂上,但似乎没有什么用

2.生成的wandb的数据不全,去问了一下ds,最后问题是没有在init的时候设置wandb的离线模式,于是重新设置

# 在调用init_wandb_training之前设置
import os
os.environ["WANDB_MODE"] = "offline"

if "wandb" in training_args.report_to:
    init_wandb_training(training_args)

去重新跑了,看看效果........

本文章已经生成可运行项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值