You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

spaCy导入异常求助:ModuleNotFoundError: No module named 'spacy.en'

解决spaCy导入ModuleNotFoundError的问题

看起来你遇到的问题大概率是spaCy版本变动导致的——虽然你说没改动环境,但有时候包管理工具(比如pip/conda)可能会在后台自动更新依赖,或者你不小心切换了虚拟环境。咱们一步步排查解决:

  • 第一步:确认当前spaCy版本
    先在终端里运行这个命令,查看你现在使用的spaCy版本:

    pip show spacy
    

    如果输出的版本是3.x及以上,那问题根源就找到了——spaCy 3.0之后彻底重构了语言模块的导入逻辑,spacy.en这个路径已经被移除了。

  • 第二步:适配新版本的正确导入方式
    如果你打算继续使用新版spaCy,需要先下载对应的英文模型(未安装的话):

    python -m spacy download en_core_web_sm
    

    之后在代码里这样导入和调用:

    import spacy
    nlp = spacy.load("en_core_web_sm")
    
  • 第三步:如果要保留旧版导入逻辑
    要是你的代码依赖from spacy.en import English的写法,就得把spaCy降级到2.x系列的稳定版本,比如:

    pip install spacy==2.3.7
    

    然后安装适配旧版的英文语言包:

    python -m spacy download en
    
  • 额外检查:确认当前Python环境
    有时候可能是你不小心切换了虚拟环境,导致当前环境里根本没安装spaCy。可以运行以下命令查看当前Python路径:

    # Linux/macOS系统
    which python
    # Windows系统
    where python
    

    再对应检查该环境下的spaCy安装状态,确保是你之前正常使用的那个环境。

内容的提问来源于stack exchange,提问作者LMGagne

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.22 09:50:16