nleguillarme / taxonerd

TaxoNERD : recognizing taxonomic entities using deep models
MIT License
38 stars 8 forks source link

Failure to run: TypeError: issubclass() arg 1 must be a class #23

Closed lubianat closed 5 months ago

lubianat commented 5 months ago

Hi! I am trying to run it in Python 3.9.18, but getting some errors.

After pip installing the package and the model, I run and get the following error:

➜   taxonerd ask -m en_core_eco_biobert "Brown bears (Ursus arctos), which are widely distributed throughout the northern hemisphere, are recognised as opportunistic omnivores"

Traceback (most recent call last):
  File "/home/lubianat/Documents/base_venv/bin/taxonerd", line 5, in <module>
    from taxonerd.cli import main
  File "/home/lubianat/Documents/base_venv/lib/python3.9/site-packages/taxonerd/__init__.py", line 1, in <module>
    from .taxonerd import TaxoNERD
  File "/home/lubianat/Documents/base_venv/lib/python3.9/site-packages/taxonerd/taxonerd.py", line 2, in <module>
    import spacy
  File "/home/lubianat/Documents/base_venv/lib/python3.9/site-packages/spacy/__init__.py", line 14, in <module>
    from . import pipeline  # noqa: F401
  File "/home/lubianat/Documents/base_venv/lib/python3.9/site-packages/spacy/pipeline/__init__.py", line 1, in <module>
    from .attributeruler import AttributeRuler
  File "/home/lubianat/Documents/base_venv/lib/python3.9/site-packages/spacy/pipeline/attributeruler.py", line 6, in <module>
    from .pipe import Pipe
  File "spacy/pipeline/pipe.pyx", line 1, in init spacy.pipeline.pipe
  File "spacy/vocab.pyx", line 1, in init spacy.vocab
  File "/home/lubianat/Documents/base_venv/lib/python3.9/site-packages/spacy/tokens/__init__.py", line 1, in <module>
    from .doc import Doc
  File "spacy/tokens/doc.pyx", line 36, in init spacy.tokens.doc
  File "/home/lubianat/Documents/base_venv/lib/python3.9/site-packages/spacy/schemas.py", line 222, in <module>
    class TokenPattern(BaseModel):
  File "pydantic/main.py", line 299, in pydantic.main.ModelMetaclass.__new__
  File "pydantic/fields.py", line 411, in pydantic.fields.ModelField.infer
  File "pydantic/fields.py", line 342, in pydantic.fields.ModelField.__init__
  File "pydantic/fields.py", line 451, in pydantic.fields.ModelField.prepare
  File "pydantic/fields.py", line 545, in pydantic.fields.ModelField._type_analysis
  File "pydantic/fields.py", line 550, in pydantic.fields.ModelField._type_analysis
  File "/usr/lib/python3.9/typing.py", line 852, in __subclasscheck__
    return issubclass(cls, self.__origin__)
TypeError: issubclass() arg 1 must be a class

Likely there is some problem with compatibility with spacy or so. Would you have a guess on what is going on?

Cheers and thanks for the work!

lubianat commented 5 months ago

Nevermind, I think it was a problem with a conda venv. Autoresolved when I cleaned my environment.