что делать с требованием без пипса в requirements.txt

Поэтому недавно я перенес свое приложение НЛП на новую машину. Добавлена ​​​​та же среда Python с pyenv, что и на старой машине, и установлены все зависимости с помощью pip. Затем была своего рода «зависимость», которая не устанавливается pip, возможно, «модель» - лучшее слово для этого. Команда, которая его установила:

python -m spacy.en.download

Теперь я хочу отметить, что это где-то в моем репозитории, поэтому, если однажды я или кто-то другой установит все это на другой компьютер, оно будет там, отмечено в соответствии с руководствами и соглашениями по стилю Python.

На этой странице spaCy сказано, что это можно указать в файле requirements.txt. Пока

pip freeze > requirements.txt

создаст файл, который не будет отображать правильную процедуру установки этого требования. Однажды кто-то побежит

pip install -r requirements.txt

..и все равно столкнется с той же ошибкой, что и я

Warning: no model found for 'en'

Only loading the 'en' tokenizer.

Кто-нибудь знает, как правильно указать это требование в файле requirements.txt?


person cardamom    schedule 31.05.2017    source источник


Ответы (1)


Пакеты данных spaCy на самом деле завернуты как пакеты pip именно по этой причине — у них есть setup.py, версия и т. д. Просто они большие и поэтому не распространяются через PyPi. Однако вы можете указать URL-адрес или путь к файлу в файле requirements.txt:

https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-1.2.0/en_core_web_sm-1.2.0.tar.gz

Многие производственные пользователи размещают свои собственные серверы PyPi (поэтому они не загружают произвольный код из Интернета). Вы можете распространять модели через хранилище PyPi, если вы это сделаете.

person syllogism_    schedule 01.06.2017
comment
Спасибо, я просто хотел соблюсти правила, так как эта вещь может скоро появиться в блоге или где-то люди увидят ее, и я все еще изучаю требования.txt, setup.py. Склад PyPi новый, не слышал об этом. - person cardamom; 01.06.2017
comment
Я получаю An error occurred while installing https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-1.2.0/en_core_web_sm-1.2.0.tar.gz#egg=en-core-web-sm! Will try again, когда добавляю это в свой файл requirements.txt. - person Nagarajan Shanmuganathan; 22.07.2019