langchain-ai / langgraph-example

224 stars 198 forks source link

TypeError: type 'LangGraphConfig' is not subscriptable #17

Open mikewlange opened 5 months ago

mikewlange commented 5 months ago

This just started happening today. I've been using the langgraph-api for a couple weeks now.

Great tool btw, really helpful.

I've been using 'langgraph up' (I use poetry, but the issue happens regardless) to test the graphs using the UI (awesome btw). But, starting today, creating a new thread throw a CORS error on the front end (ScreenShot Attached)

And an error in the langgraph-api docker file.
"/api/langgraph_api/api/assistants.py", line 117, in get_assistant_schemas

I CAN execute the graph using the SDK. To confirm, I downloaded the lasted version of this repo and ran it by itself just to see if my code broke the front end, but it was broken here just 10 min ago (for me), and I killed all the docker images and pulled new ones, same error.

I hope its my browser or something, but I tried on another computer. Any ideas?

Also, where is the source for the api folder in here? https://hub.docker.com/r/langchain/langgraph-api ? I looked everywhere and can't find it. This way I can get in there and fix things (and stabilize) before production.

Feel free to ask for more info or have me test stuff. I'd like to get this resolved asap.

Here is more info about the Issue:

Checked other resources

Example Code

langgraph up 

Error Message and Stack Trace (if applicable)

2024-06-14 14:45:39 2024-06-14 18:45:39,806:ERROR:langgraph_api.server 500 Error handling request
2024-06-14 14:45:39 Traceback (most recent call last):
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__
2024-06-14 14:45:39     await self.app(scope, receive, _send)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 93, in __call__
2024-06-14 14:45:39     await self.simple_response(scope, receive, send, request_headers=headers)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/cors.py", line 148, in simple_response
2024-06-14 14:45:39     await self.app(scope, receive, send)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in __call__
2024-06-14 14:45:39     await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
2024-06-14 14:45:39     raise exc
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
2024-06-14 14:45:39     await app(scope, receive, sender)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 756, in __call__
2024-06-14 14:45:39     await self.middleware_stack(scope, receive, send)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 776, in app
2024-06-14 14:45:39     await route.handle(scope, receive, send)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 297, in handle
2024-06-14 14:45:39     await self.app(scope, receive, send)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 77, in app
2024-06-14 14:45:39     await wrap_app_handling_exceptions(app, request)(scope, receive, send)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
2024-06-14 14:45:39     raise exc
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
2024-06-14 14:45:39     await app(scope, receive, sender)
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 72, in app
2024-06-14 14:45:39     response = await func(request)
2024-06-14 14:45:39                ^^^^^^^^^^^^^^^^^^^
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 278, in app
2024-06-14 14:45:39     raw_response = await run_endpoint_function(
2024-06-14 14:45:39                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-06-14 14:45:39   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
2024-06-14 14:45:39     return await dependant.call(**values)
2024-06-14 14:45:39            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2024-06-14 14:45:39   File "/api/langgraph_api/postgres.py", line 112, in wrapper
2024-06-14 14:45:39   File "/api/langgraph_api/api/assistants.py", line 117, in get_assistant_schemas
2024-06-14 14:45:39 TypeError: type 'LangGraphConfig' is not subscriptable

Front End Error:

image

langgraph-api docker error

image


### System Info

## System Information

> OS: Mac Powerbook
> Browser: Chrome 126.0.6478.61   
> Python Version: 3.11 (

## Package Information
Here is pipdeptree from the docker container

httptools==0.6.1
langgraph-api==0.1.0
├── fastapi [required: >=0.111.0,<0.112.0, installed: 0.111.0]
│   ├── email_validator [required: >=2.0.0, installed: 2.1.1]
│   │   ├── dnspython [required: >=2.0.0, installed: 2.6.1]
│   │   └── idna [required: >=2.0.0, installed: 3.7]
│   ├── fastapi-cli [required: >=0.0.2, installed: 0.0.4]
│   │   └── typer [required: >=0.12.3, installed: 0.12.3]
│   │       ├── click [required: >=8.0.0, installed: 8.1.7]
│   │       ├── rich [required: >=10.11.0, installed: 13.7.1]
│   │       │   ├── markdown-it-py [required: >=2.2.0, installed: 3.0.0]
│   │       │   │   └── mdurl [required: ~=0.1, installed: 0.1.2]
│   │       │   └── Pygments [required: >=2.13.0,<3.0.0, installed: 2.18.0]
│   │       ├── shellingham [required: >=1.3.0, installed: 1.5.4]
│   │       └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│   ├── httpx [required: >=0.23.0, installed: 0.27.0]
│   │   ├── anyio [required: Any, installed: 4.4.0]
│   │   │   ├── idna [required: >=2.8, installed: 3.7]
│   │   │   └── sniffio [required: >=1.1, installed: 1.3.1]
│   │   ├── certifi [required: Any, installed: 2024.2.2]
│   │   ├── httpcore [required: ==1.*, installed: 1.0.5]
│   │   │   ├── certifi [required: Any, installed: 2024.2.2]
│   │   │   └── h11 [required: >=0.13,<0.15, installed: 0.14.0]
│   │   ├── idna [required: Any, installed: 3.7]
│   │   └── sniffio [required: Any, installed: 1.3.1]
│   ├── Jinja2 [required: >=2.11.2, installed: 3.1.4]
│   │   └── MarkupSafe [required: >=2.0, installed: 2.1.5]
│   ├── orjson [required: >=3.2.1, installed: 3.10.3]
│   ├── pydantic [required: >=1.7.4,<3.0.0,!=2.1.0,!=2.0.1,!=2.0.0,!=1.8.1,!=1.8, installed: 1.10.15]
│   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   ├── python-multipart [required: >=0.0.7, installed: 0.0.9]
│   ├── starlette [required: >=0.37.2,<0.38.0, installed: 0.37.2]
│   │   └── anyio [required: >=3.4.0,<5, installed: 4.4.0]
│   │       ├── idna [required: >=2.8, installed: 3.7]
│   │       └── sniffio [required: >=1.1, installed: 1.3.1]
│   ├── typing_extensions [required: >=4.8.0, installed: 4.12.0]
│   ├── ujson [required: >=4.0.1,!=5.1.0,!=5.0.0,!=4.3.0,!=4.2.0,!=4.1.0,!=4.0.2, installed: 5.10.0]
│   └── uvicorn [required: >=0.12.0, installed: 0.29.0]
│       ├── click [required: >=7.0, installed: 8.1.7]
│       └── h11 [required: >=0.8, installed: 0.14.0]
├── httpx [required: >=0.27.0, installed: 0.27.0]
│   ├── anyio [required: Any, installed: 4.4.0]
│   │   ├── idna [required: >=2.8, installed: 3.7]
│   │   └── sniffio [required: >=1.1, installed: 1.3.1]
│   ├── certifi [required: Any, installed: 2024.2.2]
│   ├── httpcore [required: ==1.*, installed: 1.0.5]
│   │   ├── certifi [required: Any, installed: 2024.2.2]
│   │   └── h11 [required: >=0.13,<0.15, installed: 0.14.0]
│   ├── idna [required: Any, installed: 3.7]
│   └── sniffio [required: Any, installed: 1.3.1]
├── langchain-core [required: >=0.2.0, installed: 0.2.6]
│   ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│   │   └── jsonpointer [required: >=1.9, installed: 2.4]
│   ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│   │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   └── requests [required: >=2,<3, installed: 2.32.3]
│   │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │       ├── idna [required: >=2.5,<4, installed: 3.7]
│   │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   ├── packaging [required: >=23.2,<25, installed: 23.2]
│   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   ├── PyYAML [required: >=5.3, installed: 6.0.1]
│   └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
├── langgraph [required: >=0.0.54, installed: 0.0.68]
│   └── langchain-core [required: >=0.2,<0.3, installed: 0.2.6]
│       ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│       │   └── jsonpointer [required: >=1.9, installed: 2.4]
│       ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│       │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│       │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│       │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│       │   └── requests [required: >=2,<3, installed: 2.32.3]
│       │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│       │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│       │       ├── idna [required: >=2.5,<4, installed: 3.7]
│       │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│       ├── packaging [required: >=23.2,<25, installed: 23.2]
│       ├── pydantic [required: >=1,<3, installed: 1.10.15]
│       │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│       ├── PyYAML [required: >=5.3, installed: 6.0.1]
│       └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
├── langsmith [required: >=0.1.63,<0.2.0, installed: 0.1.77]
│   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   └── requests [required: >=2,<3, installed: 2.32.3]
│       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│       ├── idna [required: >=2.5,<4, installed: 3.7]
│       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
├── orjson [required: >=3.10.1, installed: 3.10.3]
├── psycopg [required: >=3.1.19,<4.0.0, installed: 3.1.19]
│   └── typing_extensions [required: >=4.1, installed: 4.12.0]
├── psycopg-pool [required: >=3.2.2,<4.0.0, installed: 3.2.2]
│   └── typing_extensions [required: >=4.4, installed: 4.12.0]
├── pydantic [required: <2.0, installed: 1.10.15]
│   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
├── sse-starlette [required: >=2.1.0,<3.0.0, installed: 2.1.0]
│   ├── anyio [required: Any, installed: 4.4.0]
│   │   ├── idna [required: >=2.8, installed: 3.7]
│   │   └── sniffio [required: >=1.1, installed: 1.3.1]
│   ├── starlette [required: Any, installed: 0.37.2]
│   │   └── anyio [required: >=3.4.0,<5, installed: 4.4.0]
│   │       ├── idna [required: >=2.8, installed: 3.7]
│   │       └── sniffio [required: >=1.1, installed: 1.3.1]
│   └── uvicorn [required: Any, installed: 0.29.0]
│       ├── click [required: >=7.0, installed: 8.1.7]
│       └── h11 [required: >=0.8, installed: 0.14.0]
├── tenacity [required: >=8.3.0,<9.0.0, installed: 8.3.0]
└── uvicorn [required: >=0.29.0,<0.30.0, installed: 0.29.0]
    ├── click [required: >=7.0, installed: 8.1.7]
    └── h11 [required: >=0.8, installed: 0.14.0]
pipdeptree==2.22.0
├── packaging [required: >=23.1, installed: 23.2]
└── pip [required: >=23.1.2, installed: 24.0]
psycopg-binary==3.1.19
python-dotenv==1.0.1
questionnaire-agent==0.1.0
├── bs4 [required: Any, installed: 0.0.2]
│   └── beautifulsoup4 [required: Any, installed: 4.12.3]
│       └── soupsieve [required: >1.2, installed: 2.5]
├── langchain-anthropic [required: Any, installed: 0.1.15]
│   ├── anthropic [required: >=0.28.0,<1, installed: 0.28.1]
│   │   ├── anyio [required: >=3.5.0,<5, installed: 4.4.0]
│   │   │   ├── idna [required: >=2.8, installed: 3.7]
│   │   │   └── sniffio [required: >=1.1, installed: 1.3.1]
│   │   ├── distro [required: >=1.7.0,<2, installed: 1.9.0]
│   │   ├── httpx [required: >=0.23.0,<1, installed: 0.27.0]
│   │   │   ├── anyio [required: Any, installed: 4.4.0]
│   │   │   │   ├── idna [required: >=2.8, installed: 3.7]
│   │   │   │   └── sniffio [required: >=1.1, installed: 1.3.1]
│   │   │   ├── certifi [required: Any, installed: 2024.2.2]
│   │   │   ├── httpcore [required: ==1.*, installed: 1.0.5]
│   │   │   │   ├── certifi [required: Any, installed: 2024.2.2]
│   │   │   │   └── h11 [required: >=0.13,<0.15, installed: 0.14.0]
│   │   │   ├── idna [required: Any, installed: 3.7]
│   │   │   └── sniffio [required: Any, installed: 1.3.1]
│   │   ├── jiter [required: >=0.4.0,<1, installed: 0.4.2]
│   │   ├── pydantic [required: >=1.9.0,<3, installed: 1.10.15]
│   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   ├── sniffio [required: Any, installed: 1.3.1]
│   │   ├── tokenizers [required: >=0.13.0, installed: 0.19.1]
│   │   │   └── huggingface-hub [required: >=0.16.4,<1.0, installed: 0.23.4]
│   │   │       ├── filelock [required: Any, installed: 3.15.1]
│   │   │       ├── fsspec [required: >=2023.5.0, installed: 2024.6.0]
│   │   │       ├── packaging [required: >=20.9, installed: 23.2]
│   │   │       ├── PyYAML [required: >=5.1, installed: 6.0.1]
│   │   │       ├── requests [required: Any, installed: 2.32.3]
│   │   │       │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │       │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │       │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │       │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   │       ├── tqdm [required: >=4.42.1, installed: 4.66.4]
│   │   │       └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│   │   └── typing_extensions [required: >=4.7,<5, installed: 4.12.0]
│   ├── defusedxml [required: >=0.7.1,<0.8.0, installed: 0.7.1]
│   └── langchain-core [required: >=0.2.2rc1,<0.3, installed: 0.2.6]
│       ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│       │   └── jsonpointer [required: >=1.9, installed: 2.4]
│       ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│       │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│       │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│       │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│       │   └── requests [required: >=2,<3, installed: 2.32.3]
│       │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│       │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│       │       ├── idna [required: >=2.5,<4, installed: 3.7]
│       │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│       ├── packaging [required: >=23.2,<25, installed: 23.2]
│       ├── pydantic [required: >=1,<3, installed: 1.10.15]
│       │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│       ├── PyYAML [required: >=5.3, installed: 6.0.1]
│       └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
├── langchain-community [required: Any, installed: 0.2.4]
│   ├── aiohttp [required: >=3.8.3,<4.0.0, installed: 3.9.5]
│   │   ├── aiosignal [required: >=1.1.2, installed: 1.3.1]
│   │   │   └── frozenlist [required: >=1.1.0, installed: 1.4.1]
│   │   ├── attrs [required: >=17.3.0, installed: 23.2.0]
│   │   ├── frozenlist [required: >=1.1.1, installed: 1.4.1]
│   │   ├── multidict [required: >=4.5,<7.0, installed: 6.0.5]
│   │   └── yarl [required: >=1.0,<2.0, installed: 1.9.4]
│   │       ├── idna [required: >=2.0, installed: 3.7]
│   │       └── multidict [required: >=4.0, installed: 6.0.5]
│   ├── dataclasses-json [required: >=0.5.7,<0.7, installed: 0.6.7]
│   │   ├── marshmallow [required: >=3.18.0,<4.0.0, installed: 3.21.3]
│   │   │   └── packaging [required: >=17.0, installed: 23.2]
│   │   └── typing-inspect [required: >=0.4.0,<1, installed: 0.9.0]
│   │       ├── mypy-extensions [required: >=0.3.0, installed: 1.0.0]
│   │       └── typing_extensions [required: >=3.7.4, installed: 4.12.0]
│   ├── langchain [required: >=0.2.0,<0.3.0, installed: 0.2.4]
│   │   ├── aiohttp [required: >=3.8.3,<4.0.0, installed: 3.9.5]
│   │   │   ├── aiosignal [required: >=1.1.2, installed: 1.3.1]
│   │   │   │   └── frozenlist [required: >=1.1.0, installed: 1.4.1]
│   │   │   ├── attrs [required: >=17.3.0, installed: 23.2.0]
│   │   │   ├── frozenlist [required: >=1.1.1, installed: 1.4.1]
│   │   │   ├── multidict [required: >=4.5,<7.0, installed: 6.0.5]
│   │   │   └── yarl [required: >=1.0,<2.0, installed: 1.9.4]
│   │   │       ├── idna [required: >=2.0, installed: 3.7]
│   │   │       └── multidict [required: >=4.0, installed: 6.0.5]
│   │   ├── langchain-core [required: >=0.2.6,<0.3.0, installed: 0.2.6]
│   │   │   ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│   │   │   │   └── jsonpointer [required: >=1.9, installed: 2.4]
│   │   │   ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│   │   │   │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   │   │   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   │   │   └── requests [required: >=2,<3, installed: 2.32.3]
│   │   │   │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │   │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │   │       ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │   │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   │   ├── packaging [required: >=23.2,<25, installed: 23.2]
│   │   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   │   ├── PyYAML [required: >=5.3, installed: 6.0.1]
│   │   │   └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
│   │   ├── langchain-text-splitters [required: >=0.2.0,<0.3.0, installed: 0.2.1]
│   │   │   └── langchain-core [required: >=0.2.0,<0.3.0, installed: 0.2.6]
│   │   │       ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│   │   │       │   └── jsonpointer [required: >=1.9, installed: 2.4]
│   │   │       ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│   │   │       │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   │   │       │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │       │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   │       │   └── requests [required: >=2,<3, installed: 2.32.3]
│   │   │       │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │       │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │       │       ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │       │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   │       ├── packaging [required: >=23.2,<25, installed: 23.2]
│   │   │       ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │       │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   │       ├── PyYAML [required: >=5.3, installed: 6.0.1]
│   │   │       └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
│   │   ├── langsmith [required: >=0.1.17,<0.2.0, installed: 0.1.77]
│   │   │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   │   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   │   └── requests [required: >=2,<3, installed: 2.32.3]
│   │   │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │       ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   ├── numpy [required: >=1,<2, installed: 1.26.4]
│   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   ├── PyYAML [required: >=5.3, installed: 6.0.1]
│   │   ├── requests [required: >=2,<3, installed: 2.32.3]
│   │   │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   ├── SQLAlchemy [required: >=1.4,<3, installed: 2.0.30]
│   │   │   ├── greenlet [required: !=0.4.17, installed: 3.0.3]
│   │   │   └── typing_extensions [required: >=4.6.0, installed: 4.12.0]
│   │   └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
│   ├── langchain-core [required: >=0.2.0,<0.3.0, installed: 0.2.6]
│   │   ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│   │   │   └── jsonpointer [required: >=1.9, installed: 2.4]
│   │   ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│   │   │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   │   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   │   └── requests [required: >=2,<3, installed: 2.32.3]
│   │   │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │       ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   ├── packaging [required: >=23.2,<25, installed: 23.2]
│   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   ├── PyYAML [required: >=5.3, installed: 6.0.1]
│   │   └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
│   ├── langsmith [required: >=0.1.0,<0.2.0, installed: 0.1.77]
│   │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   └── requests [required: >=2,<3, installed: 2.32.3]
│   │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │       ├── idna [required: >=2.5,<4, installed: 3.7]
│   │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   ├── numpy [required: >=1,<2, installed: 1.26.4]
│   ├── PyYAML [required: >=5.3, installed: 6.0.1]
│   ├── requests [required: >=2,<3, installed: 2.32.3]
│   │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   ├── SQLAlchemy [required: >=1.4,<3, installed: 2.0.30]
│   │   ├── greenlet [required: !=0.4.17, installed: 3.0.3]
│   │   └── typing_extensions [required: >=4.6.0, installed: 4.12.0]
│   └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
├── langchain-huggingface [required: Any, installed: 0.0.3]
│   ├── huggingface-hub [required: >=0.23.0, installed: 0.23.4]
│   │   ├── filelock [required: Any, installed: 3.15.1]
│   │   ├── fsspec [required: >=2023.5.0, installed: 2024.6.0]
│   │   ├── packaging [required: >=20.9, installed: 23.2]
│   │   ├── PyYAML [required: >=5.1, installed: 6.0.1]
│   │   ├── requests [required: Any, installed: 2.32.3]
│   │   │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   ├── tqdm [required: >=4.42.1, installed: 4.66.4]
│   │   └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│   ├── langchain-core [required: >=0.1.52,<0.3, installed: 0.2.6]
│   │   ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│   │   │   └── jsonpointer [required: >=1.9, installed: 2.4]
│   │   ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│   │   │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   │   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   │   └── requests [required: >=2,<3, installed: 2.32.3]
│   │   │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │       ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   ├── packaging [required: >=23.2,<25, installed: 23.2]
│   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   ├── PyYAML [required: >=5.3, installed: 6.0.1]
│   │   └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
│   ├── sentence-transformers [required: >=2.6.0, installed: 3.0.1]
│   │   ├── huggingface-hub [required: >=0.15.1, installed: 0.23.4]
│   │   │   ├── filelock [required: Any, installed: 3.15.1]
│   │   │   ├── fsspec [required: >=2023.5.0, installed: 2024.6.0]
│   │   │   ├── packaging [required: >=20.9, installed: 23.2]
│   │   │   ├── PyYAML [required: >=5.1, installed: 6.0.1]
│   │   │   ├── requests [required: Any, installed: 2.32.3]
│   │   │   │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │   │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │   │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │   │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   │   ├── tqdm [required: >=4.42.1, installed: 4.66.4]
│   │   │   └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│   │   ├── numpy [required: Any, installed: 1.26.4]
│   │   ├── pillow [required: Any, installed: 10.3.0]
│   │   ├── scikit-learn [required: Any, installed: 1.5.0]
│   │   │   ├── joblib [required: >=1.2.0, installed: 1.4.2]
│   │   │   ├── numpy [required: >=1.19.5, installed: 1.26.4]
│   │   │   ├── scipy [required: >=1.6.0, installed: 1.13.1]
│   │   │   │   └── numpy [required: >=1.22.4,<2.3, installed: 1.26.4]
│   │   │   └── threadpoolctl [required: >=3.1.0, installed: 3.5.0]
│   │   ├── scipy [required: Any, installed: 1.13.1]
│   │   │   └── numpy [required: >=1.22.4,<2.3, installed: 1.26.4]
│   │   ├── torch [required: >=1.11.0, installed: 2.3.1]
│   │   │   ├── filelock [required: Any, installed: 3.15.1]
│   │   │   ├── fsspec [required: Any, installed: 2024.6.0]
│   │   │   ├── Jinja2 [required: Any, installed: 3.1.4]
│   │   │   │   └── MarkupSafe [required: >=2.0, installed: 2.1.5]
│   │   │   ├── networkx [required: Any, installed: 3.3]
│   │   │   ├── sympy [required: Any, installed: 1.12.1]
│   │   │   │   └── mpmath [required: >=1.1.0,<1.4.0, installed: 1.3.0]
│   │   │   └── typing_extensions [required: >=4.8.0, installed: 4.12.0]
│   │   ├── tqdm [required: Any, installed: 4.66.4]
│   │   └── transformers [required: >=4.34.0,<5.0.0, installed: 4.41.2]
│   │       ├── filelock [required: Any, installed: 3.15.1]
│   │       ├── huggingface-hub [required: >=0.23.0,<1.0, installed: 0.23.4]
│   │       │   ├── filelock [required: Any, installed: 3.15.1]
│   │       │   ├── fsspec [required: >=2023.5.0, installed: 2024.6.0]
│   │       │   ├── packaging [required: >=20.9, installed: 23.2]
│   │       │   ├── PyYAML [required: >=5.1, installed: 6.0.1]
│   │       │   ├── requests [required: Any, installed: 2.32.3]
│   │       │   │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │       │   │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │       │   │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │       │   │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │       │   ├── tqdm [required: >=4.42.1, installed: 4.66.4]
│   │       │   └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│   │       ├── numpy [required: >=1.17, installed: 1.26.4]
│   │       ├── packaging [required: >=20.0, installed: 23.2]
│   │       ├── PyYAML [required: >=5.1, installed: 6.0.1]
│   │       ├── regex [required: !=2019.12.17, installed: 2024.5.15]
│   │       ├── requests [required: Any, installed: 2.32.3]
│   │       │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │       │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │       │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │       │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │       ├── safetensors [required: >=0.4.1, installed: 0.4.3]
│   │       ├── tokenizers [required: >=0.19,<0.20, installed: 0.19.1]
│   │       │   └── huggingface-hub [required: >=0.16.4,<1.0, installed: 0.23.4]
│   │       │       ├── filelock [required: Any, installed: 3.15.1]
│   │       │       ├── fsspec [required: >=2023.5.0, installed: 2024.6.0]
│   │       │       ├── packaging [required: >=20.9, installed: 23.2]
│   │       │       ├── PyYAML [required: >=5.1, installed: 6.0.1]
│   │       │       ├── requests [required: Any, installed: 2.32.3]
│   │       │       │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │       │       │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │       │       │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │       │       │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │       │       ├── tqdm [required: >=4.42.1, installed: 4.66.4]
│   │       │       └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│   │       └── tqdm [required: >=4.27, installed: 4.66.4]
│   ├── tokenizers [required: >=0.19.1, installed: 0.19.1]
│   │   └── huggingface-hub [required: >=0.16.4,<1.0, installed: 0.23.4]
│   │       ├── filelock [required: Any, installed: 3.15.1]
│   │       ├── fsspec [required: >=2023.5.0, installed: 2024.6.0]
│   │       ├── packaging [required: >=20.9, installed: 23.2]
│   │       ├── PyYAML [required: >=5.1, installed: 6.0.1]
│   │       ├── requests [required: Any, installed: 2.32.3]
│   │       │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │       │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │       │   ├── idna [required: >=2.5,<4, installed: 3.7]
│   │       │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │       ├── tqdm [required: >=4.42.1, installed: 4.66.4]
│   │       └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│   └── transformers [required: >=4.39.0, installed: 4.41.2]
│       ├── filelock [required: Any, installed: 3.15.1]
│       ├── huggingface-hub [required: >=0.23.0,<1.0, installed: 0.23.4]
│       │   ├── filelock [required: Any, installed: 3.15.1]
│       │   ├── fsspec [required: >=2023.5.0, installed: 2024.6.0]
│       │   ├── packaging [required: >=20.9, installed: 23.2]
│       │   ├── PyYAML [required: >=5.1, installed: 6.0.1]
│       │   ├── requests [required: Any, installed: 2.32.3]
│       │   │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│       │   │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│       │   │   ├── idna [required: >=2.5,<4, installed: 3.7]
│       │   │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│       │   ├── tqdm [required: >=4.42.1, installed: 4.66.4]
│       │   └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│       ├── numpy [required: >=1.17, installed: 1.26.4]
│       ├── packaging [required: >=20.0, installed: 23.2]
│       ├── PyYAML [required: >=5.1, installed: 6.0.1]
│       ├── regex [required: !=2019.12.17, installed: 2024.5.15]
│       ├── requests [required: Any, installed: 2.32.3]
│       │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│       │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│       │   ├── idna [required: >=2.5,<4, installed: 3.7]
│       │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│       ├── safetensors [required: >=0.4.1, installed: 0.4.3]
│       ├── tokenizers [required: >=0.19,<0.20, installed: 0.19.1]
│       │   └── huggingface-hub [required: >=0.16.4,<1.0, installed: 0.23.4]
│       │       ├── filelock [required: Any, installed: 3.15.1]
│       │       ├── fsspec [required: >=2023.5.0, installed: 2024.6.0]
│       │       ├── packaging [required: >=20.9, installed: 23.2]
│       │       ├── PyYAML [required: >=5.1, installed: 6.0.1]
│       │       ├── requests [required: Any, installed: 2.32.3]
│       │       │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│       │       │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│       │       │   ├── idna [required: >=2.5,<4, installed: 3.7]
│       │       │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│       │       ├── tqdm [required: >=4.42.1, installed: 4.66.4]
│       │       └── typing_extensions [required: >=3.7.4.3, installed: 4.12.0]
│       └── tqdm [required: >=4.27, installed: 4.66.4]
├── langchain-openai [required: Any, installed: 0.1.8]
│   ├── langchain-core [required: >=0.2.2,<0.3, installed: 0.2.6]
│   │   ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│   │   │   └── jsonpointer [required: >=1.9, installed: 2.4]
│   │   ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│   │   │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│   │   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   │   └── requests [required: >=2,<3, installed: 2.32.3]
│   │   │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│   │   │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│   │   │       ├── idna [required: >=2.5,<4, installed: 3.7]
│   │   │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│   │   ├── packaging [required: >=23.2,<25, installed: 23.2]
│   │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   ├── PyYAML [required: >=5.3, installed: 6.0.1]
│   │   └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
│   ├── openai [required: >=1.26.0,<2.0.0, installed: 1.34.0]
│   │   ├── anyio [required: >=3.5.0,<5, installed: 4.4.0]
│   │   │   ├── idna [required: >=2.8, installed: 3.7]
│   │   │   └── sniffio [required: >=1.1, installed: 1.3.1]
│   │   ├── distro [required: >=1.7.0,<2, installed: 1.9.0]
│   │   ├── httpx [required: >=0.23.0,<1, installed: 0.27.0]
│   │   │   ├── anyio [required: Any, installed: 4.4.0]
│   │   │   │   ├── idna [required: >=2.8, installed: 3.7]
│   │   │   │   └── sniffio [required: >=1.1, installed: 1.3.1]
│   │   │   ├── certifi [required: Any, installed: 2024.2.2]
│   │   │   ├── httpcore [required: ==1.*, installed: 1.0.5]
│   │   │   │   ├── certifi [required: Any, installed: 2024.2.2]
│   │   │   │   └── h11 [required: >=0.13,<0.15, installed: 0.14.0]
│   │   │   ├── idna [required: Any, installed: 3.7]
│   │   │   └── sniffio [required: Any, installed: 1.3.1]
│   │   ├── pydantic [required: >=1.9.0,<3, installed: 1.10.15]
│   │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│   │   ├── sniffio [required: Any, installed: 1.3.1]
│   │   ├── tqdm [required: >4, installed: 4.66.4]
│   │   └── typing_extensions [required: >=4.7,<5, installed: 4.12.0]
│   └── tiktoken [required: >=0.7,<1, installed: 0.7.0]
│       ├── regex [required: >=2022.1.18, installed: 2024.5.15]
│       └── requests [required: >=2.26.0, installed: 2.32.3]
│           ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│           ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│           ├── idna [required: >=2.5,<4, installed: 3.7]
│           └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
├── langgraph [required: Any, installed: 0.0.68]
│   └── langchain-core [required: >=0.2,<0.3, installed: 0.2.6]
│       ├── jsonpatch [required: >=1.33,<2.0, installed: 1.33]
│       │   └── jsonpointer [required: >=1.9, installed: 2.4]
│       ├── langsmith [required: >=0.1.75,<0.2.0, installed: 0.1.77]
│       │   ├── orjson [required: >=3.9.14,<4.0.0, installed: 3.10.3]
│       │   ├── pydantic [required: >=1,<3, installed: 1.10.15]
│       │   │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│       │   └── requests [required: >=2,<3, installed: 2.32.3]
│       │       ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
│       │       ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
│       │       ├── idna [required: >=2.5,<4, installed: 3.7]
│       │       └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
│       ├── packaging [required: >=23.2,<25, installed: 23.2]
│       ├── pydantic [required: >=1,<3, installed: 1.10.15]
│       │   └── typing_extensions [required: >=4.2.0, installed: 4.12.0]
│       ├── PyYAML [required: >=5.3, installed: 6.0.1]
│       └── tenacity [required: >=8.1.0,<9.0.0, installed: 8.3.0]
└── tavily-python [required: Any, installed: 0.3.3]
    ├── requests [required: Any, installed: 2.32.3]
    │   ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
    │   ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
    │   ├── idna [required: >=2.5,<4, installed: 3.7]
    │   └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
    └── tiktoken [required: >=0.5.2,<1, installed: 0.7.0]
        ├── regex [required: >=2022.1.18, installed: 2024.5.15]
        └── requests [required: >=2.26.0, installed: 2.32.3]
            ├── certifi [required: >=2017.4.17, installed: 2024.2.2]
            ├── charset-normalizer [required: >=2,<4, installed: 3.3.2]
            ├── idna [required: >=2.5,<4, installed: 3.7]
            └── urllib3 [required: >=1.21.1,<3, installed: 2.2.1]
supervisor==4.2.5
└── setuptools [required: Any, installed: 65.5.1]
uvloop==0.19.0
watchfiles==0.22.0
└── anyio [required: >=3.0.0, installed: 4.4.0]
    ├── idna [required: >=2.8, installed: 3.7]
    └── sniffio [required: >=1.1, installed: 1.3.1]
websockets==12.0
wheel==0.43.0