cannot import name ‘Iterator‘ from ‘torchtext.data‘

在运行Transformer工程的时候,执行如下语句时出现题目中的报错。

from torchtext.data import Iterator

这个问题解决起来比较曲折,记录下来以备后续查阅。

原来的环境安装的是最新的pytorch,2.x版本,而且该环境在另一个大型Transformer工程中是已经运行通过,但是当用该环境运行一个小的Transformer工程时,就开始出现各种版本不兼容的问题。

出现题目中的错误,第一个想法就是对torchtext降版本,参考网上的解决方案将版本从0.17降到了0.9,完了之后,该问题仍然存在。

接下来,按照pytorch、torchvision、torchaudio、torchtext版本对应关系,重新起环境,安装了Python 3.8、pytorch 1.7.0,但是到安装torchvision、torchaudio的时候,提示没有匹配的版本:

从报错中看,能找到对应torchivisio和torchaudio的最老torch版本是torch 1.8.0,好,那就它吧,于是重新安装torch 1.8.0:

pip install torch==1.8.0 torchvision torchaudio -i https://pypi.tuna.tsinghua.du.cn/simple

这里只需要指定torch版本,安装过程会自动去匹配相应的torchvision和torchaudio版本。

以上安装完成后,开始安装torchtext,按照如下表版本对应关系,应该安装torchtext 0.9,但之前0.9版本也存在标题中的问题,因此尝试安装torchtext 0.8。

torchtext 0.8在安装过程中提示找不到匹配项:

于是索性按照工程requirements文件中要求的torchtext==0.3.1来进行安装,安装是成功了,但是执行from torchtext.data import Iterator时又出现少模块的报错(提示缺少一个名为six的功能模块),版本太老,很多功能没有集成进来,太麻烦。

接着struggle,在这里看到有人用torchtext 0.6说可以,于是又卸载掉torchtext 0.3.1,安装torchtext 0.6,这次竟然work了!

接下来又安装了几个缺失的模块,基本就是少啥装啥,对版本没有太高的要求,直接pip install XXX,安装完成后,工程终于能正常运行了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/418990.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用 Python 实现一个飞书/微信记账机器人,酷B了!

Python飞书文档机器人 今天的主题是:使用Python联动飞书文档机器人,实现一个专属的记账助手,这篇文章如果对你帮助极大,欢迎你分享给你的朋友、她、他,一起成长。 也欢迎大家留言,说说自己想看什么主题的…

ThreeDWorld(TDW)学习(待更新)

目录 前言 1.TDW 2.transport challenge 总结 前言 因为挑战赛了解到tdw仿真平台。 想了解的请点击: GitHub - threedworld-mit/tdw: ThreeDWorld simulation environment GitHub - chuangg/tdw-transport-challenge-starter-code 1.TDW ThreeDWorld (TDW)是一…

java中开源json处理库介绍

在Java生态系统中,有几个常用的开源库用于处理JSON数据。这些库各有特点,适用于不同的场景。下面我将介绍几个流行的Java JSON处理库,包括它们的基本情况、主要特点和核心API。 Jackson 基本情况 Jackson是一个流行的Java库&…

本地写的Bash脚本,Linux端运行报错:/bin/bash^M: bad interpreter: No such file or directory

背景 在本地写了个Bash Shell脚本,但上传到Linux端后加完权限执行时报错: (脚本名:script.sh) -bash: ./script.sh: /bin/bash^M: bad interpreter: No such file or directory 分析 这个错误通常是由于脚本文件的行…

LeetCode41题:缺失的第一个正数(python3)

这道题写的时候完全没有思路,看了很久的题解,才总结出来。 class Solution:def firstMissingPositive(self, nums: List[int]) -> int:nums_set set(nums)n len(nums)for i in range(1, n 1):if i not in nums_set:return ireturn n 1

[JavaWeb玩耍日记]Mybatis快速入门与增删改查

目录 模块一:快速入门 1.创建数据库,插入数据 2.创建maven模块后,需要导入的依赖有哪些? 3.想要输出查询到的数据(包括日志打印),需要创建哪些文件? 4.如何放置UserMapper接口与User类? 5.…

RFID射频识别技术的优势

目前RFID在金融支付、物流、零售、制造业、医疗、身份识别、防伪、资产管理、交通、食品、动物识别、汽车、等行业都已经实现不同程度的商业化使用。未来,RFID技术有不可替代的六大优势,也保证了物联网的万物互联的有序发展! 1、无需可视,在无…

kibana7.17.7 将数据导出csv文件

配置kibana文件 首先先配置kibana.yaml内容如下,这里假设我的服务器ip地址为192.168.130.128,elasticsearch的ip地址为:192.168.130.129:9200,192.168.130.130:9200: server.host: "192.168.130.128" serv…

lc 每日一题 2024 - 03 - 01 划分型dp

链接 : . - 力扣(LeetCode) 思路 : 子集划分型dp , 设置dp[i1]表示前i个数字能否有效划分; 那么一个划分好的数组 两个相等的数字 , 新形成的数组也是有效划分数组; 同理,加上三个相等 或 三个递增的数字 &…

初学JavaScript总结

0 JavaScript html完成了架子,css做了美化,但是网页是死的,需要给他注入灵魂,所以接下来需要学习JavaScript,这门语言会让页面能够和用户进行交互。JavaScript又称为脚本语言,可以通过脚本实现用户和页面的…

CIES预告 | 飞凌嵌入式即将亮相第14届中国国际储能大会

第14届中国国际储能大会暨展览会将于2024年3月11日~13日在杭州举行,本届大会以“共建储能生态链,共创储能新发展”为主题,搭建储能行业国际化交流与合作平台,探索储能领域新技术、新业态、新模式,推进储能产业上下游供…

Kubernetes的Sevice管理

服务原理: 所有服务都是根据这个服务衍生或者变化出来,根服务---- 服务感知后端靠标签 slelector 标签选择器 kubectl label pods web1 appweb kubectl cluter-info dump | grep -i service-cluster-ip-range 服务ip取值范围 Service 管理: 创建服务: --- kind: Serv…

在Windows系统中启动Redis服务

前言 Redis是一个开源、高性能的键值对数据库,常用于缓存、消息队列等场景。本文将详细指导您如何在Windows系统上启动Redis服务。 第一步:确认Redis安装 确保您已经在Windows系统上成功安装了Redis。官方提供了预编译好的Windows版本,您可…

虚拟机上为AzureDevOps Server 创建用户

为DevOpsServer创建登录用户 背景虚拟机的本地用户和组去DevOps Server上添加本地用户 背景 我们有一台虚拟机,然后在上面安装了一台Azure DevOps Server,然后我们创建几个登录用户。 虚拟机的本地用户和组 首先我们登陆到虚拟机,然后我们…

B站画质补完计划(2):视频超分让像素细腻生动

本期作者 1 前言 为了给用户提供更清晰的画质体验,B站自研的超分辨率算法已经在站内广泛应用,支持了如《赛马娘》、《流浪地球2》、《权力的游戏》、英雄联盟S赛赛事直播等知名番剧、电影电视剧以及重要游戏赛事直播的 4K 视频流生产。 2 超分算法的应用…

Excel2LaTeX插件的使用、LaTeX表格

目录 一、下载Excel2Latex 二、使用Excel2Latex 1、将Excel2LaTeX文件添加到加载项 2、导出LaTex的表格数据 3、注意事项 1)生成的latex表格断断续续问题 2)改变线形的粗细 3)表格太大,需要缩小到适应大小 4)…

CCDP.01.寄主机SSH连接虚拟机的QA

V0.0 初始版本-2024.2.29 检查VM的网卡配置 如上图,如果enp0s3网卡没有出现形如10.0.0.??/24的ip配置,说明该网卡配置存在错误,或者没有“使能”该网卡。在RockyLinux8.X中可检查“ifcfg-enp0s?” vi /etc/sysconfig/network-…

软件测试人的测试思维

系统性思维 如果以系统性思维来分析和解决问题,就不会出现: 只见树木不见森林片面地追求单个目标被表象所迷惑,看不到本质忽视某些产品质量风险千里之堤、溃于蚁穴用线性的思维方式来理解非线性的问题 而是会整体地、多角度地、多层次地分…

数据仓库与数据挖掘概述

目录 一、数据仓库概述 (一)从传统数据库到数据仓库 (二)数据仓库的4个特征 (三)数据仓库系统 (四)数据仓库系统体系结构 (五)数据仓库数据的粒度与组织…

babylonjs入门-点光源

基于babylonjs封装的一些功能和插件 ,希望有更多的小伙伴一起玩babylonjs; 欢迎加群(点击群号传送):464146715 官方文档 中文文档 案例传送门 ​ 懒得打字,粘贴复制,一气呵成