Spacy下载en_core_web_sm模型时出现连接超时错误求助
Spacy模型下载连接超时问题解决
问题详情
执行命令python3 -m spacy download en_core_web_sm下载en_core_web_sm模型时,出现连接超时错误,完整报错信息如下:
Traceback (most recent call last): File "/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File "/usr/lib/python3.8/runpy.py", line 87, in _run_code exec(code, run_globals) File "/home/user/.local/lib/python3.8/site-packages/spacy/__main__.py", line 4, in <module> setup_cli() File "/home/user/.local/lib/python3.8/site-packages/spacy/cli/_util.py", line 71, in setup_cli command(prog_name=COMMAND) File "/home/user/.local/lib/python3.8/site-packages/click/core.py", line 1130, in __call__ return self.main(*args, **kwargs) File "/home/user/.local/lib/python3.8/site-packages/typer/core.py", line 778, in main return _main( File "/home/user/.local/lib/python3.8/site-packages/typer/core.py", line 216, in _main rv = self.invoke(ctx) File "/home/user/.local/lib/python3.8/site-packages/click/core.py", line 1657, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/user/.local/lib/python3.8/site-packages/click/core.py", line 1404, in invoke return ctx.invoke(self.callback, **ctx.params) File "/home/user/.local/lib/python3.8/site-packages/click/core.py", line 760, in invoke return __callback(*args, **kwargs) File "/home/user/.local/lib/python3.8/site-packages/typer/main.py", line 683, in wrapper return callback(**use_params) # type: ignore File "/home/user/.local/lib/python3.8/site-packages/spacy/cli/download.py", line 36, in download_cli download(model, direct, sdist, *ctx.args) File "/home/user/.local/lib/python3.8/site-packages/spacy/cli/download.py", line 70, in download compatibility = get_compatibility() File "/home/user/.local/lib/python3.8/site-packages/spacy/cli/download.py", line 97, in get_compatibility r = requests.get(about.__compatibility__) File "/usr/lib/python3/dist-packages/requests/api.py", line 75, in get return request('get', url, params=params, **kwargs) File "/usr/lib/python3/dist-packages/requests/api.py", line 60, in request return session.request(method=method, url=url, **kwargs) File "/usr/lib/python3/dist-packages/requests/sessions.py", line 533, in request resp = self.send(prep, **send_kwargs) File "/usr/lib/python3/dist-packages/requests/sessions.py", line 646, in send r = adapter.send(request, **kwargs) File "/usr/lib/python3/dist-packages/requests/adapters.py", line 516, in send raise ConnectionError(e, request=request) requests.exceptions.ConnectionError: HTTPSConnectionPool(host='raw.githubusercontent.com', port=443): Max retries exceeded with url: /explosion/spacy-models/master/compatibility.json (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f097a06e700>: Failed to establish a new connection: [Errno 110] Connection timed out'))
当前环境:spacy==3.4.4,Python 3.8.10
可行解决方案
直接通过pip安装匹配版本的模型:
跳过Spacy的在线校验步骤,直接安装与Spacy版本对应的模型包。针对spacy 3.4.4,执行命令:pip install en-core-web-sm==3.4.1注:模型版本必须与Spacy主版本保持一致,3.4.x系列的Spacy对应3.4.x系列的模型
手动下载模型包后本地安装:
- 获取对应版本的模型tar包(如en_core_web_sm-3.4.1.tar.gz)
- 执行本地安装命令:
pip install /本地路径/en_core_web_sm-3.4.1.tar.gz
配置代理(网络受限场景):
执行下载命令时指定代理:python3 -m spacy download en_core_web_sm --proxy http://你的代理地址:端口或者临时设置环境变量后再执行下载:
export HTTP_PROXY=http://你的代理地址:端口 export HTTPS_PROXY=http://你的代理地址:端口 python3 -m spacy download en_core_web_sm
内容的提问来源于stack exchange,提问作者krishna
相关产品推荐
相关产品推荐

