下载 spacy 模型并得到 AttributeError 'NoneType' object has no attribute 'ndarray'

Download spacy model and get AttributeError 'NoneType' object has no attribute 'ndarray'

我是 python spacy 软件包的新手。

我想下载模型 'en_core_web_sm',但我得到了 AttributeError。

我在网上搜索了 2 天,但无法修复它。

有人可以帮助我吗?

代码:

import spacy
nlp=spacy.load('en_core_web_sm')

错误:

n = y.shape[0]

AttributeError: 'NoneType' object has no attribute 'ndarray'

我在 conda 环境 (spyder) 上使用 Python 3.6

我在开发过程中遇到过一次,原因是出于某种原因,我的代码欺骗了 spaCy,让它认为我在 GPU 上。在 GPU 上,spaCy 使用 cupy 而不是 numpy —— 如果 cupy 没有安装,它会 defaults to None。代码很可能应该调用 numpy.ndarray,但它正在调用 cupy.ndarray,即 None.ndarray,这会导致该错误。

如果您打算 运行 GPU 上的 spaCy,请确保它可用并且您 installed 具有适合您的 CUDA 版本的正确依赖项。如果您在 CPU 上 运行ning spaCy,可以尝试以下操作:

  • 检查您的环境中安装了什么,并确保您没有意外地以半损坏的 cupy 或类似的安装结束。还要确保 numpy 已正确安装。
  • 答案不令人满意,但通常有帮助:卸载 spaCy 及其依赖项,然后重新安装最新版本,最好是在干净的虚拟环境中。