Как исправить «OSError: [E050] Не удается найти модель« en »», когда «en» уже загружена + модели действительны - PullRequest
0 голосов
/ 26 мая 2019

Я пытаюсь загрузить 'en' для простора в блокнот jupyter, но я сталкиваюсь со следующей ошибкой.Я следовал за шагами, представленными в предыдущих темах, но безрезультатно.

Команды успешно выполняются с терминала, однако изменения в sys.path и sys.executable у jupyter также не увенчались успехом.Я использую python3.7.

Я довольно новичок в jupyter / python, поэтому я ценю любые и все советы.

Я включил строки 3 и 4, как это было предложено различнымидругие ответы на этом сайте, однако та же ошибка сохраняется, как показано ниже:

1. import spacy
2. import sys
3. !python3 -m spacy validate
4. !python3 -m spacy download en
5. nlp = spacy.load('en')

Когда я заменяю строку 5 на: nlp = spacy.load('en_core_web_sm'), я получаю ту же проблему, найденную в https://github.com/explosion/spaCy/issues/3102,, но решение тамдолжен проверить как в LINE3 (который, кажется, в порядке).

Это выходные данные строк 3, 4 и 5, показывающие, что модель действительна, она загружена, но ошибка все еще сохраняется

Вывод LINE3:

✔ Loaded compatibility table

====================== Installed models (spaCy v2.1.4) ======================
ℹ spaCy installation:
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/spacy-2.1.4-py3.7-macosx-10.9-x86_64.egg/spacy

TYPE      NAME             MODEL            VERSION                            
package   en-core-web-sm   en_core_web_sm   2.1.0   ✔
link      en               en_core_web_sm   2.1.0   ✔

LINE4 и LINE5 выход:

    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 /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (2.1.0)
    You are using pip version 19.0.1, however version 19.1.1 is available.
    You should consider upgrading via the 'pip install --upgrade pip' command.
    ✔ Download and installation successful
    You can now load the model via spacy.load('en_core_web_sm')
    ✔ Linking successful
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/en_core_web_sm
-->
/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/spacy-2.1.4-py3.7-macosx-10.9-x86_64.egg/spacy/data/en
You can now load the model via spacy.load('en')
---------------------------------------------------------------------------
OSError                                   Traceback (most recent call last)
<ipython-input-11-89c4b06ef071> in <module>
      1 get_ipython().system('python3 -m spacy download en')
----> 2 spacy.load('en')

/usr/local/lib/python3.7/site-packages/spacy/__init__.py in load(name, **overrides)
     25     if depr_path not in (True, False, None):
     26         deprecation_warning(Warnings.W001.format(path=depr_path))
---> 27     return util.load_model(name, **overrides)
     28 
     29 

/usr/local/lib/python3.7/site-packages/spacy/util.py in load_model(name, **overrides)
    134     elif hasattr(name, "exists"):  # Path or Path-like to model data
    135         return load_model_from_path(name, **overrides)
--> 136     raise IOError(Errors.E050.format(name=name))
    137 
    138 

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.

Спасибо!

...