这个坑值得记一笔。训练启动后卡在 wandb 初始化,日志反复重试上传,几分钟后才继续,有时直接超时退出。

刚开始盯着「代理配置错误,请求一直挂着」,折腾了半个多小时,排掉了。

这类报错背后常见的原因有几处,逐个排除就行。训练环境没有外网,wandb 仍在尝试联网;API key 没有配置,交互式等待输入;同步模式设为在线,日志量大时上传阻塞。

先切到离线模式跑训练

$env:WANDB_MODE='offline'; python train.py

再往下关闭 wandb 直接用本地日志

$env:WANDB_DISABLED='true'; python train.py

需要上报时在训练结束后单独同步

wandb sync ./wandb/offline-run-xxx

等前面都确认过,再检查网络与代理设置是否符合预期

python -c "import os;print(os.environ.get('HTTPS_PROXY'))"

别只看报错消失,验证要多做一步。训练启动不再等待网络,几秒内进入第一个 step,日志本地留存,需要时可事后同步。

容易忽略的是,离线模式下实验对比功能会缺失,把关键指标同时写进本地 csv,后期做对比会方便很多。报错文案容易误导,真正的原因往往在相邻那一层的日志里。

作者 9823189