Open gitezri opened 11 months ago
I am having this same issue as well.
i am also having the same issue.
Here's the error I got, running on google colab.
File "/content/chatgpt-retrieval/chatgpt.py", line 5, in <module>
from langchain.chains import ConversationalRetrievalChain, RetrievalQA
File "/usr/local/lib/python3.10/dist-packages/langchain/__init__.py", line 6, in <module>
from langchain.agents import MRKLChain, ReActChain, SelfAskWithSearchChain
File "/usr/local/lib/python3.10/dist-packages/langchain/agents/__init__.py", line 2, in <module>
from langchain.agents.agent import (
File "/usr/local/lib/python3.10/dist-packages/langchain/agents/agent.py", line 16, in <module>
from langchain.agents.tools import InvalidTool
File "/usr/local/lib/python3.10/dist-packages/langchain/agents/tools.py", line 8, in <module>
from langchain.tools.base import BaseTool, Tool, tool
File "/usr/local/lib/python3.10/dist-packages/langchain/tools/__init__.py", line 3, in <module>
from langchain.tools.arxiv.tool import ArxivQueryRun
File "/usr/local/lib/python3.10/dist-packages/langchain/tools/arxiv/tool.py", line 12, in <module>
from langchain.utilities.arxiv import ArxivAPIWrapper
File "/usr/local/lib/python3.10/dist-packages/langchain/utilities/__init__.py", line 3, in <module>
from langchain.utilities.apify import ApifyWrapper
File "/usr/local/lib/python3.10/dist-packages/langchain/utilities/apify.py", line 5, in <module>
from langchain.document_loaders import ApifyDatasetLoader
File "/usr/local/lib/python3.10/dist-packages/langchain/document_loaders/__init__.py", line 44, in <module>
from langchain.document_loaders.embaas import EmbaasBlobLoader, EmbaasLoader
File "/usr/local/lib/python3.10/dist-packages/langchain/document_loaders/embaas.py", line 54, in <module>
class BaseEmbaasLoader(BaseModel):
File "pydantic/main.py", line 204, in pydantic.main.ModelMetaclass.__new__
File "pydantic/fields.py", line 488, in pydantic.fields.ModelField.infer
File "pydantic/fields.py", line 419, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 539, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 801, in pydantic.fields.ModelField.populate_validators
File "pydantic/validators.py", line 696, in find_validators
File "pydantic/validators.py", line 585, in pydantic.validators.make_typeddict_validator
File "pydantic/annotated_types.py", line 35, in pydantic.annotated_types.create_model_from_typeddict
File "pydantic/main.py", line 972, in pydantic.main.create_model
File "pydantic/main.py", line 204, in pydantic.main.ModelMetaclass.__new__
File "pydantic/fields.py", line 488, in pydantic.fields.ModelField.infer
File "pydantic/fields.py", line 419, in pydantic.fields.ModelField.__init__
File "pydantic/fields.py", line 534, in pydantic.fields.ModelField.prepare
File "pydantic/fields.py", line 638, in pydantic.fields.ModelField._type_analysis
File "/usr/lib/python3.10/typing.py", line 1158, in __subclasscheck__
return issubclass(cls, self.__origin__)
TypeError: issubclass() arg 1 must be a class”
That is an issue of langchain dependency. You need to set some python dependancies to specific versions. Check it out the solution here: https://github.com/hwchase17/langchain/issues/7522#issuecomment-1630535191
install langchain ver 0.0190, it works for me
pip install langchain==0.0.190
Works now, without setting specific versions.
(myvenv) ~/PROJECTS/chatgpt-retrieval main ± py chatgpt.py "what is my dog's name"
from langchain.chains import ConversationalRetrievalChain, RetrievalQA
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/init.py", line 6, in
from langchain.agents import MRKLChain, ReActChain, SelfAskWithSearchChain
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/agents/init.py", line 2, in
from langchain.agents.agent import (
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/agents/agent.py", line 16, in
from langchain.agents.tools import InvalidTool
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/agents/tools.py", line 8, in
from langchain.tools.base import BaseTool, Tool, tool
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/tools/init.py", line 3, in
from langchain.tools.arxiv.tool import ArxivQueryRun
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/tools/arxiv/tool.py", line 12, in
from langchain.utilities.arxiv import ArxivAPIWrapper
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/utilities/init.py", line 3, in
from langchain.utilities.apify import ApifyWrapper
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/utilities/apify.py", line 5, in
from langchain.document_loaders import ApifyDatasetLoader
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/document_loaders/init.py", line 44, in
from langchain.document_loaders.embaas import EmbaasBlobLoader, EmbaasLoader
File "/home/ezri/myvenv/lib/python3.11/site-packages/langchain/document_loaders/embaas.py", line 54, in
class BaseEmbaasLoader(BaseModel):
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/main.py", line 204, in new
fields[ann_name] = ModelField.infer(
^^^^^^^^^^^^^^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/fields.py", line 488, in infer
return cls(
^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/fields.py", line 419, in init
self.prepare()
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/fields.py", line 539, in prepare
self.populate_validators()
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/fields.py", line 801, in populate_validators
*(get_validators() if get_validators else list(findvalidators(self.type, self.model_config))),
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/validators.py", line 696, in find_validators
yield make_typeddictvalidator(type, config)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/validators.py", line 585, in make_typeddict_validator
TypedDictModel = create_model_from_typeddict(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/annotated_types.py", line 35, in create_model_from_typeddict
return create_model(typeddict_cls.name, kwargs, field_definitions)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/main.py", line 972, in create_model
return type(model_name, base, namespace)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/main.py", line 204, in new
fields[ann_name] = ModelField.infer(
^^^^^^^^^^^^^^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/fields.py", line 488, in infer
return cls(
^^^^
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/fields.py", line 419, in init
self.prepare()
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/fields.py", line 534, in prepare
self._type_analysis()
File "/home/ezri/myvenv/lib/python3.11/site-packages/pydantic/fields.py", line 638, in _type_analysis
elif issubclass(origin, Tuple): # type: ignore
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.11/typing.py", line 1551, in subclasscheck
return issubclass(cls, self.origin__)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: issubclass() arg 1 must be a class
Traceback (most recent call last): File "/home/ezri/PROJECTS/chatgpt-retrieval/chatgpt.py", line 5, in