Heroku部署错误:找不到与en-core-web-sm匹配的分布

时间:2019-05-07 18:40:16

标签: python django heroku spacy

我正在尝试将Django和spaCy项目部署到Heroku。但是我遇到了一个错误:找不到en-core-web-sm的匹配分布(这是一个可通过pip下载的ML模型)。我怎么解决这个问题?该模型已安装在虚拟环境中,并且可以正常工作。我通过点子冻结获得了需求文件。我正在使用Python 3.6.4。

3 个答案:

答案 0 :(得分:1)

pip也不起作用,所以我想知道您如何在本地安装它?

一种可能的解决方案是通过在pip install en-core-web-sm中添加这一行来从github而不是pypi获得它

requirements.txt

答案 1 :(得分:0)

我找到了一种在Heroku上安装en_core_web_sm的替代方法,但还没有发现任何副作用,它正在以这种方式编辑配置文件:

web:sh setup.sh && python -m spacy下载en_core_web_sm && streamlit运行app.py

请告诉我是否每个人都发现它不再可用。

答案 2 :(得分: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

并复制您在命令提示符中找到的类似行。