首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >‘any’t load Spacy model for any language: en‘在本地运行良好,但在heroku上部署时出现问题

‘any’t load Spacy model for any language: en‘在本地运行良好,但在heroku上部署时出现问题
EN

Stack Overflow用户
提问于 2021-04-09 08:23:15
回答 1查看 236关注 0票数 0

Spacy (由亵渎过滤器使用)出现问题,在本地主机上运行良好,但在Heroku上部署时遇到此问题,将在下面发布Heroku日志:

代码语言:javascript
复制
2021-04-09T00:13:06.393111+00:00 app[web.1]: self.halt(reason=inst.reason, exit_status=inst.exit_status)
2021-04-09T00:13:06.393141+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/arbiter.py", line 342, in halt
2021-04-09T00:13:06.393578+00:00 app[web.1]: self.stop()
2021-04-09T00:13:06.393608+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/arbiter.py", line 393, in stop
2021-04-09T00:13:06.394070+00:00 app[web.1]: time.sleep(0.1)
2021-04-09T00:13:06.394098+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/arbiter.py", line 242, in handle_chld
2021-04-09T00:13:06.394484+00:00 app[web.1]: self.reap_workers()
2021-04-09T00:13:06.394515+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/arbiter.py", line 525, in reap_workers
2021-04-09T00:13:06.395013+00:00 app[web.1]: raise HaltServer(reason, self.WORKER_BOOT_ERROR)
2021-04-09T00:13:06.395207+00:00 app[web.1]: gunicorn.errors.HaltServer: <HaltServer 'Worker failed to boot.' 3>
2021-04-09T00:13:06.476860+00:00 heroku[web.1]: Process exited with status 1
2021-04-09T00:13:06.557154+00:00 heroku[web.1]: State changed from up to crashed
2021-04-09T00:13:11.794584+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=aniroku.herokuapp.com request_id=686eea88-4a27-464c-a946-1d0af3050f0a fwd="98.248.138.150" dyno=web.1 connect=5000ms service= status=503 bytes= protocol=https
2021-04-09T00:14:05.973648+00:00 heroku[web.1]: State changed from crashed to starting
2021-04-09T00:14:16.176963+00:00 heroku[web.1]: Starting process with command `gunicorn app:app`
2021-04-09T00:14:19.480591+00:00 app[web.1]: [2021-04-09 00:14:19 +0000] [4] [INFO] Starting gunicorn 20.1.0
2021-04-09T00:14:19.481348+00:00 app[web.1]: [2021-04-09 00:14:19 +0000] [4] [INFO] Listening at: http://0.0.0.0:27310 (4)
2021-04-09T00:14:19.482508+00:00 app[web.1]: [2021-04-09 00:14:19 +0000] [4] [INFO] Using worker: sync
2021-04-09T00:14:19.490234+00:00 app[web.1]: [2021-04-09 00:14:19 +0000] [7] [INFO] Booting worker with pid: 7
2021-04-09T00:14:19.569114+00:00 app[web.1]: [2021-04-09 00:14:19 +0000] [8] [INFO] Booting worker with pid: 8
2021-04-09T00:14:20.151760+00:00 heroku[web.1]: State changed from starting to up
2021-04-09T00:14:27.390074+00:00 app[web.1]: [2021-04-09 00:14:27 +0000] [8] [ERROR] Exception in worker process
2021-04-09T00:14:27.390108+00:00 app[web.1]: Traceback (most recent call last):
2021-04-09T00:14:27.390111+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/arbiter.py", line 589, in spawn_worker
2021-04-09T00:14:27.390112+00:00 app[web.1]: worker.init_process()
2021-04-09T00:14:27.390112+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/workers/base.py", line 134, in init_process
2021-04-09T00:14:27.390112+00:00 app[web.1]: self.load_wsgi()
2021-04-09T00:14:27.390113+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/workers/base.py", line 146, in load_wsgi
2021-04-09T00:14:27.390113+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2021-04-09T00:14:27.390114+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/base.py", line 67, in wsgi
2021-04-09T00:14:27.390115+00:00 app[web.1]: self.callable = self.load()
2021-04-09T00:14:27.390115+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 58, in load
2021-04-09T00:14:27.390115+00:00 app[web.1]: return self.load_wsgiapp()
2021-04-09T00:14:27.390116+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiapp
2021-04-09T00:14:27.390116+00:00 app[web.1]: return util.import_app(self.app_uri)
2021-04-09T00:14:27.390117+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/util.py", line 359, in import_app
2021-04-09T00:14:27.390117+00:00 app[web.1]: mod = importlib.import_module(module)
2021-04-09T00:14:27.390118+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/importlib/__init__.py", line 127, in import_module
2021-04-09T00:14:27.390119+00:00 app[web.1]: return _bootstrap._gcd_import(name[level:], package, level)
2021-04-09T00:14:27.390119+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
2021-04-09T00:14:27.390120+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
2021-04-09T00:14:27.390120+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
2021-04-09T00:14:27.390121+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
2021-04-09T00:14:27.390121+00:00 app[web.1]: File "<frozen importlib._bootstrap_external>", line 790, in exec_module
2021-04-09T00:14:27.390122+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
2021-04-09T00:14:27.390122+00:00 app[web.1]: File "/app/app.py", line 38, in <module>
2021-04-09T00:14:27.390122+00:00 app[web.1]: pf = ProfanityFilter()
2021-04-09T00:14:27.390124+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/profanity_filter/profanity_filter.py", line 138, in __init__
2021-04-09T00:14:27.390124+00:00 app[web.1]: self.config(
2021-04-09T00:14:27.390124+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/profanity_filter/profanity_filter.py", line 175, in config
2021-04-09T00:14:27.390125+00:00 app[web.1]: self._set_languages(languages, load_morphs=morphs is None, load_nlps=nlps is None, load_spells=spells is None)
2021-04-09T00:14:27.390125+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/profanity_filter/profanity_filter.py", line 430, in _set_languages
2021-04-09T00:14:27.390126+00:00 app[web.1]: self.nlps = None
2021-04-09T00:14:27.390126+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/profanity_filter/profanity_filter.py", line 349, in nlps
2021-04-09T00:14:27.390126+00:00 app[web.1]: raise ProfanityFilterError(f"Couldn't load Spacy model for any of languages: {self.languages_str}")
2021-04-09T00:14:27.390127+00:00 app[web.1]: profanity_filter.types_.ProfanityFilterError: Couldn't load Spacy model for any of languages: en
2021-04-09T00:14:27.394479+00:00 app[web.1]: [2021-04-09 00:14:27 +0000] [8] [INFO] Worker exiting (pid: 8)
2021-04-09T00:14:27.395242+00:00 app[web.1]: [2021-04-09 00:14:27 +0000] [7] [ERROR] Exception in worker process
2021-04-09T00:14:27.395242+00:00 app[web.1]: Traceback (most recent call last):
2021-04-09T00:14:27.395243+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/arbiter.py", line 589, in spawn_worker
2021-04-09T00:14:27.395243+00:00 app[web.1]: worker.init_process()
2021-04-09T00:14:27.395244+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/workers/base.py", line 134, in init_process
2021-04-09T00:14:27.395244+00:00 app[web.1]: self.load_wsgi()
2021-04-09T00:14:27.395244+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/workers/base.py", line 146, in load_wsgi
2021-04-09T00:14:27.395245+00:00 app[web.1]: self.wsgi = self.app.wsgi()
2021-04-09T00:14:27.395245+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/base.py", line 67, in wsgi
2021-04-09T00:14:27.395245+00:00 app[web.1]: self.callable = self.load()
2021-04-09T00:14:27.395246+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 58, in load
2021-04-09T00:14:27.395246+00:00 app[web.1]: return self.load_wsgiapp()
2021-04-09T00:14:27.395246+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/app/wsgiapp.py", line 48, in load_wsgiapp
2021-04-09T00:14:27.395247+00:00 app[web.1]: return util.import_app(self.app_uri)
2021-04-09T00:14:27.395247+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/gunicorn/util.py", line 359, in import_app
2021-04-09T00:14:27.395247+00:00 app[web.1]: mod = importlib.import_module(module)
2021-04-09T00:14:27.395248+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/importlib/__init__.py", line 127, in import_module
2021-04-09T00:14:27.395250+00:00 app[web.1]: return _bootstrap._gcd_import(name[level:], package, level)
2021-04-09T00:14:27.395250+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1030, in _gcd_import
2021-04-09T00:14:27.395251+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 1007, in _find_and_load
2021-04-09T00:14:27.395251+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked
2021-04-09T00:14:27.395251+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 680, in _load_unlocked
2021-04-09T00:14:27.395252+00:00 app[web.1]: File "<frozen importlib._bootstrap_external>", line 790, in exec_module
2021-04-09T00:14:27.395252+00:00 app[web.1]: File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
2021-04-09T00:14:27.395252+00:00 app[web.1]: File "/app/app.py", line 38, in <module>
2021-04-09T00:14:27.395253+00:00 app[web.1]: pf = ProfanityFilter()
2021-04-09T00:14:27.395253+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/profanity_filter/profanity_filter.py", line 138, in __init__
2021-04-09T00:14:27.395253+00:00 app[web.1]: self.config(
2021-04-09T00:14:27.395254+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/profanity_filter/profanity_filter.py", line 175, in config
2021-04-09T00:14:27.395255+00:00 app[web.1]: self._set_languages(languages, load_morphs=morphs is None, load_nlps=nlps is None, load_spells=spells is None)
2021-04-09T00:14:27.395255+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/profanity_filter/profanity_filter.py", line 430, in _set_languages
2021-04-09T00:14:27.395255+00:00 app[web.1]: self.nlps = None
2021-04-09T00:14:27.395256+00:00 app[web.1]: File "/app/.heroku/python/lib/python3.9/site-packages/profanity_filter/profanity_filter.py", line 349, in nlps
2021-04-09T00:14:27.395256+00:00 app[web.1]: raise ProfanityFilterError(f"Couldn't load Spacy model for any of languages: {self.languages_str}")
2021-04-09T00:14:27.395262+00:00 app[web.1]: profanity_filter.types_.ProfanityFilterError: Couldn't load Spacy model for any of languages: en
2021-04-09T00:14:27.395688+00:00 app[web.1]: [2021-04-09 00:14:27 +0000] [7] [INFO] Worker exiting (pid: 7)
2021-04-09T00:14:27.642013+00:00 heroku[router]: at=error code=H13 desc="Connection closed without response" method=GET path="/" host=aniroku.herokuapp.com request_id=b060bda8-7d95-4916-8ae7-0e2c40e04545 fwd="98.248.138.150" dyno=web.1 connect=0ms service=6766ms status=503 bytes=0 protocol=https
2021-04-09T00:14:27.660896+00:00 app[web.1]: [2021-04-09 00:14:27 +0000] [4] [WARNING] Worker with pid 7 was terminated due to signal 15
2021-04-09T00:14:27.744663+00:00 app[web.1]: [2021-04-09 00:14:27 +0000] [4] [INFO] Shutting down: Master
2021-04-09T00:14:27.744855+00:00 app[web.1]: [2021-04-09 00:14:27 +0000] [4] [INFO] Reason: Worker failed to boot.
2021-04-09T00:14:27.860219+00:00 heroku[web.1]: Process exited with status 3
2021-04-09T00:14:27.943608+00:00 heroku[web.1]: State changed from up to crashed
2021-04-09T00:14:33.273100+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=aniroku.herokuapp.com request_id=6a90333d-1254-44c6-98b9-4bcb953ba60d fwd="98.248.138.150" dyno=web.1 connect=5000ms service= status=503 bytes= protocol=https

还有我的需求文件:

代码语言:javascript
复制
bcrypt==3.2.0
blinker==1.4
blis==0.7.4
cached-property==1.5.2
catalogue==1.0.0
certifi==2020.12.5
cffi==1.14.5
chardet==4.0.0
click==7.1.2
cymem==2.0.5
dnspython==2.1.0
email-validator==1.1.2
https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.3.1/en_core_web_sm-2.3.1.tar.gz
Flask==1.1.2
Flask-Bcrypt==0.7.1
Flask-DebugToolbar==0.11.0
Flask-Login==0.5.0
Flask-Mail==0.9.1
Flask-SQLAlchemy==2.5.1
Flask-WTF==0.14.3
greenlet==1.0.0
gunicorn==20.1.0
idna==2.10
itsdangerous==1.1.0
Jinja2==2.11.3
MarkupSafe==1.1.1
more-itertools==8.7.0
murmurhash==1.0.5
numpy==1.20.2
ordered-set==3.1.1
ordered-set-stubs==0.1.3
packaging==20.9
pathy==0.4.0
plac==1.1.3
poetry-version==0.1.5
preshed==3.0.5
profanity-filter==1.3.3
psycopg2-binary==2.8.6
pycparser==2.20
pydantic==1.7.3
pyparsing==2.4.7
redis==3.5.3
requests==2.25.1
ruamel.yaml==0.15.100
six==1.15.0
smart-open==3.0.0
spacy==2.3.5
spacy-legacy==3.0.2
SQLAlchemy==1.4.6
srsly==1.0.5
thinc==7.4.5
tomlkit==0.5.11
tqdm==4.60.0
typer==0.3.2
typing-extensions==3.7.4.3
urllib3==1.26.4
wasabi==0.8.2
Werkzeug==1.0.1
WTForms==2.3.3

在我的应用程序文件中:

代码语言:javascript
复制
import spacy
import en_core_web_sm

pf = ProfanityFilter()
nlp = spacy.load('en_core_web_sm')
profanity_filter = ProfanityFilter(nlps={'en': nlp})  
nlp.add_pipe(profanity_filter.spacy_component, last=True)

也可能是我的部署日志中的其他问题,但试图一次解决一个问题,感谢您在这方面的帮助!

EN

回答 1

Stack Overflow用户

发布于 2021-04-12 15:12:18

此要求将模型安装为en_core_web_sm,但不添加en符号链接。

代码语言:javascript
复制
https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.3.1/en_core_web_sm-2.3.1.tar.gz

您可以使用以下命令添加符号链接:

代码语言:javascript
复制
python -m spacy link en_core_web_sm en
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67013484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档