【发布时间】:2019-09-25 11:25:47
【问题描述】:
我正在尝试将我的 Django 和 spaCy 项目部署到 Heroku。但我收到一个错误:没有找到与 en-core-web-sm 匹配的分布(这是一个可通过 pip 下载的 ML 模型)。我怎么解决这个问题?该模型在本地安装在虚拟环境中并且可以正常工作。我通过 pip freeze 获得了需求文件。我正在使用 Python 3.6.4。
【问题讨论】:
标签: python django heroku spacy
我正在尝试将我的 Django 和 spaCy 项目部署到 Heroku。但我收到一个错误:没有找到与 en-core-web-sm 匹配的分布(这是一个可通过 pip 下载的 ML 模型)。我怎么解决这个问题?该模型在本地安装在虚拟环境中并且可以正常工作。我通过 pip freeze 获得了需求文件。我正在使用 Python 3.6.4。
【问题讨论】:
标签: python django heroku spacy
看起来pip install en-core-web-sm 也不起作用,所以我想知道您是如何在本地安装它的?
一种可能的解决方案是从 github 而不是 pypi 获取它,方法是在 requirements.txt 中添加这一行
-e https://github.com/explosion/spacy-models/releases/download/en_vectors_web_lg-2.1.0/en_vectors_web_lg-2.1.0.tar.gz#egg=en_core_web_sm
【讨论】:
-e
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
只需将以下行添加到您的“requirements.txt”文件中...
en-core-web-sm @ https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.0.0/en_core_web_sm-3.0.0-py3-none-any.whl
或者,要获得确切的版本,请运行以下命令:
pip freeze
并复制您在命令提示符中找到的类似行。
【讨论】:
我找到了在 Heroku 上安装 en_core_web_sm 的替代方法,但尚未发现任何副作用,它正在以这种方式编辑配置文件:
web: sh setup.sh && python -m spacy 下载 en_core_web_sm && streamlit run app.py
如果每个人都发现它不再可用,请告诉我。
【讨论】: