SpaCy OSError: Не удается найти модель 'en'
хотя я загрузил модель, она не может ее загрузить
[[email protected] entity-sentiment-analysis]$ which python
/scratch/sjn/anaconda/bin/python
[[email protected] entity-sentiment-analysis]$ sudo python -m spacy download en
[sudo] password for jalal:
Collecting https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.0.0/en_core_web_sm-2.0.0.tar.gz
Downloading https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.0.0/en_core_web_sm-2.0.0.tar.gz (37.4MB)
100% |████████████████████████████████| 37.4MB 9.4MB/s
Installing collected packages: en-core-web-sm
Running setup.py install for en-core-web-sm ... done
Successfully installed en-core-web-sm-2.0.0
Linking successful
/usr/lib/python2.7/site-packages/en_core_web_sm -->
/usr/lib64/python2.7/site-packages/spacy/data/en
You can now load the model via spacy.load('en')
import spacy
nlp = spacy.load('en')
---------------------------------------------------------------------------
OSError Traceback (most recent call last)
<ipython-input-2-0fcabaab8c3d> in <module>()
1 import spacy
2
----> 3 nlp = spacy.load('en')
/scratch/sjn/anaconda/lib/python3.6/site-packages/spacy/__init__.py in load(name, **overrides)
17 "to load. For example:\nnlp = spacy.load('{}')".format(depr_path),
18 'error')
---> 19 return util.load_model(name, **overrides)
20
21
/scratch/sjn/anaconda/lib/python3.6/site-packages/spacy/util.py in load_model(name, **overrides)
118 elif hasattr(name, 'exists'): # Path or Path-like to model data
119 return load_model_from_path(name, **overrides)
--> 120 raise IOError("Can't find model '%s'" % name)
121
122
OSError: Can't find model 'en'
Как мне это исправить?
Если я не использую sudo для загрузки модели en, я получаю:
Collecting https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.0.0/en_core_web_sm-2.0.0.tar.gz
Downloading https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.0.0/en_core_web_sm-2.0.0.tar.gz (37.4MB)
100% |████████████████████████████████| 37.4MB 9.6MB/s ta 0:00:011 62% |████████████████████ | 23.3MB 8.6MB/s eta 0:00:02
Requirement already satisfied (use --upgrade to upgrade): en-core-web-sm==2.0.0 from https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.0.0/en_core_web_sm-2.0.0.tar.gz in /scratch/sjn/anaconda/lib/python3.6/site-packages
You are using pip version 10.0.0, however version 10.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Error: Couldn't link model to 'en'
Creating a symlink in spacy/data failed. Make sure you have the required
permissions and try re-running the command as admin, or use a
virtualenv. You can still import the model as a module and call its
load() method, or create the symlink manually.
/scratch/sjn/anaconda/lib/python3.6/site-packages/en_core_web_sm -->
/scratch/sjn/anaconda/lib/python3.6/site-packages/spacy/data/en
Download successful but linking failed
Creating a shortcut link for 'en' didn't work (maybe you don't have
admin permissions?), but you can still load the model via its full
package name:
nlp = spacy.load('en_core_web_sm')
Ответы
Ответ 1
Ну что ж. получается, хотя мой python показывал pacon anaconda, когда я использовал загрузку python, он связывал его с python2.7 локальным на моей машине. Я исправил его, используя команду:
$ sudo /scratch/sjn/anaconda/bin/python -m spacy download en
Ответ 2
Используя sudo python...
вы устанавливаете модель для другого интерпретатора python, чем ваш локальный. Фактически, в вашем журнале говорится, что модель spaCy установлена на /usr/lib64/python2.7/site-packages/
вместо /scratch/sjn/anaconda/lib/python3.6/site-packages/
.
Попробуйте запустить python -m spacy download en
и он должен установить модель в правильный каталог.
Ответ 3
НАКОНЕЦ ОЧИСТИТЬ ОШИБКУ !!!
-
Пробовал несколько вариантов, в том числе:
python -m spacy download en
conda install -c conda-forge spacy
python -m spacy download en_core_web_sm
python -m spacy link en_core_web_sm en
-
Никто не работал, так как я использую сеть моей компании. Наконец эта команда сработала как шарм :-)
pip install https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.0.0/en_core_web_sm-2.0.0.tar.gz --no-deps
Спасибо Github Link :-)
Ответ 4
Если вы работаете в Windows, попробуйте открыть командную строку /Powershell как администратор. Пространственное связывание модели (после загрузки) будет происходить только при запуске командной строки от имени администратора
Ответ 5
1) Установите Spacy
$ python -m spacy download en
2) Установите модель en_core_web_sm
$ python -m spacy download en_core_web_sm
>>> import spacy
>>> nlp = spacy.load("en_core_web_sm")
Ответ 6
Была эта проблема для ноутбука Jupyter на Windows и исправлена:
Откройте Anaconda Prompt с правами администратора
Execute> python -m spacy скачать ru
Ответ 7
Для пользователей Windows просто запустите CMD в режиме администратора и запустите
python -m spacy download en
это правильно свяжет ваш модуль en. Тогда вы можете использовать
nlp = spacy.load('en')
Ответ 8
Работает после загрузки необходимой библиотеки с использованием python.
Ответ 9
Потому что я не нашел свою ошибку здесь (Для всех, кто использует jupyter Notebook, Alteryx, Company Network и имел эту ошибку):
я попытался создать макрос с python для определения темы, но получил ошибку, что нет модуля с именем "en_core_web_sm"
Установите следующие пакеты в начале со следующим кодом:
из пакета импорта ayx Package.installPackages(['pandas', 'numpy', 'matplotlib', 'gensim', 'spacy', 'pyLDAvis', ' https://github.com/explosion/spacy-models/releases/загрузить/en_core_web_sm-2.1.0/en_core_web_sm-2.1.0.tar.gz '])
И если вы ссылаетесь на модуль, используйте:
импорт en_core_web_sm
nlp = en_core_web_sm.load()
работал у меня перф отлично :))
Ответ 10
Загрузка Spacy путем запуска командной строки от имени администратора в Windows 10 машина решает проблемы с подключением
C:\Users\mrawat>python -m spacy download en
Requirement already satisfied: en_core_web_sm==2.1.0 from https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.1.0/en_core_web_sm-2.1.0.tar.gz#egg=en_core_web_sm==2.1.0 in c:\users\mrawat\appdata\local\programs\python\python37\lib\site-packages (2.1.0)
You are using pip version 19.0.3, however version 19.1.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
✔ Download and installation successful
You can now load the model via spacy.load('en_core_web_sm')
symbolic link created for C:\Users\mrawat\AppData\Local\Programs\Python\Python37\lib\site-packages\spacy\data\en <<===>> C:\Users\mrawat\AppData\Local\Programs\Python\Python37\lib\site-packages\en_core_web_sm
✔ Linking successful
C:\Users\mrawat\AppData\Local\Programs\Python\Python37\lib\site-packages\en_core_web_sm
-->
C:\Users\mrawat\AppData\Local\Programs\Python\Python37\lib\site-packages\spacy\data\en
You can now load the model via spacy.load('en')