安装spaCy及语言包遇typing-extensions版本冲突与导入错误求助
解决方案
方案一:不升级Python(适配Python 3.7)
问题核心是Python 3.7版本过旧,引发库依赖冲突:spaCy安装时强制降级typing-extensions到4.4.0,但你已安装的pydantic 2.x要求typing-extensions>=4.6.1,且4.4.0版本没有pydantic需要的deprecated模块。按以下步骤修复:
- 先卸载冲突包,清理环境:
pip uninstall -y spacy pydantic pydantic-core typing-extensions
- 安装适配Python 3.7的spaCy稳定版本(3.5.x系列是最后支持3.7的版本):
pip install spacy==3.5.3
- 安装兼容的
typing-extensions版本,同时满足spaCy和pydantic 1.x的要求:
pip install typing-extensions==4.6.3
- 下载英文语言包(推荐用完整包名,避免别名问题):
python -m spacy download en_core_web_sm
方案二:升级Python(更推荐)
Python 3.7在2023年6月已停止官方维护,后续会有越来越多库不再支持它,升级到3.8或3.9版本(对新手友好、兼容性强)能从根源解决这类依赖冲突:
- 下载Python 3.8或3.9的安装包(安装时记得勾选「Add Python to PATH」)
- 安装完成后打开新终端,直接安装spaCy:
pip install spacy
- 下载英文语言包:
python -m spacy download en
内容的提问来源于stack exchange,提问作者LahliT
相关产品推荐
相关产品推荐

