导入torch遇ModuleNotFoundError: No module named 'torch.hub'错误求助
解决导入torchtext时出现ModuleNotFoundError: No module named 'torch.hub'的问题
报错信息
ModuleNotFoundError Traceback (most recent call last) Input In [33], in <cell line: 4>() 1 import pandas as pd 3 import torch ----> 4 import torchtext 5 from torchtext.vocab import vocab 6 from collections import Counter, OrderedDict File ~\anaconda3\lib\site-packages\torchtext\__init__.py:3, in 1 import os ----> 3 from torch.hub import _get_torch_home 5 # the following import has to happen first in order to load the torchtext C++ library 6 from torchtext import _extension # noqa: F401 ModuleNotFoundError: No module named 'torch.hub'
问题原因
当前安装的PyTorch版本过低,torch.hub模块是PyTorch 1.1.0及后续版本新增的,旧版本PyTorch不包含该模块,导致依赖它的torchtext无法正常导入。
解决方案
升级PyTorch到兼容版本
针对Anaconda环境,根据硬件选择对应命令执行:- CPU版本:
conda install pytorch torchvision torchaudio cpuonly -c pytorch - CUDA版本(以CUDA 11.8为例,可根据自身CUDA版本调整):
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
- CPU版本:
安装与当前PyTorch匹配的torchtext旧版本
若不想升级PyTorch,可安装对应兼容的torchtext版本,比如PyTorch 1.0.x对应torchtext 0.3.x:conda install torchtext==0.3.1注意:需确认两者版本严格匹配,避免引发其他依赖问题。
确认conda环境激活状态
确保当前使用的conda环境是安装了PyTorch的目标环境,执行以下命令切换:conda activate 你的环境名称切换后重新运行代码即可。
内容的提问来源于stack exchange,提问作者djokovic
相关产品推荐
相关产品推荐

