今天调试wandb时,出现“句柄无效”错误。尝试了一天,没有找到合理解决方案,最终在无意中找到了解决方案,特此记录下,希望能帮到有类似bug的人。
我尝试过降低版本为0.9.7,但是失败了。
最后在debug设置断点调试下无意中执行了多次init()发现:第一次init()会出现错误,但是再执行一次就成功了。经过多次测试,发现多执行几次init()函数就会初始化成功。最终写了如下代码解决了我的问题:
# 如果初始化失败,重试10次,直到成功
for i in range(10):
try:
wandb.init()
break
except:
self.console_logger.info('wandb init failed')
continue