安装spacy后加载en_core_web_sm报错torch无set_default_tensor_type属性
问题原因
你遇到的报错是版本不兼容导致的:PyTorch 2.0及以上版本正式移除了set_default_tensor_type接口,而你安装的spacy 3.2.0依赖的thinc版本较低,仍然在调用这个已废弃的接口,因此触发AttributeError。
另外你之前的安装操作存在虚拟环境混用问题:先后创建了venv的.env环境和conda的firstEnv环境,两类虚拟环境混用很容易导致依赖安装错位,后续建议统一使用conda管理环境即可。
解决方案
方案一(优先选择)
升级spacy到3.5及以上版本,该版本已经修复了和高版本PyTorch的兼容问题:
# 先卸载旧版本spacy和对应模型 conda uninstall spacy en_core_web_sm # 安装新版本spacy conda install -c conda-forge spacy>=3.5.0 # 重新下载对应版本的英文模型 python -m spacy download en_core_web_sm
方案二(需保留spacy 3.2.0版本时使用)
将PyTorch降级到1.13.1版本,该版本仍保留了被调用的旧接口:
conda install pytorch==1.13.1 cpuonly -c pytorch
方案三(环境无PyTorch使用需求时使用)
直接卸载PyTorch即可,你使用的en_core_web_sm轻量模型运行不需要依赖PyTorch:
conda uninstall pytorch
内容的提问来源于stack exchange,提问作者peoplet
相关产品推荐
相关产品推荐

