一、背景
WandB(Weights & Biases) 是一个机器学习实验管理和可视化工具,用于跟踪、记录和分析深度学习训练过程中的超参数、模型性能、日志和可视化。
复现论文的程序时,经常需要用到WandB,但却报错:wandb.errors.CommError: failed to upsert bucket: returned error 403 Forbidden: {"errors":[{"message":"permission denied","path":["upsertBucket"],"extensions":{"code":"PERMISSION_ERROR"}}],"data":{"upsertBucket":null}} Set the environment variable HYDRA_F
下面记录一下解决办法。
系统:ubuntu18.04
conda环境:dex
二、wandb报错问题排查
查阅资料说是权限和登陆问题。但打开.netrc
文件发现并没有问题,显示如下:(和.bashrc
文件一样,在home目录下,如果隐藏则使用ctrl+H显示即可)
machine api.wandb.ai
login user
password 025a0071d41cee642********
这里的 login user没有问题,不是你的wandb的名字。下面的password是你的API号。
API号查询方法:
登陆wandb官网:https://wandb.ai/home
点击右上角个人信息处User settings,下拉找到API keys,然后reveal即可。
三、wandb报错解决办法
去wandb网站的issues找到解决办法,网站:https://github.com/wandb/wandb/issues/8609
具体操作也就是在train.yaml文件下:entity_name使用的是 team organization entity而不是个人的personal entity。
在wandb网站的Profile页面。我的个人名字是qiucc,但team名字是qiucc-dalian-university-of-technology,因此需要使用team的名字,当然还得在wandb网站创建一个project,我的project是dex
use_wb: True
project_name: dex
entity_name: qiucc-dalian-university-of-technology
成功解决,只需要关注/home/dlut/DEX/dex/configs/train.yaml
文件中的上面三行是否和我们自己的wandb账号对应,不用修改什么/home/dlut/DEX/dex/components/logger.py
和/home/dlut/DEX/dex/trainers/rl_trainer.py
文件。