处理Ubuntu数据集的时候,报这个错误Can't find model 'en'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory。
出现该错误的原因是没有en这个包,于是尝试网上的解决方法:
(1)输入 python -m spacy download en
尝试后报connection error,改方法在我这里不行。
(2)有人说查看conda list发现里面没有en,只有en_core_web_lg,于是将程序里面的en改为en_core_web_lg。经尝试,发现conda list里面这两个都没有。于是下载en_core_web_lg,输入命令python -m spacy download en_core_web_lg,还是报connection error。既然在线不能下载,就离线下载,参考(spacy.load(‘en_core_web_sm‘) 离线包下载 en_core_web_sm以及en_core_web_md_hjzgj263446的博客-CSDN博客——https://blog.csdn.net/hjzgj263446/article/details/103527952?utm_medium=distribute.pc_relevant_download.none-task-blog-baidujs-5.nonecase&depth_1-utm_source=distribute.pc_relevant_download.none-task-blog-baidujs-5.nonecase)。
离线下载en_core_web_sm-2.2.5后,输入代码:pip install /文件路径/en_core_web_sm-2.2.5.tar.gz,安装后,还是报错。
Loading SpaCy
Traceback (most recent call last):
File "ubuntu_preprocess.py", line 29, in <module>
tokenizer = Tokenizer('spacy')
File "/home/cuifuwei/multi-turn dialogue/program/A-Hierarchical-Latent-Structure-for-Variational-Conversation-Modeling-master/A-Hierarchical-Latent-Structure-for-Variational-Conversation-Modeling-master/model/utils/tokenizer.py", line 43, in __init__
nlp = spacy.load('en')
File "/home/cuifuwei/anaconda3/lib/python3.7/site-packages/spacy/__init__.py", line 30, in load
return util.load_model(name, **overrides)
File "/home/cuifuwei/anaconda3/lib/python3.7/site-packages/spacy/util.py", line 175, in load_model
raise IOError(Errors.E050.format(name=name))
OSError: [E050] Can't find model 'en'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory.
定位报错位置是"/home/cuifuwei/anaconda3/lib/python3.7/site-packages/spacy/__init__.py", line 30,将其中的en改为en_core_web_sm,上述问题解决。