ImportError:cannot import name ‘save_state_warning’ from torch.optim.lr_scheduler’.
我看到很多人方法是把torch版本改为1.7.1版本,或者是提高transformers。
这里我提供一下下载1.7.1的命令:

pip install torch==1.7.1+cu101 torchvision==0.8.2+cu101 torchaudio==0.7.2 -f https://download.pytorch.org/whl/torch_stable.html

如果报超时错误就加个镜像

-i https://pypi.tuna.tsinghua.edu.cn/simple

然后我这里还有个方法,因为我需要1.8.1的,我用1.7.1的时候报torch的分布式错误No rendezvous handler for env。很麻烦,好像是因为1.7.1对应的cuda10.1是不能在windows跑的,得去linux的ubuntu,要在window跑是需要11.0以上版本估计。

这样我就陷入循环,但是我还是坚持使用了1.8.1的版本,后面我仔细看了错误。

首先报的错是没有SAVE_STATE_WARNING,这里这个文件(lr_scheduler)进去之后,确实你会发现找不到SAVE_STATE_WARNING。但是很巧我之前用了1.7.1的torch,我就去看1.7.1版本的lr_scheduler.py文件。确实有不同,也有SAVE_STATE_WARNING。所以我大胆的将1.7.1的lr_scheduler.py替换了1.8.1的lr_scheduler.py。下图看到1.7.1是有save_state_warning,但是我不是只复制一行代码,你们可以试试只复制一行代码去1.8.1的lr_scheduler文件里,我是直接全部覆盖的。

结果惊喜发现不会报错了,同时我也不会报1.7.1的分布式错误了。在这里我也分享一下1.8.1的下载命令。

pip install  -i https://pypi.tuna.tsinghua.edu.cn/simple torch==1.8.0+cu111 torchvision==0.9.0+cu111 torchaudio===0.8.0 -f https://download.pytorch.org/whl/torch_stable.html

这里也提到分布式错误,我是windows环境跑代码,所以需要改行代码

添加这个。现在美滋滋的跑代码了。一直在训练,希望不会出错。。几十万条数据在跑,出错了又得排查又得重来。。。。

总结一下就是。
一开始我torch1.7.1环境下报No rendezvous handler for env这样的分布式错误,网上查找大概原因是我torch1.7.1对应的cuda10.1是不能在windows下跑的。所以我放弃了1.7.1,使用了1.8.1的torch。这样出现新的错误是ImportError:cannot import name ‘save_state_warning,这样我就把1.7.1里面的lr_scheduler.py文件覆盖掉1.8.1的lr_scheduler.py文件,这样就没有问题了。

ImportError:cannot import name ‘save_state_warning‘和解决torch1.7.1报分布式错误No rendezvous handler for env:相关推荐

  1. ImportError: cannot import name ‘secure_filename‘的解决办法

    ImportError: cannot import name 'secure_filename'的解决办法 导入模块 from werkzeug import secure_filename 出现以 ...

  2. ImportError: cannot import name ‘SAVE_STATE_WARNING‘ from ‘torch.optim.lr_scheduler‘ (/home/jsj/anac

    from transformers import BertModel 报错   ImportError: cannot import name 'SAVE_STATE_WARNING' from 't ...

  3. mysql docker 2003_解决远程连接mysql 报 2003错误的问题(docker)

    解决办法: 一.在docker中启动mysql,定义端口号3306 [root@localhost ~]# docker run -p 3306:3306 --name mysql01 -e MYSQ ...

  4. 记录一次解决httpcline请求https报handshake_failure错误

    概述 当使用httpclinet发起https请求时报如下错误: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshak ...

  5. 成功解决importError cannot import idnadata

    成功解决importError cannot import idnadata 目录 解决问题 解决思路 解决方法 1.解决步骤 2.图文教程 解决问题 解决思路 导入错误无法导入idnadata 解决 ...

  6. lasagne 错误解决 ImportError: cannot import name downsample

    import lasagne 的时候发现下列错误: ImportError: cannot import name downsample 解决方案如下: 1.找到下列发生错误的文件 \lasagne\ ...

  7. 安装 sklearn 报错 ImportError: cannot import name Type

    1. 安装 sklearn sudo pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple sklearn 会默认安装 joblib , s ...

  8. ImportError: cannot import name ‘get_num_classes’ from ‘torchmetrics.utilities.data’

    代码报错:ImportError: cannot import name 'get_num_classes' from 'torchmetrics.utilities.data' 根据报错指示进行查看 ...

  9. 在导入NVIDIA的apex库时报错 ImportError cannot import name ‘UnencryptedCookieSessionFactoryConfig‘ from

    在导入NVIDIA的apex库时报错 ImportError: cannot import name 'UnencryptedCookieSessionFactoryConfig' from 'pyr ...

  10. mysql system_time_zone乱码_解决mysql设置时区时的错误Unknown or incorrect time zone: 'Asia/Shanghai'...

    Mysql默认时区格式是'+8:00'的格式,这个时区可以在my.ini中[mysqld]节点下设置 default-time-zone = '+8:00' 默认这个设置是没有的 但是mysql不支持 ...

最新文章

  1. 新能源汽车电驱系统行业深度报告
  2. 首次!腾讯全面公开整体开源路线图
  3. 独家 | Facebook AI发布DETR一种基于Transformer的对象检测方法!
  4. 人生赢家的三个最基本标准
  5. IBM发布全球首台商用量子计算机
  6. java画满天星_java_java实现的满天星效果实例,本文实例讲述了java实现满天星 - phpStudy...
  7. windows平台搭建opencv_python
  8. Machine Learning(Andrew)Week6(上)
  9. 信号在网线和集线器中的传输(《网络是怎样连接的》).md
  10. 系统的可靠性分析与设计---可靠性的概述
  11. RSS推送技术——打造自己的今日头条
  12. Redis Scard 命令
  13. win10+ubuntu双系统之三步彻底删除ubuntu系统
  14. PHP验证身份证类(包含香港身份证校验)
  15. 125亿元!华为公开晒年终奖
  16. 循环神经网络RNN、LSTM、GRU原理详解
  17. Tomcat8安装及配置教程
  18. 西门子编程软件,V16还没上手,最新版本V17已经出来了!
  19. 空天院(齐鲁)提前批面试记录
  20. python re模块 正则表达式

热门文章

  1. 3D建模初学者必看!你想要的学习工具都在这了!
  2. [导入]北京地区铁路客票代售点列表
  3. ARM的九种寻址方式
  4. 如何快捷地下载知乎中的视频
  5. 华为手机默认浏览器打开应用宝链接直接启动应用问题解决
  6. kubebuilder之一:kubernetes operator工作原理
  7. html文字溢出用省列号,关于文字内容溢出用点点点(...)省略号表示
  8. 互联网和大数据是什么意思_什么是互联网大数据?
  9. linux exchange 账号,使用Linux客户端Thunderbird连接Exchange Server
  10. linux 下查看硬件信息(mac,IP地址,硬盘型号,序列号等)