I manage to install an old version of spacy with pip3 install spacy==2.2.4.
However, when I follow this up with
python3 -m spacy download en_core_web_sm, it downloads en_core_web_sm-2.2.5.tar.gz.
I manage to install an old version of spacy with pip3 install spacy==2.2.4.
However, when I follow this up with
python3 -m spacy download en_core_web_sm, it downloads en_core_web_sm-2.2.5.tar.gz.
spaCy 2.2.4 is compatible with en_core_web_sm 2.2.5 and 2.2.0
You can install it directly like so:
pip install https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.2.5/en_core_web_sm-2.2.5.tar.gz
pip install https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.2.0/en_core_web_sm-2.2.0.tar.gz
Check here for model compatibility:
"2.2.4": {
"en_vectors_web_lg": ["2.1.0"],
"en_core_web_sm": ["2.2.5", "2.2.0"],
"en_core_web_md": ["2.2.5", "2.2.0"],
"en_core_web_lg": ["2.2.5", "2.2.0"]
}
You can check whether language models that you have downloaded are compatible with the currently installed version of spaCy by running validate command. The command is also useful to detect out-of-sync model links. Check here
python3 -m spacy validate
After running this command, if you get check marks for every model you have downloaded then this means everything is working fine.
Spacy requires you to have matching spacy builds with spacy models. If you are forced to use a older spacy build, say 3.0.x instead of the latest 3.2.x, you will need to install the older model.
Inorder to install, you can use the command (for 3.0 en_core_web_sm model)
python -m spacy download en_core_web_sm-3.0.0 --direct