导入 spacy : TypeError: issubclass() arg 1 必须是一个类

问题描述 投票:0回答:1

我正在使用带有 python 3.9.2 的 Jupyter 笔记本

我尝试通过以下方式安装 spacy:

!pip install spacy

安装后我尝试导入spacy,出现此错误:



TypeError                                 Traceback (most recent call last)
C:\Users\NAVIGA~1\AppData\Local\Temp/ipykernel_24076/572880994.py in <module>
----> 1 import spacy

~\AppData\Roaming\Python\Python39\site-packages\spacy\__init__.py in <module>
     12 from thinc.api import Config
     13 
---> 14 from . import pipeline  # noqa: F401
     15 from .cli.info import info  # noqa: F401
     16 from .glossary import explain  # noqa: F401

~\AppData\Roaming\Python\Python39\site-packages\spacy\pipeline\__init__.py in <module>
----> 1 from .attributeruler import AttributeRuler
      2 from .dep_parser import DependencyParser
      3 from .edit_tree_lemmatizer import EditTreeLemmatizer
      4 from .entity_linker import EntityLinker
      5 from .ner import EntityRecognizer

~\AppData\Roaming\Python\Python39\site-packages\spacy\pipeline\attributeruler.py in <module>
      4 from pathlib import Path
      5 
----> 6 from .pipe import Pipe
      7 from ..errors import Errors
      8 from ..training import Example

~\AppData\Roaming\Python\Python39\site-packages\spacy\pipeline\pipe.pyx in init spacy.pipeline.pipe()

~\AppData\Roaming\Python\Python39\site-packages\spacy\vocab.pyx in init spacy.vocab()

~\AppData\Roaming\Python\Python39\site-packages\spacy\tokens\__init__.py in <module>
----> 1 from .doc import Doc
      2 from .token import Token
      3 from .span import Span
      4 from .span_group import SpanGroup
      5 from ._serialize import DocBin

~\AppData\Roaming\Python\Python39\site-packages\spacy\tokens\doc.pyx in init spacy.tokens.doc()

~\AppData\Roaming\Python\Python39\site-packages\spacy\schemas.py in <module>
    220 
    221 
--> 222 class TokenPattern(BaseModel):
    223     orth: Optional[StringValue] = None
    224     text: Optional[StringValue] = None

~\AppData\Roaming\Python\Python39\site-packages\pydantic\main.cp39-win_amd64.pyd in pydantic.main.ModelMetaclass.__new__()

~\AppData\Roaming\Python\Python39\site-packages\pydantic\fields.cp39-win_amd64.pyd in pydantic.fields.ModelField.infer()

~\AppData\Roaming\Python\Python39\site-packages\pydantic\fields.cp39-win_amd64.pyd in pydantic.fields.ModelField.__init__()

~\AppData\Roaming\Python\Python39\site-packages\pydantic\fields.cp39-win_amd64.pyd in pydantic.fields.ModelField.prepare()

~\AppData\Roaming\Python\Python39\site-packages\pydantic\fields.cp39-win_amd64.pyd in pydantic.fields.ModelField._type_analysis()

~\AppData\Roaming\Python\Python39\site-packages\pydantic\fields.cp39-win_amd64.pyd in pydantic.fields.ModelField._type_analysis()

~\OneDrive - kochind.com\Documents\Python\Python39\lib\typing.py in __subclasscheck__(self, cls)
    833             return issubclass(cls.__origin__, self.__origin__)
    834         if not isinstance(cls, _GenericAlias):
--> 835             return issubclass(cls, self.__origin__)
    836         return super().__subclasscheck__(cls)
    837 

TypeError: issubclass() arg 1 must be a class
python spacy
1个回答
0
投票

我找到了解决方案,

我需要安装:

typing_extensions<4.6.0 

https://github.com/explosion/spaCy/issues/12659#issuecomment-1559274668

现在正在运行:

© www.soinside.com 2019 - 2024. All rights reserved.