Spacy加载en_core_web_trf报错:'NoneType'无full属性
解决Spacy 3.4.2加载en_core_web_trf时的AttributeError错误
问题描述
使用Spacy 3.4.2版本时,en_core_web_sm模型可正常加载,但加载en_core_web_trf时触发以下错误:
AttributeError: 'NoneType' object has no attribute 'full'
报错堆栈指向torch.full()调用行,本质是PyTorch模块未被正确识别或版本与Spacy 3.4.2不兼容。
解决方案
1. 检查PyTorch安装状态
先确认PyTorch是否正常安装且可导入:
import torch print(torch.__version__)
如果运行时报错,说明PyTorch未正确安装,需重新安装。
2. 匹配兼容的PyTorch版本
Spacy 3.4.2的en_core_web_trf模型不支持PyTorch 2.0及以上版本,需使用1.10.x~1.13.x区间的版本。若当前版本过高,执行降级:
pip uninstall -y torch pip install torch==1.13.1
3. 重新安装en_core_web_trf
卸载并重新下载模型,确保依赖完全匹配:
pip uninstall -y en_core_web_trf python -m spacy download en_core_web_trf
4. 验证加载效果
运行以下代码测试模型是否正常加载:
import spacy nlp = spacy.load("en_core_web_trf") doc = nlp("Test the transformer-based model") print(doc.ents)
内容的提问来源于stack exchange,提问作者BD98
相关产品推荐
相关产品推荐

