web-dev-qa-db-ja.com

SpaCy OSError:モデル「en」が見つかりません

モデルをダウンロードしてもロードできません

[jalal@goku entity-sentiment-analysis]$ which python
/scratch/sjn/anaconda/bin/python
[jalal@goku 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'

どうすれば修正できますか?

EnモデルのダウンロードにSudoを使用しない場合、次のようになります。

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')
14
Mona Jalal

しかたがない。どのpythonがanaconda pythonを表示していたとしても、pythonダウンロードを使用しているときに、マシンのpython2.7ローカルにリンクしていました。以下のコマンドを使用して修正しました:

$ Sudo /scratch/sjn/anaconda/bin/python -m spacy download en
5
Mona Jalal

Sudo python ...を使用することにより、ローカルのpythonインタープリターとは異なるモデルをインストールします。実際、spaCyモデルは/usr/lib64/python2.7/site-packages/ではなく/scratch/sjn/anaconda/lib/python3.6/site-packages/にインストールされているとログに記録されます。

python -m spacy download enを実行してみると、モデルが正しいディレクトリにインストールされます。

30
jgontrum

最終的にエラーをクリアしました!!!

  • 以下を含む複数のオプションを試しました:

    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

  • Im Company's Networkを使用して以来、機能しませんでした。最後にこれコマンドはチャームのように機能しました:-)

    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リンクのおかげで:-)

9
Vetrivel PS

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")
3
Raghu

Windowsを使用している場合は、管理者としてcmd Prompt/Powershellを開いてみてください。モデルの空間リンク(ダウンロード後)は、管理者としてコマンドプロンプトを実行した場合にのみ発生します

3
sam

Windowsユーザーの場合は、CMDを管理者モードとして実行し、実行するだけです

python -m spacy download en

これにより、enモジュールが適切にリンクされます。その後、使用することができます

nlp = spacy.load('en')
1
Sourav Purkait

Windows上のJupyterノートブックでこの問題が発生し、修正されました。

管理者権限でAnacondaプロンプトを開きます

実行> python -m spacy download en

1
Saurabh Jain

Bcここでエラーが見つかりませんでした(jupyter Notebook、Alteryx、Company Networkを使用していて、このエラーが発生したすべてのユーザー向け):

トピック検出のためにpythonでマクロを作成しようとしましたが、「en_core_web_sm」という名前のモジュールがないというエラーが表示されました

次のコードを使用して、最初に次のパッケージをインストールします。

from ayx import Package Package.installPackages(['' pandas '、' numpy '、' matplotlib '、' gensim '、' spacy '、' pyLDAvis '、' https://github.com/explosion/spacy- models/releases/download/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()

私のためにうまく働いた:))

0
Daweed24321