Google Colab升级Python3.9后安装wandb仍遇ModuleNotFoundError
问题确认与解决方案
你的猜测完全正确
从错误日志里的路径/usr/local/lib/python3.7/dist-packages/pytorch_lightning/loggers/wandb.py能直接实锤:当前运行代码的Python环境还是3.7版本,而你通过pip install安装的wandb是在Python3.9环境下,两边环境不匹配,导致PyTorch Lightning找不到对应的wandb包。
问题根源
- 你通过
update-alternatives设置了python3的默认优先级,但Colab的Jupyter内核并没有自动切换到Python3.9,仍然在使用系统默认的3.7环境 - 你安装依赖时用的
pip绑定的是Python3.9,但Jupyter内核用的3.7环境里的pytorch-lightning是Colab预装的旧版本,它只能读取3.7环境下的包,找不到3.9里的wandb
解决步骤
1. 确认并切换Python默认版本
先执行命令确认当前默认Python版本:
!python3 --version
如果显示不是3.9,手动切换默认版本:
!sudo update-alternatives --config python3
执行后会弹出选项列表,输入对应Python3.9的序号回车即可。
2. 重新安装依赖到正确环境
切换版本后,用python3 -m pip确保调用当前默认Python对应的pip,强制重装依赖:
!python3 -m pip install --force-reinstall wandb pytorch-lightning
3. 重启Colab内核
这一步是核心!点击Colab界面顶部的「Runtime」→「Restart runtime」,重启后内核会切换到新的Python3.9环境。
4. 验证环境
重启后执行以下命令确认环境和依赖:
!python --version !python -m pip list | grep -E "wandb|pytorch-lightning"
确认版本正确后再运行你的代码,就能正常调用WandbLogger了。
内容的提问来源于stack exchange,提问作者Laiborn
相关产品推荐
相关产品推荐

