0%

使用Wandb版本冲突出现的bug

在新服务器使用 wandb 的时候,通常需要在命令行输入 wandb login 进行登陆。这时候会跳转出来这样的页面:

wandb login

wandb登录

然后点击提供的API链接之后,会跳转到wandb的API Key页面,这个时候需要创建新的API Key,理论上来说复制到命令行登录自己的账户即可。

但是可能是由于版本冲突等问题,复制wandb账户提供的API Key之后会显示:

wandb error

wandb报错

然后有一种解决方法是在命令行输入:

1
export WANDB_API_KEY="你的40位API_KEY"

这样仅仅在当前的终端下生效,每次都需要重新export,非常之麻烦。而wandb的登录逻辑是在root目录下创建一个 .netrc 文件,然后把API Key给写入其中,因此可以直接创建这个文件并写入相关信息即可 ⬇️:

1
echo "machine api.wandb.ai login user password 你的40位KEY" > ~/.netrc && chmod 600 ~/.netrc

再次检查是否登录成功可以发现:
wandb login success

登录成功

当然还可以直接在代码最前面加入:

1
2
3
import os
os.environ["WANDB_API_KEY"] = "你的40位API_KEY"
import wandb