Spacy nlp = spacy.load("en_core_web_lg")

33,143

Solution 1

For a Linux system run the below code in terminal if you would be using a virtual environment else skip first and second command :

python -m venv .env
source .env/bin/activate
pip install -U spacy
python -m spacy download en_core_web_lg

The downloaded language model can be found at :

/usr/local/lib/python3.6/dist-packages/en_core_web_lg -->
/usr/local/lib/python3.6/dist-packages/spacy/data/en_core_web_lg

For more documentation information refer https://spacy.io/usage

Hope it was helpful.

Solution 2

Commands to install any package from spacy check here about en_ore_web_lg ~800MB:

python -m spacy download en

python -m spacy download en_core_web_sm

Solution 3

import spacy

spacy.cli.download("en_core_web_sm")
nlp = spacy.load("en_core_web_sm")

This works for me! I also searched a lot and found this answer there: How to download additional files from modules on pycharm

Solution 4

import en_core_web_sm
nlp = en_core_web_sm.load()

If this works, it'd indicate that the problem is related to the way spaCy detects installed packages. If it doesn't work and gives you an ImportError, it means that the Python environment the model was installed in is not the same as your Jupyter environment.

Also, maybe double-check that the model installed correctly? Models are installed as Python packages by running pip in a subprocess. And pip errors can sometimes be a bit subtle and not immediately obvious in the output.

Share:
33,143

Related videos on Youtube

acodejdatam
Author by

acodejdatam

Updated on August 22, 2022

Comments

  • acodejdatam
    acodejdatam over 1 year

    I already have spaCy downloaded, but everytime I try the nlp = spacy.load("en_core_web_lg"), command, I get this error:

    OSError: [E050] Can't find model 'en_core_web_lg'. It doesn't seem to be a shortcut link, a Python package or a valid path to a data directory.

    I already tried

    >>> import spacy
    >>> nlp = spacy.load("en_core_web_sm")
    

    and this does not work like it would on my personal computer.

    My question is how do I work around this? What directory specifically do I need to drop the spacy en model into on my computer so that it is found?

  • acodejdatam
    acodejdatam almost 5 years
    this was already tried, but what did work for me specifically was downloading the en-model directly and installing with pip. Thanks for the help! pip install User/Downloads/en_core_web_lg-2.1.0.tar.gz
  • ASHu2
    ASHu2 almost 5 years
    Yeah, that was also an option. Nice that your problem solved. But if your direct download did not work then I think then you might have multiple python environments or your path is incorrect...
  • Andrew Xia
    Andrew Xia almost 5 years
    Another cause might be that you weren't running in administrator mode (if you're on windows) when you were running the download command
  • wawawa
    wawawa almost 3 years
    I executed the second command successfully, but why I got an error OSError: [E049] Can't find spaCy data directory: 'None'. Check your installation and permissions, or use spacy.util.set_data_path to customise the location if necessary. when trying to load the en model?
  • ASHu2
    ASHu2 almost 3 years
    did you check this issue : spacy 3592