{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyPsdLTfYXiW0iIxl4nYuamE"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["## Libraries + API Keys + Parameters"],"metadata":{"id":"pT9JxlLGCR0V"}},{"cell_type":"code","source":["!pip install 'crewai[tools]'"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"fC6iL1vHG2lV","executionInfo":{"status":"ok","timestamp":1747315334523,"user_tz":-120,"elapsed":18853,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}},"outputId":"43adc682-ca0a-4b3a-82fb-1d1c5957d3ce"},"execution_count":2,"outputs":[{"output_type":"stream","name":"stdout","text":["Requirement already satisfied: crewai[tools] in /usr/local/lib/python3.11/dist-packages (0.120.1)\n","Requirement already satisfied: appdirs>=1.4.4 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.4.4)\n","Requirement already satisfied: auth0-python>=4.7.1 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (4.9.0)\n","Requirement already satisfied: blinker>=1.9.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.9.0)\n","Requirement already satisfied: chromadb>=0.5.23 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.0.9)\n","Requirement already satisfied: click>=8.1.7 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (8.1.8)\n","Requirement already satisfied: instructor>=1.3.3 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.8.2)\n","Requirement already satisfied: json-repair>=0.25.2 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (0.44.1)\n","Requirement already satisfied: json5>=0.10.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (0.12.0)\n","Requirement already satisfied: jsonref>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.1.0)\n","Requirement already satisfied: litellm==1.68.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.68.0)\n","Requirement already satisfied: openai>=1.13.3 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.75.0)\n","Requirement already satisfied: openpyxl>=3.1.5 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (3.1.5)\n","Requirement already satisfied: opentelemetry-api>=1.30.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.33.0)\n","Requirement already satisfied: opentelemetry-exporter-otlp-proto-http>=1.30.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.33.0)\n","Requirement already satisfied: opentelemetry-sdk>=1.30.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.33.0)\n","Requirement already satisfied: pdfplumber>=0.11.4 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (0.11.6)\n","Requirement already satisfied: pydantic>=2.4.2 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (2.11.4)\n","Requirement already satisfied: python-dotenv>=1.0.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.1.0)\n","Requirement already satisfied: pyvis>=0.3.2 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (0.3.2)\n","Requirement already satisfied: regex>=2024.9.11 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (2024.11.6)\n","Requirement already satisfied: tomli-w>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (1.2.0)\n","Requirement already satisfied: tomli>=2.0.2 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (2.2.1)\n","Requirement already satisfied: uv>=0.4.25 in /usr/local/lib/python3.11/dist-packages (from crewai[tools]) (0.7.3)\n","Collecting crewai-tools~=0.45.0 (from crewai[tools])\n","  Using cached crewai_tools-0.45.0-py3-none-any.whl.metadata (10 kB)\n","Requirement already satisfied: aiohttp in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai[tools]) (3.11.15)\n","Requirement already satisfied: httpx>=0.23.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai[tools]) (0.28.1)\n","Requirement already satisfied: importlib-metadata>=6.8.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai[tools]) (8.6.1)\n","Requirement already satisfied: jinja2<4.0.0,>=3.1.2 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai[tools]) (3.1.6)\n","Requirement already satisfied: jsonschema<5.0.0,>=4.22.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai[tools]) (4.23.0)\n","Requirement already satisfied: tiktoken>=0.7.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai[tools]) (0.9.0)\n","Requirement already satisfied: tokenizers in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai[tools]) (0.21.1)\n","Requirement already satisfied: cryptography>=43.0.1 in /usr/local/lib/python3.11/dist-packages (from auth0-python>=4.7.1->crewai[tools]) (43.0.3)\n","Requirement already satisfied: pyjwt>=2.8.0 in /usr/local/lib/python3.11/dist-packages (from auth0-python>=4.7.1->crewai[tools]) (2.10.1)\n","Requirement already satisfied: requests>=2.32.3 in /usr/local/lib/python3.11/dist-packages (from auth0-python>=4.7.1->crewai[tools]) (2.32.3)\n","Requirement already satisfied: urllib3>=2.2.3 in /usr/local/lib/python3.11/dist-packages (from auth0-python>=4.7.1->crewai[tools]) (2.4.0)\n","Requirement already satisfied: build>=1.0.3 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (1.2.2.post1)\n","Requirement already satisfied: fastapi==0.115.9 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (0.115.9)\n","Requirement already satisfied: uvicorn>=0.18.3 in /usr/local/lib/python3.11/dist-packages (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai[tools]) (0.34.2)\n","Requirement already satisfied: numpy>=1.22.5 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (2.0.2)\n","Requirement already satisfied: posthog>=2.4.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (4.0.1)\n","Requirement already satisfied: typing-extensions>=4.5.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (4.13.2)\n","Requirement already satisfied: onnxruntime>=1.14.1 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (1.22.0)\n","Requirement already satisfied: opentelemetry-exporter-otlp-proto-grpc>=1.2.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (1.33.0)\n","Requirement already satisfied: opentelemetry-instrumentation-fastapi>=0.41b0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (0.54b0)\n","Requirement already satisfied: pypika>=0.48.9 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (0.48.9)\n","Requirement already satisfied: tqdm>=4.65.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (4.67.1)\n","Requirement already satisfied: overrides>=7.3.1 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (7.7.0)\n","Requirement already satisfied: importlib-resources in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (6.5.2)\n","Requirement already satisfied: grpcio>=1.58.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (1.71.0)\n","Requirement already satisfied: bcrypt>=4.0.1 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (4.3.0)\n","Requirement already satisfied: typer>=0.9.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (0.15.3)\n","Requirement already satisfied: kubernetes>=28.1.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (32.0.1)\n","Requirement already satisfied: tenacity>=8.2.3 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (9.1.2)\n","Requirement already satisfied: pyyaml>=6.0.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (6.0.2)\n","Requirement already satisfied: mmh3>=4.0.1 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (5.1.0)\n","Requirement already satisfied: orjson>=3.9.12 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (3.10.18)\n","Requirement already satisfied: rich>=10.11.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai[tools]) (13.9.4)\n","Requirement already satisfied: starlette<0.46.0,>=0.40.0 in /usr/local/lib/python3.11/dist-packages (from fastapi==0.115.9->chromadb>=0.5.23->crewai[tools]) (0.45.3)\n","Collecting docker>=7.1.0 (from crewai-tools~=0.45.0->crewai[tools])\n","  Using cached docker-7.1.0-py3-none-any.whl.metadata (3.8 kB)\n","Collecting embedchain>=0.1.114 (from crewai-tools~=0.45.0->crewai[tools])\n","  Using cached embedchain-0.1.128-py3-none-any.whl.metadata (9.2 kB)\n","Collecting lancedb>=0.5.4 (from crewai-tools~=0.45.0->crewai[tools])\n","  Using cached lancedb-0.22.0-cp39-abi3-manylinux_2_28_x86_64.whl.metadata (4.4 kB)\n","Collecting pyright>=1.1.350 (from crewai-tools~=0.45.0->crewai[tools])\n","  Using cached pyright-1.1.400-py3-none-any.whl.metadata (6.6 kB)\n","Collecting pytube>=15.0.0 (from crewai-tools~=0.45.0->crewai[tools])\n","  Using cached pytube-15.0.0-py3-none-any.whl.metadata (5.0 kB)\n","Requirement already satisfied: docstring-parser<1.0,>=0.16 in /usr/local/lib/python3.11/dist-packages (from instructor>=1.3.3->crewai[tools]) (0.16)\n","Requirement already satisfied: jiter<0.9,>=0.6.1 in /usr/local/lib/python3.11/dist-packages (from instructor>=1.3.3->crewai[tools]) (0.8.2)\n","Requirement already satisfied: pydantic-core<3.0.0,>=2.18.0 in /usr/local/lib/python3.11/dist-packages (from instructor>=1.3.3->crewai[tools]) (2.33.2)\n","Requirement already satisfied: anyio<5,>=3.5.0 in /usr/local/lib/python3.11/dist-packages (from openai>=1.13.3->crewai[tools]) (4.9.0)\n","Requirement already satisfied: distro<2,>=1.7.0 in /usr/local/lib/python3.11/dist-packages (from openai>=1.13.3->crewai[tools]) (1.9.0)\n","Requirement already satisfied: sniffio in /usr/local/lib/python3.11/dist-packages (from openai>=1.13.3->crewai[tools]) (1.3.1)\n","Requirement already satisfied: et-xmlfile in /usr/local/lib/python3.11/dist-packages (from openpyxl>=3.1.5->crewai[tools]) (2.0.0)\n","Requirement already satisfied: deprecated>=1.2.6 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-api>=1.30.0->crewai[tools]) (1.2.18)\n","Requirement already satisfied: googleapis-common-protos~=1.52 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-exporter-otlp-proto-http>=1.30.0->crewai[tools]) (1.70.0)\n","Requirement already satisfied: opentelemetry-exporter-otlp-proto-common==1.33.0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-exporter-otlp-proto-http>=1.30.0->crewai[tools]) (1.33.0)\n","Requirement already satisfied: opentelemetry-proto==1.33.0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-exporter-otlp-proto-http>=1.30.0->crewai[tools]) (1.33.0)\n","Requirement already satisfied: protobuf<6.0,>=5.0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-proto==1.33.0->opentelemetry-exporter-otlp-proto-http>=1.30.0->crewai[tools]) (5.29.4)\n","Requirement already satisfied: opentelemetry-semantic-conventions==0.54b0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-sdk>=1.30.0->crewai[tools]) (0.54b0)\n","Requirement already satisfied: pdfminer.six==20250327 in /usr/local/lib/python3.11/dist-packages (from pdfplumber>=0.11.4->crewai[tools]) (20250327)\n","Requirement already satisfied: Pillow>=9.1 in /usr/local/lib/python3.11/dist-packages (from pdfplumber>=0.11.4->crewai[tools]) (11.2.1)\n","Requirement already satisfied: pypdfium2>=4.18.0 in /usr/local/lib/python3.11/dist-packages (from pdfplumber>=0.11.4->crewai[tools]) (4.30.1)\n","Requirement already satisfied: charset-normalizer>=2.0.0 in /usr/local/lib/python3.11/dist-packages (from pdfminer.six==20250327->pdfplumber>=0.11.4->crewai[tools]) (3.4.2)\n","Requirement already satisfied: annotated-types>=0.6.0 in /usr/local/lib/python3.11/dist-packages (from pydantic>=2.4.2->crewai[tools]) (0.7.0)\n","Requirement already satisfied: typing-inspection>=0.4.0 in /usr/local/lib/python3.11/dist-packages (from pydantic>=2.4.2->crewai[tools]) (0.4.0)\n","Requirement already satisfied: ipython>=5.3.0 in /usr/local/lib/python3.11/dist-packages (from pyvis>=0.3.2->crewai[tools]) (7.34.0)\n","Requirement already satisfied: jsonpickle>=1.4.1 in /usr/local/lib/python3.11/dist-packages (from pyvis>=0.3.2->crewai[tools]) (4.0.5)\n","Requirement already satisfied: networkx>=1.11 in /usr/local/lib/python3.11/dist-packages (from pyvis>=0.3.2->crewai[tools]) (3.4.2)\n","Requirement already satisfied: aiohappyeyeballs>=2.3.0 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai[tools]) (2.6.1)\n","Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai[tools]) (1.3.2)\n","Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai[tools]) (25.3.0)\n","Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai[tools]) (1.6.0)\n","Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai[tools]) (6.4.3)\n","Requirement already satisfied: propcache>=0.2.0 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai[tools]) (0.3.1)\n","Requirement already satisfied: yarl<2.0,>=1.17.0 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai[tools]) (1.20.0)\n","Requirement already satisfied: idna>=2.8 in /usr/local/lib/python3.11/dist-packages (from anyio<5,>=3.5.0->openai>=1.13.3->crewai[tools]) (3.10)\n","Requirement already satisfied: packaging>=19.1 in /usr/local/lib/python3.11/dist-packages (from build>=1.0.3->chromadb>=0.5.23->crewai[tools]) (24.2)\n","Requirement already satisfied: pyproject_hooks in /usr/local/lib/python3.11/dist-packages (from build>=1.0.3->chromadb>=0.5.23->crewai[tools]) (1.2.0)\n","Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.11/dist-packages (from cryptography>=43.0.1->auth0-python>=4.7.1->crewai[tools]) (1.17.1)\n","Requirement already satisfied: wrapt<2,>=1.10 in /usr/local/lib/python3.11/dist-packages (from deprecated>=1.2.6->opentelemetry-api>=1.30.0->crewai[tools]) (1.17.2)\n","Collecting alembic<2.0.0,>=1.13.1 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached alembic-1.15.2-py3-none-any.whl.metadata (7.3 kB)\n","Requirement already satisfied: beautifulsoup4<5.0.0,>=4.12.2 in /usr/local/lib/python3.11/dist-packages (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (4.13.4)\n","Collecting chromadb>=0.5.23 (from crewai[tools])\n","  Using cached chromadb-0.5.23-py3-none-any.whl.metadata (6.8 kB)\n","Collecting gptcache<0.2.0,>=0.1.43 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached gptcache-0.1.44-py3-none-any.whl.metadata (24 kB)\n","Requirement already satisfied: langchain<0.4.0,>=0.3.1 in /usr/local/lib/python3.11/dist-packages (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (0.3.25)\n","Collecting langchain-cohere<0.4.0,>=0.3.0 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached langchain_cohere-0.3.5-py3-none-any.whl.metadata (6.7 kB)\n","Collecting langchain-community<0.4.0,>=0.3.1 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached langchain_community-0.3.24-py3-none-any.whl.metadata (2.5 kB)\n","Collecting langchain-openai<0.3.0,>=0.2.1 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached langchain_openai-0.2.14-py3-none-any.whl.metadata (2.7 kB)\n","Requirement already satisfied: langsmith<0.4.0,>=0.3.18 in /usr/local/lib/python3.11/dist-packages (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (0.3.42)\n","Collecting mem0ai<0.2.0,>=0.1.54 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached mem0ai-0.1.98-py3-none-any.whl.metadata (7.4 kB)\n","Collecting posthog>=2.4.0 (from chromadb>=0.5.23->crewai[tools])\n","  Using cached posthog-3.25.0-py2.py3-none-any.whl.metadata (3.0 kB)\n","Collecting pypdf<6.0.0,>=5.0.0 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached pypdf-5.5.0-py3-none-any.whl.metadata (7.2 kB)\n","Collecting pysbd<0.4.0,>=0.3.4 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached pysbd-0.3.4-py3-none-any.whl.metadata (6.1 kB)\n","Collecting schema<0.8.0,>=0.7.5 (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Using cached schema-0.7.7-py2.py3-none-any.whl.metadata (34 kB)\n","Requirement already satisfied: sqlalchemy<3.0.0,>=2.0.27 in /usr/local/lib/python3.11/dist-packages (from embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (2.0.40)\n","Collecting chroma-hnswlib==0.7.6 (from chromadb>=0.5.23->crewai[tools])\n","  Using cached chroma_hnswlib-0.7.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (252 bytes)\n","Collecting tokenizers (from litellm==1.68.0->crewai[tools])\n","  Using cached tokenizers-0.20.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.7 kB)\n","Requirement already satisfied: certifi in /usr/local/lib/python3.11/dist-packages (from httpx>=0.23.0->litellm==1.68.0->crewai[tools]) (2025.4.26)\n","Requirement already satisfied: httpcore==1.* in /usr/local/lib/python3.11/dist-packages (from httpx>=0.23.0->litellm==1.68.0->crewai[tools]) (1.0.9)\n","Requirement already satisfied: h11>=0.16 in /usr/local/lib/python3.11/dist-packages (from httpcore==1.*->httpx>=0.23.0->litellm==1.68.0->crewai[tools]) (0.16.0)\n","Requirement already satisfied: zipp>=3.20 in /usr/local/lib/python3.11/dist-packages (from importlib-metadata>=6.8.0->litellm==1.68.0->crewai[tools]) (3.21.0)\n","Requirement already satisfied: setuptools>=18.5 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (75.2.0)\n","Requirement already satisfied: jedi>=0.16 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (0.19.2)\n","Requirement already satisfied: decorator in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (4.4.2)\n","Requirement already satisfied: pickleshare in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (0.7.5)\n","Requirement already satisfied: traitlets>=4.2 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (5.7.1)\n","Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (3.0.51)\n","Requirement already satisfied: pygments in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (2.19.1)\n","Requirement already satisfied: backcall in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (0.2.0)\n","Requirement already satisfied: matplotlib-inline in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (0.1.7)\n","Requirement already satisfied: pexpect>4.3 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (4.9.0)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.11/dist-packages (from jinja2<4.0.0,>=3.1.2->litellm==1.68.0->crewai[tools]) (3.0.2)\n","Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.11/dist-packages (from jsonschema<5.0.0,>=4.22.0->litellm==1.68.0->crewai[tools]) (2025.4.1)\n","Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.11/dist-packages (from jsonschema<5.0.0,>=4.22.0->litellm==1.68.0->crewai[tools]) (0.36.2)\n","Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.11/dist-packages (from jsonschema<5.0.0,>=4.22.0->litellm==1.68.0->crewai[tools]) (0.24.0)\n","Requirement already satisfied: six>=1.9.0 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (1.17.0)\n","Requirement already satisfied: python-dateutil>=2.5.3 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (2.9.0.post0)\n","Requirement already satisfied: google-auth>=1.0.1 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (2.38.0)\n","Requirement already satisfied: websocket-client!=0.40.0,!=0.41.*,!=0.42.*,>=0.32.0 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (1.8.0)\n","Requirement already satisfied: requests-oauthlib in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (2.0.0)\n","Requirement already satisfied: oauthlib>=3.2.2 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (3.2.2)\n","Requirement already satisfied: durationpy>=0.7 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (0.9)\n","Collecting deprecation (from lancedb>=0.5.4->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading deprecation-2.1.0-py2.py3-none-any.whl.metadata (4.6 kB)\n","Requirement already satisfied: pyarrow>=14 in /usr/local/lib/python3.11/dist-packages (from lancedb>=0.5.4->crewai-tools~=0.45.0->crewai[tools]) (18.1.0)\n","Requirement already satisfied: coloredlogs in /usr/local/lib/python3.11/dist-packages (from onnxruntime>=1.14.1->chromadb>=0.5.23->crewai[tools]) (15.0.1)\n","Requirement already satisfied: flatbuffers in /usr/local/lib/python3.11/dist-packages (from onnxruntime>=1.14.1->chromadb>=0.5.23->crewai[tools]) (25.2.10)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.11/dist-packages (from onnxruntime>=1.14.1->chromadb>=0.5.23->crewai[tools]) (1.13.1)\n","Requirement already satisfied: opentelemetry-instrumentation-asgi==0.54b0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb>=0.5.23->crewai[tools]) (0.54b0)\n","Requirement already satisfied: opentelemetry-instrumentation==0.54b0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb>=0.5.23->crewai[tools]) (0.54b0)\n","Requirement already satisfied: opentelemetry-util-http==0.54b0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb>=0.5.23->crewai[tools]) (0.54b0)\n","Requirement already satisfied: asgiref~=3.0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-instrumentation-asgi==0.54b0->opentelemetry-instrumentation-fastapi>=0.41b0->chromadb>=0.5.23->crewai[tools]) (3.8.1)\n","Collecting monotonic>=1.5 (from posthog>=2.4.0->chromadb>=0.5.23->crewai[tools])\n","  Downloading monotonic-1.6-py2.py3-none-any.whl.metadata (1.5 kB)\n","Requirement already satisfied: backoff>=1.10.0 in /usr/local/lib/python3.11/dist-packages (from posthog>=2.4.0->chromadb>=0.5.23->crewai[tools]) (2.2.1)\n","Collecting nodeenv>=1.6.0 (from pyright>=1.1.350->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading nodeenv-1.9.1-py2.py3-none-any.whl.metadata (21 kB)\n","Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.11/dist-packages (from rich>=10.11.0->chromadb>=0.5.23->crewai[tools]) (3.0.0)\n","Requirement already satisfied: huggingface-hub<1.0,>=0.16.4 in /usr/local/lib/python3.11/dist-packages (from tokenizers->litellm==1.68.0->crewai[tools]) (0.31.1)\n","Requirement already satisfied: shellingham>=1.3.0 in /usr/local/lib/python3.11/dist-packages (from typer>=0.9.0->chromadb>=0.5.23->crewai[tools]) (1.5.4)\n","Requirement already satisfied: httptools>=0.6.3 in /usr/local/lib/python3.11/dist-packages (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai[tools]) (0.6.4)\n","Requirement already satisfied: uvloop!=0.15.0,!=0.15.1,>=0.14.0 in /usr/local/lib/python3.11/dist-packages (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai[tools]) (0.21.0)\n","Requirement already satisfied: watchfiles>=0.13 in /usr/local/lib/python3.11/dist-packages (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai[tools]) (1.0.5)\n","Requirement already satisfied: websockets>=10.4 in /usr/local/lib/python3.11/dist-packages (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai[tools]) (15.0.1)\n","Requirement already satisfied: Mako in /usr/lib/python3/dist-packages (from alembic<2.0.0,>=1.13.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (1.1.3)\n","Requirement already satisfied: soupsieve>1.2 in /usr/local/lib/python3.11/dist-packages (from beautifulsoup4<5.0.0,>=4.12.2->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (2.7)\n","Requirement already satisfied: pycparser in /usr/local/lib/python3.11/dist-packages (from cffi>=1.12->cryptography>=43.0.1->auth0-python>=4.7.1->crewai[tools]) (2.22)\n","Requirement already satisfied: cachetools<6.0,>=2.0.0 in /usr/local/lib/python3.11/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (5.5.2)\n","Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.11/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (0.4.2)\n","Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.11/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (4.9.1)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.11/dist-packages (from huggingface-hub<1.0,>=0.16.4->tokenizers->litellm==1.68.0->crewai[tools]) (3.18.0)\n","Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.11/dist-packages (from huggingface-hub<1.0,>=0.16.4->tokenizers->litellm==1.68.0->crewai[tools]) (2025.3.2)\n","Requirement already satisfied: hf-xet<2.0.0,>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from huggingface-hub<1.0,>=0.16.4->tokenizers->litellm==1.68.0->crewai[tools]) (1.1.0)\n","Requirement already satisfied: parso<0.9.0,>=0.8.4 in /usr/local/lib/python3.11/dist-packages (from jedi>=0.16->ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (0.8.4)\n","Requirement already satisfied: langchain-core<1.0.0,>=0.3.58 in /usr/local/lib/python3.11/dist-packages (from langchain<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (0.3.59)\n","Requirement already satisfied: langchain-text-splitters<1.0.0,>=0.3.8 in /usr/local/lib/python3.11/dist-packages (from langchain<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (0.3.8)\n","Collecting cohere<6.0,>=5.5.6 (from langchain-cohere<0.4.0,>=0.3.0->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading cohere-5.15.0-py3-none-any.whl.metadata (3.4 kB)\n","Collecting langchain-experimental<0.4.0,>=0.3.0 (from langchain-cohere<0.4.0,>=0.3.0->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading langchain_experimental-0.3.4-py3-none-any.whl.metadata (1.7 kB)\n","Requirement already satisfied: pandas>=1.4.3 in /usr/local/lib/python3.11/dist-packages (from langchain-cohere<0.4.0,>=0.3.0->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (2.2.2)\n","Requirement already satisfied: tabulate<0.10.0,>=0.9.0 in /usr/local/lib/python3.11/dist-packages (from langchain-cohere<0.4.0,>=0.3.0->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (0.9.0)\n","Collecting dataclasses-json<0.7,>=0.5.7 (from langchain-community<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading dataclasses_json-0.6.7-py3-none-any.whl.metadata (25 kB)\n","Collecting pydantic-settings<3.0.0,>=2.4.0 (from langchain-community<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading pydantic_settings-2.9.1-py3-none-any.whl.metadata (3.8 kB)\n","Collecting httpx-sse<1.0.0,>=0.4.0 (from langchain-community<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading httpx_sse-0.4.0-py3-none-any.whl.metadata (9.0 kB)\n","Requirement already satisfied: requests-toolbelt<2.0.0,>=1.0.0 in /usr/local/lib/python3.11/dist-packages (from langsmith<0.4.0,>=0.3.18->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (1.0.0)\n","Requirement already satisfied: zstandard<0.24.0,>=0.23.0 in /usr/local/lib/python3.11/dist-packages (from langsmith<0.4.0,>=0.3.18->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (0.23.0)\n","Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.11/dist-packages (from markdown-it-py>=2.2.0->rich>=10.11.0->chromadb>=0.5.23->crewai[tools]) (0.1.2)\n","Collecting pytz<2025.0,>=2024.1 (from mem0ai<0.2.0,>=0.1.54->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading pytz-2024.2-py2.py3-none-any.whl.metadata (22 kB)\n","Collecting qdrant-client<2.0.0,>=1.9.1 (from mem0ai<0.2.0,>=0.1.54->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading qdrant_client-1.14.2-py3-none-any.whl.metadata (10 kB)\n","Requirement already satisfied: ptyprocess>=0.5 in /usr/local/lib/python3.11/dist-packages (from pexpect>4.3->ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (0.7.0)\n","Requirement already satisfied: wcwidth in /usr/local/lib/python3.11/dist-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->ipython>=5.3.0->pyvis>=0.3.2->crewai[tools]) (0.2.13)\n","Requirement already satisfied: greenlet>=1 in /usr/local/lib/python3.11/dist-packages (from sqlalchemy<3.0.0,>=2.0.27->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (3.2.1)\n","Requirement already satisfied: humanfriendly>=9.1 in /usr/local/lib/python3.11/dist-packages (from coloredlogs->onnxruntime>=1.14.1->chromadb>=0.5.23->crewai[tools]) (10.0)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from sympy->onnxruntime>=1.14.1->chromadb>=0.5.23->crewai[tools]) (1.3.0)\n","Collecting fastavro<2.0.0,>=1.9.4 (from cohere<6.0,>=5.5.6->langchain-cohere<0.4.0,>=0.3.0->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading fastavro-1.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (5.5 kB)\n","Collecting types-requests<3.0.0,>=2.0.0 (from cohere<6.0,>=5.5.6->langchain-cohere<0.4.0,>=0.3.0->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading types_requests-2.32.0.20250515-py3-none-any.whl.metadata (2.1 kB)\n","Collecting marshmallow<4.0.0,>=3.18.0 (from dataclasses-json<0.7,>=0.5.7->langchain-community<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading marshmallow-3.26.1-py3-none-any.whl.metadata (7.3 kB)\n","Collecting typing-inspect<1,>=0.4.0 (from dataclasses-json<0.7,>=0.5.7->langchain-community<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading typing_inspect-0.9.0-py3-none-any.whl.metadata (1.5 kB)\n","Requirement already satisfied: jsonpatch<2.0,>=1.33 in /usr/local/lib/python3.11/dist-packages (from langchain-core<1.0.0,>=0.3.58->langchain<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (1.33)\n","Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.11/dist-packages (from pandas>=1.4.3->langchain-cohere<0.4.0,>=0.3.0->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (2025.2)\n","Requirement already satisfied: pyasn1<0.7.0,>=0.6.1 in /usr/local/lib/python3.11/dist-packages (from pyasn1-modules>=0.2.1->google-auth>=1.0.1->kubernetes>=28.1.0->chromadb>=0.5.23->crewai[tools]) (0.6.1)\n","Collecting portalocker<3.0.0,>=2.7.0 (from qdrant-client<2.0.0,>=1.9.1->mem0ai<0.2.0,>=0.1.54->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading portalocker-2.10.1-py3-none-any.whl.metadata (8.5 kB)\n","Requirement already satisfied: h2<5,>=3 in /usr/local/lib/python3.11/dist-packages (from httpx[http2]>=0.20.0->qdrant-client<2.0.0,>=1.9.1->mem0ai<0.2.0,>=0.1.54->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (4.2.0)\n","Requirement already satisfied: jsonpointer>=1.9 in /usr/local/lib/python3.11/dist-packages (from jsonpatch<2.0,>=1.33->langchain-core<1.0.0,>=0.3.58->langchain<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (3.0.0)\n","Collecting mypy-extensions>=0.3.0 (from typing-inspect<1,>=0.4.0->dataclasses-json<0.7,>=0.5.7->langchain-community<0.4.0,>=0.3.1->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools])\n","  Downloading mypy_extensions-1.1.0-py3-none-any.whl.metadata (1.1 kB)\n","Requirement already satisfied: hyperframe<7,>=6.1 in /usr/local/lib/python3.11/dist-packages (from h2<5,>=3->httpx[http2]>=0.20.0->qdrant-client<2.0.0,>=1.9.1->mem0ai<0.2.0,>=0.1.54->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (6.1.0)\n","Requirement already satisfied: hpack<5,>=4.1 in /usr/local/lib/python3.11/dist-packages (from h2<5,>=3->httpx[http2]>=0.20.0->qdrant-client<2.0.0,>=1.9.1->mem0ai<0.2.0,>=0.1.54->embedchain>=0.1.114->crewai-tools~=0.45.0->crewai[tools]) (4.1.0)\n","Downloading crewai_tools-0.45.0-py3-none-any.whl (602 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m602.7/602.7 kB\u001b[0m \u001b[31m19.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading docker-7.1.0-py3-none-any.whl (147 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m147.8/147.8 kB\u001b[0m \u001b[31m17.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading embedchain-0.1.128-py3-none-any.whl (211 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m211.3/211.3 kB\u001b[0m \u001b[31m23.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading chromadb-0.5.23-py3-none-any.whl (628 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m628.3/628.3 kB\u001b[0m \u001b[31m42.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading chroma_hnswlib-0.7.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.4 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.4/2.4 MB\u001b[0m \u001b[31m86.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading lancedb-0.22.0-cp39-abi3-manylinux_2_28_x86_64.whl (33.8 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m33.8/33.8 MB\u001b[0m \u001b[31m21.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading posthog-3.25.0-py2.py3-none-any.whl (89 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m89.1/89.1 kB\u001b[0m \u001b[31m9.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pyright-1.1.400-py3-none-any.whl (5.6 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.6/5.6 MB\u001b[0m \u001b[31m131.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pytube-15.0.0-py3-none-any.whl (57 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m57.6/57.6 kB\u001b[0m \u001b[31m6.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading tokenizers-0.20.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.0/3.0 MB\u001b[0m \u001b[31m65.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading alembic-1.15.2-py3-none-any.whl (231 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m231.9/231.9 kB\u001b[0m \u001b[31m25.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading gptcache-0.1.44-py3-none-any.whl (131 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m131.6/131.6 kB\u001b[0m \u001b[31m14.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading langchain_cohere-0.3.5-py3-none-any.whl (45 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m45.1/45.1 kB\u001b[0m \u001b[31m4.9 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading langchain_community-0.3.24-py3-none-any.whl (2.5 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.5/2.5 MB\u001b[0m \u001b[31m63.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading langchain_openai-0.2.14-py3-none-any.whl (50 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m50.9/50.9 kB\u001b[0m \u001b[31m5.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading mem0ai-0.1.98-py3-none-any.whl (144 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m144.2/144.2 kB\u001b[0m \u001b[31m14.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading monotonic-1.6-py2.py3-none-any.whl (8.2 kB)\n","Downloading nodeenv-1.9.1-py2.py3-none-any.whl (22 kB)\n","Downloading pypdf-5.5.0-py3-none-any.whl (303 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m303.4/303.4 kB\u001b[0m \u001b[31m28.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pysbd-0.3.4-py3-none-any.whl (71 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m71.1/71.1 kB\u001b[0m \u001b[31m6.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading schema-0.7.7-py2.py3-none-any.whl (18 kB)\n","Downloading deprecation-2.1.0-py2.py3-none-any.whl (11 kB)\n","Downloading cohere-5.15.0-py3-none-any.whl (259 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m259.5/259.5 kB\u001b[0m \u001b[31m22.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading httpx_sse-0.4.0-py3-none-any.whl (7.8 kB)\n","Downloading dataclasses_json-0.6.7-py3-none-any.whl (28 kB)\n","Downloading langchain_experimental-0.3.4-py3-none-any.whl (209 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m209.2/209.2 kB\u001b[0m \u001b[31m15.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pydantic_settings-2.9.1-py3-none-any.whl (44 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m44.4/44.4 kB\u001b[0m \u001b[31m4.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pytz-2024.2-py2.py3-none-any.whl (508 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m508.0/508.0 kB\u001b[0m \u001b[31m24.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading qdrant_client-1.14.2-py3-none-any.whl (327 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m327.7/327.7 kB\u001b[0m \u001b[31m22.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading fastavro-1.10.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m3.3/3.3 MB\u001b[0m \u001b[31m35.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading marshmallow-3.26.1-py3-none-any.whl (50 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m50.9/50.9 kB\u001b[0m \u001b[31m4.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading portalocker-2.10.1-py3-none-any.whl (18 kB)\n","Downloading types_requests-2.32.0.20250515-py3-none-any.whl (20 kB)\n","Downloading typing_inspect-0.9.0-py3-none-any.whl (8.8 kB)\n","Downloading mypy_extensions-1.1.0-py3-none-any.whl (5.0 kB)\n","Installing collected packages: schema, pytz, monotonic, types-requests, pytube, pysbd, pypdf, portalocker, nodeenv, mypy-extensions, marshmallow, httpx-sse, fastavro, deprecation, chroma-hnswlib, typing-inspect, pyright, posthog, gptcache, docker, alembic, tokenizers, pydantic-settings, lancedb, dataclasses-json, qdrant-client, cohere, mem0ai, langchain-openai, langchain-community, chromadb, langchain-experimental, langchain-cohere, embedchain, crewai-tools\n","  Attempting uninstall: pytz\n","    Found existing installation: pytz 2025.2\n","    Uninstalling pytz-2025.2:\n","      Successfully uninstalled pytz-2025.2\n","  Attempting uninstall: posthog\n","    Found existing installation: posthog 4.0.1\n","    Uninstalling posthog-4.0.1:\n","      Successfully uninstalled posthog-4.0.1\n","  Attempting uninstall: tokenizers\n","    Found existing installation: tokenizers 0.21.1\n","    Uninstalling tokenizers-0.21.1:\n","      Successfully uninstalled tokenizers-0.21.1\n","  Attempting uninstall: chromadb\n","    Found existing installation: chromadb 1.0.9\n","    Uninstalling chromadb-1.0.9:\n","      Successfully uninstalled chromadb-1.0.9\n","\u001b[31mERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.\n","transformers 4.51.3 requires tokenizers<0.22,>=0.21, but you have tokenizers 0.20.3 which is incompatible.\u001b[0m\u001b[31m\n","\u001b[0mSuccessfully installed alembic-1.15.2 chroma-hnswlib-0.7.6 chromadb-0.5.23 cohere-5.15.0 crewai-tools-0.45.0 dataclasses-json-0.6.7 deprecation-2.1.0 docker-7.1.0 embedchain-0.1.128 fastavro-1.10.0 gptcache-0.1.44 httpx-sse-0.4.0 lancedb-0.22.0 langchain-cohere-0.3.5 langchain-community-0.3.24 langchain-experimental-0.3.4 langchain-openai-0.2.14 marshmallow-3.26.1 mem0ai-0.1.98 monotonic-1.6 mypy-extensions-1.1.0 nodeenv-1.9.1 portalocker-2.10.1 posthog-3.25.0 pydantic-settings-2.9.1 pypdf-5.5.0 pyright-1.1.400 pysbd-0.3.4 pytube-15.0.0 pytz-2024.2 qdrant-client-1.14.2 schema-0.7.7 tokenizers-0.20.3 types-requests-2.32.0.20250515 typing-inspect-0.9.0\n"]}]},{"cell_type":"code","execution_count":4,"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"collapsed":true,"id":"Z5-M48trh6C7","executionInfo":{"status":"ok","timestamp":1747315237913,"user_tz":-120,"elapsed":35684,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}},"outputId":"a087c5f5-0893-42d8-a7ed-720673d20c06"},"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting crewai\n","  Downloading crewai-0.120.1-py3-none-any.whl.metadata (33 kB)\n","Collecting appdirs>=1.4.4 (from crewai)\n","  Downloading appdirs-1.4.4-py2.py3-none-any.whl.metadata (9.0 kB)\n","Collecting auth0-python>=4.7.1 (from crewai)\n","  Downloading auth0_python-4.9.0-py3-none-any.whl.metadata (9.0 kB)\n","Requirement already satisfied: blinker>=1.9.0 in /usr/local/lib/python3.11/dist-packages (from crewai) (1.9.0)\n","Collecting chromadb>=0.5.23 (from crewai)\n","  Downloading chromadb-1.0.9-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.9 kB)\n","Requirement already satisfied: click>=8.1.7 in /usr/local/lib/python3.11/dist-packages (from crewai) (8.1.8)\n","Collecting instructor>=1.3.3 (from crewai)\n","  Downloading instructor-1.8.2-py3-none-any.whl.metadata (23 kB)\n","Collecting json-repair>=0.25.2 (from crewai)\n","  Downloading json_repair-0.44.1-py3-none-any.whl.metadata (12 kB)\n","Collecting json5>=0.10.0 (from crewai)\n","  Downloading json5-0.12.0-py3-none-any.whl.metadata (36 kB)\n","Collecting jsonref>=1.1.0 (from crewai)\n","  Downloading jsonref-1.1.0-py3-none-any.whl.metadata (2.7 kB)\n","Collecting litellm==1.68.0 (from crewai)\n","  Downloading litellm-1.68.0-py3-none-any.whl.metadata (36 kB)\n","Requirement already satisfied: openai>=1.13.3 in /usr/local/lib/python3.11/dist-packages (from crewai) (1.78.0)\n","Requirement already satisfied: openpyxl>=3.1.5 in /usr/local/lib/python3.11/dist-packages (from crewai) (3.1.5)\n","Collecting opentelemetry-api>=1.30.0 (from crewai)\n","  Downloading opentelemetry_api-1.33.0-py3-none-any.whl.metadata (1.6 kB)\n","Collecting opentelemetry-exporter-otlp-proto-http>=1.30.0 (from crewai)\n","  Downloading opentelemetry_exporter_otlp_proto_http-1.33.0-py3-none-any.whl.metadata (2.4 kB)\n","Collecting opentelemetry-sdk>=1.30.0 (from crewai)\n","  Downloading opentelemetry_sdk-1.33.0-py3-none-any.whl.metadata (1.6 kB)\n","Collecting pdfplumber>=0.11.4 (from crewai)\n","  Downloading pdfplumber-0.11.6-py3-none-any.whl.metadata (42 kB)\n","\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m42.8/42.8 kB\u001b[0m \u001b[31m3.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hRequirement already satisfied: pydantic>=2.4.2 in /usr/local/lib/python3.11/dist-packages (from crewai) (2.11.4)\n","Collecting python-dotenv>=1.0.0 (from crewai)\n","  Downloading python_dotenv-1.1.0-py3-none-any.whl.metadata (24 kB)\n","Collecting pyvis>=0.3.2 (from crewai)\n","  Downloading pyvis-0.3.2-py3-none-any.whl.metadata (1.7 kB)\n","Requirement already satisfied: regex>=2024.9.11 in /usr/local/lib/python3.11/dist-packages (from crewai) (2024.11.6)\n","Collecting tomli-w>=1.1.0 (from crewai)\n","  Downloading tomli_w-1.2.0-py3-none-any.whl.metadata (5.7 kB)\n","Collecting tomli>=2.0.2 (from crewai)\n","  Downloading tomli-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)\n","Collecting uv>=0.4.25 (from crewai)\n","  Downloading uv-0.7.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)\n","Requirement already satisfied: aiohttp in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai) (3.11.15)\n","Requirement already satisfied: httpx>=0.23.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai) (0.28.1)\n","Requirement already satisfied: importlib-metadata>=6.8.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai) (8.7.0)\n","Requirement already satisfied: jinja2<4.0.0,>=3.1.2 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai) (3.1.6)\n","Requirement already satisfied: jsonschema<5.0.0,>=4.22.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai) (4.23.0)\n","Collecting openai>=1.13.3 (from crewai)\n","  Downloading openai-1.75.0-py3-none-any.whl.metadata (25 kB)\n","Requirement already satisfied: tiktoken>=0.7.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai) (0.9.0)\n","Requirement already satisfied: tokenizers in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai) (0.21.1)\n","Requirement already satisfied: cryptography>=43.0.1 in /usr/local/lib/python3.11/dist-packages (from auth0-python>=4.7.1->crewai) (43.0.3)\n","Requirement already satisfied: pyjwt>=2.8.0 in /usr/local/lib/python3.11/dist-packages (from auth0-python>=4.7.1->crewai) (2.10.1)\n","Requirement already satisfied: requests>=2.32.3 in /usr/local/lib/python3.11/dist-packages (from auth0-python>=4.7.1->crewai) (2.32.3)\n","Requirement already satisfied: urllib3>=2.2.3 in /usr/local/lib/python3.11/dist-packages (from auth0-python>=4.7.1->crewai) (2.4.0)\n","Requirement already satisfied: build>=1.0.3 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (1.2.2.post1)\n","Collecting fastapi==0.115.9 (from chromadb>=0.5.23->crewai)\n","  Downloading fastapi-0.115.9-py3-none-any.whl.metadata (27 kB)\n","Collecting uvicorn>=0.18.3 (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai)\n","  Downloading uvicorn-0.34.2-py3-none-any.whl.metadata (6.5 kB)\n","Requirement already satisfied: numpy>=1.22.5 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (2.0.2)\n","Collecting posthog>=2.4.0 (from chromadb>=0.5.23->crewai)\n","  Downloading posthog-4.0.1-py2.py3-none-any.whl.metadata (3.0 kB)\n","Requirement already satisfied: typing-extensions>=4.5.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (4.13.2)\n","Collecting onnxruntime>=1.14.1 (from chromadb>=0.5.23->crewai)\n","  Downloading onnxruntime-1.22.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.metadata (4.5 kB)\n","Collecting opentelemetry-exporter-otlp-proto-grpc>=1.2.0 (from chromadb>=0.5.23->crewai)\n","  Downloading opentelemetry_exporter_otlp_proto_grpc-1.33.0-py3-none-any.whl.metadata (2.5 kB)\n","Collecting opentelemetry-instrumentation-fastapi>=0.41b0 (from chromadb>=0.5.23->crewai)\n","  Downloading opentelemetry_instrumentation_fastapi-0.54b0-py3-none-any.whl.metadata (2.2 kB)\n","Collecting pypika>=0.48.9 (from chromadb>=0.5.23->crewai)\n","  Downloading PyPika-0.48.9.tar.gz (67 kB)\n","\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m67.3/67.3 kB\u001b[0m \u001b[31m7.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25h  Installing build dependencies ... \u001b[?25l\u001b[?25hdone\n","  Getting requirements to build wheel ... \u001b[?25l\u001b[?25hdone\n","  Preparing metadata (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n","Requirement already satisfied: tqdm>=4.65.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (4.67.1)\n","Collecting overrides>=7.3.1 (from chromadb>=0.5.23->crewai)\n","  Downloading overrides-7.7.0-py3-none-any.whl.metadata (5.8 kB)\n","Requirement already satisfied: importlib-resources in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (6.5.2)\n","Requirement already satisfied: grpcio>=1.58.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (1.71.0)\n","Collecting bcrypt>=4.0.1 (from chromadb>=0.5.23->crewai)\n","  Downloading bcrypt-4.3.0-cp39-abi3-manylinux_2_34_x86_64.whl.metadata (10 kB)\n","Requirement already satisfied: typer>=0.9.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (0.15.3)\n","Collecting kubernetes>=28.1.0 (from chromadb>=0.5.23->crewai)\n","  Downloading kubernetes-32.0.1-py2.py3-none-any.whl.metadata (1.7 kB)\n","Requirement already satisfied: tenacity>=8.2.3 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (9.1.2)\n","Requirement already satisfied: pyyaml>=6.0.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (6.0.2)\n","Collecting mmh3>=4.0.1 (from chromadb>=0.5.23->crewai)\n","  Downloading mmh3-5.1.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (16 kB)\n","Requirement already satisfied: orjson>=3.9.12 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (3.10.18)\n","Requirement already satisfied: rich>=10.11.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.5.23->crewai) (13.9.4)\n","Collecting starlette<0.46.0,>=0.40.0 (from fastapi==0.115.9->chromadb>=0.5.23->crewai)\n","  Downloading starlette-0.45.3-py3-none-any.whl.metadata (6.3 kB)\n","Requirement already satisfied: docstring-parser<1.0,>=0.16 in /usr/local/lib/python3.11/dist-packages (from instructor>=1.3.3->crewai) (0.16)\n","Collecting jiter<0.9,>=0.6.1 (from instructor>=1.3.3->crewai)\n","  Downloading jiter-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (5.2 kB)\n","Requirement already satisfied: pydantic-core<3.0.0,>=2.18.0 in /usr/local/lib/python3.11/dist-packages (from instructor>=1.3.3->crewai) (2.33.2)\n","Requirement already satisfied: anyio<5,>=3.5.0 in /usr/local/lib/python3.11/dist-packages (from openai>=1.13.3->crewai) (4.9.0)\n","Requirement already satisfied: distro<2,>=1.7.0 in /usr/local/lib/python3.11/dist-packages (from openai>=1.13.3->crewai) (1.9.0)\n","Requirement already satisfied: sniffio in /usr/local/lib/python3.11/dist-packages (from openai>=1.13.3->crewai) (1.3.1)\n","Requirement already satisfied: et-xmlfile in /usr/local/lib/python3.11/dist-packages (from openpyxl>=3.1.5->crewai) (2.0.0)\n","Requirement already satisfied: deprecated>=1.2.6 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-api>=1.30.0->crewai) (1.2.18)\n","Collecting importlib-metadata>=6.8.0 (from litellm==1.68.0->crewai)\n","  Downloading importlib_metadata-8.6.1-py3-none-any.whl.metadata (4.7 kB)\n","Requirement already satisfied: googleapis-common-protos~=1.52 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-exporter-otlp-proto-http>=1.30.0->crewai) (1.70.0)\n","Collecting opentelemetry-exporter-otlp-proto-common==1.33.0 (from opentelemetry-exporter-otlp-proto-http>=1.30.0->crewai)\n","  Downloading opentelemetry_exporter_otlp_proto_common-1.33.0-py3-none-any.whl.metadata (1.9 kB)\n","Collecting opentelemetry-proto==1.33.0 (from opentelemetry-exporter-otlp-proto-http>=1.30.0->crewai)\n","  Downloading opentelemetry_proto-1.33.0-py3-none-any.whl.metadata (2.4 kB)\n","Requirement already satisfied: protobuf<6.0,>=5.0 in /usr/local/lib/python3.11/dist-packages (from opentelemetry-proto==1.33.0->opentelemetry-exporter-otlp-proto-http>=1.30.0->crewai) (5.29.4)\n","Collecting opentelemetry-semantic-conventions==0.54b0 (from opentelemetry-sdk>=1.30.0->crewai)\n","  Downloading opentelemetry_semantic_conventions-0.54b0-py3-none-any.whl.metadata (2.5 kB)\n","Collecting pdfminer.six==20250327 (from pdfplumber>=0.11.4->crewai)\n","  Downloading pdfminer_six-20250327-py3-none-any.whl.metadata (4.1 kB)\n","Requirement already satisfied: Pillow>=9.1 in /usr/local/lib/python3.11/dist-packages (from pdfplumber>=0.11.4->crewai) (11.2.1)\n","Collecting pypdfium2>=4.18.0 (from pdfplumber>=0.11.4->crewai)\n","  Downloading pypdfium2-4.30.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (48 kB)\n","\u001b[2K     \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m48.2/48.2 kB\u001b[0m \u001b[31m5.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hRequirement already satisfied: charset-normalizer>=2.0.0 in /usr/local/lib/python3.11/dist-packages (from pdfminer.six==20250327->pdfplumber>=0.11.4->crewai) (3.4.2)\n","Requirement already satisfied: annotated-types>=0.6.0 in /usr/local/lib/python3.11/dist-packages (from pydantic>=2.4.2->crewai) (0.7.0)\n","Requirement already satisfied: typing-inspection>=0.4.0 in /usr/local/lib/python3.11/dist-packages (from pydantic>=2.4.2->crewai) (0.4.0)\n","Requirement already satisfied: ipython>=5.3.0 in /usr/local/lib/python3.11/dist-packages (from pyvis>=0.3.2->crewai) (7.34.0)\n","Requirement already satisfied: jsonpickle>=1.4.1 in /usr/local/lib/python3.11/dist-packages (from pyvis>=0.3.2->crewai) (4.0.5)\n","Requirement already satisfied: networkx>=1.11 in /usr/local/lib/python3.11/dist-packages (from pyvis>=0.3.2->crewai) (3.4.2)\n","Requirement already satisfied: aiohappyeyeballs>=2.3.0 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai) (2.6.1)\n","Requirement already satisfied: aiosignal>=1.1.2 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai) (1.3.2)\n","Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai) (25.3.0)\n","Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai) (1.6.0)\n","Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai) (6.4.3)\n","Requirement already satisfied: propcache>=0.2.0 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai) (0.3.1)\n","Requirement already satisfied: yarl<2.0,>=1.17.0 in /usr/local/lib/python3.11/dist-packages (from aiohttp->litellm==1.68.0->crewai) (1.20.0)\n","Requirement already satisfied: idna>=2.8 in /usr/local/lib/python3.11/dist-packages (from anyio<5,>=3.5.0->openai>=1.13.3->crewai) (3.10)\n","Requirement already satisfied: packaging>=19.1 in /usr/local/lib/python3.11/dist-packages (from build>=1.0.3->chromadb>=0.5.23->crewai) (24.2)\n","Requirement already satisfied: pyproject_hooks in /usr/local/lib/python3.11/dist-packages (from build>=1.0.3->chromadb>=0.5.23->crewai) (1.2.0)\n","Requirement already satisfied: cffi>=1.12 in /usr/local/lib/python3.11/dist-packages (from cryptography>=43.0.1->auth0-python>=4.7.1->crewai) (1.17.1)\n","Requirement already satisfied: wrapt<2,>=1.10 in /usr/local/lib/python3.11/dist-packages (from deprecated>=1.2.6->opentelemetry-api>=1.30.0->crewai) (1.17.2)\n","Requirement already satisfied: certifi in /usr/local/lib/python3.11/dist-packages (from httpx>=0.23.0->litellm==1.68.0->crewai) (2025.4.26)\n","Requirement already satisfied: httpcore==1.* in /usr/local/lib/python3.11/dist-packages (from httpx>=0.23.0->litellm==1.68.0->crewai) (1.0.9)\n","Requirement already satisfied: h11>=0.16 in /usr/local/lib/python3.11/dist-packages (from httpcore==1.*->httpx>=0.23.0->litellm==1.68.0->crewai) (0.16.0)\n","Requirement already satisfied: zipp>=3.20 in /usr/local/lib/python3.11/dist-packages (from importlib-metadata>=6.8.0->litellm==1.68.0->crewai) (3.21.0)\n","Requirement already satisfied: setuptools>=18.5 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (75.2.0)\n","Collecting jedi>=0.16 (from ipython>=5.3.0->pyvis>=0.3.2->crewai)\n","  Downloading jedi-0.19.2-py2.py3-none-any.whl.metadata (22 kB)\n","Requirement already satisfied: decorator in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (4.4.2)\n","Requirement already satisfied: pickleshare in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (0.7.5)\n","Requirement already satisfied: traitlets>=4.2 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (5.7.1)\n","Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (3.0.51)\n","Requirement already satisfied: pygments in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (2.19.1)\n","Requirement already satisfied: backcall in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (0.2.0)\n","Requirement already satisfied: matplotlib-inline in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (0.1.7)\n","Requirement already satisfied: pexpect>4.3 in /usr/local/lib/python3.11/dist-packages (from ipython>=5.3.0->pyvis>=0.3.2->crewai) (4.9.0)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.11/dist-packages (from jinja2<4.0.0,>=3.1.2->litellm==1.68.0->crewai) (3.0.2)\n","Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.11/dist-packages (from jsonschema<5.0.0,>=4.22.0->litellm==1.68.0->crewai) (2025.4.1)\n","Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.11/dist-packages (from jsonschema<5.0.0,>=4.22.0->litellm==1.68.0->crewai) (0.36.2)\n","Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.11/dist-packages (from jsonschema<5.0.0,>=4.22.0->litellm==1.68.0->crewai) (0.24.0)\n","Requirement already satisfied: six>=1.9.0 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (1.17.0)\n","Requirement already satisfied: python-dateutil>=2.5.3 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (2.9.0.post0)\n","Requirement already satisfied: google-auth>=1.0.1 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (2.38.0)\n","Requirement already satisfied: websocket-client!=0.40.0,!=0.41.*,!=0.42.*,>=0.32.0 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (1.8.0)\n","Requirement already satisfied: requests-oauthlib in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (2.0.0)\n","Requirement already satisfied: oauthlib>=3.2.2 in /usr/local/lib/python3.11/dist-packages (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (3.2.2)\n","Collecting durationpy>=0.7 (from kubernetes>=28.1.0->chromadb>=0.5.23->crewai)\n","  Downloading durationpy-0.9-py3-none-any.whl.metadata (338 bytes)\n","Collecting coloredlogs (from onnxruntime>=1.14.1->chromadb>=0.5.23->crewai)\n","  Downloading coloredlogs-15.0.1-py2.py3-none-any.whl.metadata (12 kB)\n","Requirement already satisfied: flatbuffers in /usr/local/lib/python3.11/dist-packages (from onnxruntime>=1.14.1->chromadb>=0.5.23->crewai) (25.2.10)\n","Requirement already satisfied: sympy in /usr/local/lib/python3.11/dist-packages (from onnxruntime>=1.14.1->chromadb>=0.5.23->crewai) (1.13.1)\n","Collecting opentelemetry-instrumentation-asgi==0.54b0 (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb>=0.5.23->crewai)\n","  Downloading opentelemetry_instrumentation_asgi-0.54b0-py3-none-any.whl.metadata (2.1 kB)\n","Collecting opentelemetry-instrumentation==0.54b0 (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb>=0.5.23->crewai)\n","  Downloading opentelemetry_instrumentation-0.54b0-py3-none-any.whl.metadata (6.8 kB)\n","Collecting opentelemetry-util-http==0.54b0 (from opentelemetry-instrumentation-fastapi>=0.41b0->chromadb>=0.5.23->crewai)\n","  Downloading opentelemetry_util_http-0.54b0-py3-none-any.whl.metadata (2.6 kB)\n","Collecting asgiref~=3.0 (from opentelemetry-instrumentation-asgi==0.54b0->opentelemetry-instrumentation-fastapi>=0.41b0->chromadb>=0.5.23->crewai)\n","  Downloading asgiref-3.8.1-py3-none-any.whl.metadata (9.3 kB)\n","Collecting backoff>=1.10.0 (from posthog>=2.4.0->chromadb>=0.5.23->crewai)\n","  Downloading backoff-2.2.1-py3-none-any.whl.metadata (14 kB)\n","Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.11/dist-packages (from rich>=10.11.0->chromadb>=0.5.23->crewai) (3.0.0)\n","Requirement already satisfied: huggingface-hub<1.0,>=0.16.4 in /usr/local/lib/python3.11/dist-packages (from tokenizers->litellm==1.68.0->crewai) (0.31.1)\n","Requirement already satisfied: shellingham>=1.3.0 in /usr/local/lib/python3.11/dist-packages (from typer>=0.9.0->chromadb>=0.5.23->crewai) (1.5.4)\n","Collecting httptools>=0.6.3 (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai)\n","  Downloading httptools-0.6.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (3.6 kB)\n","Collecting uvloop!=0.15.0,!=0.15.1,>=0.14.0 (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai)\n","  Downloading uvloop-0.21.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.9 kB)\n","Collecting watchfiles>=0.13 (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai)\n","  Downloading watchfiles-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.9 kB)\n","Requirement already satisfied: websockets>=10.4 in /usr/local/lib/python3.11/dist-packages (from uvicorn[standard]>=0.18.3->chromadb>=0.5.23->crewai) (15.0.1)\n","Requirement already satisfied: pycparser in /usr/local/lib/python3.11/dist-packages (from cffi>=1.12->cryptography>=43.0.1->auth0-python>=4.7.1->crewai) (2.22)\n","Requirement already satisfied: cachetools<6.0,>=2.0.0 in /usr/local/lib/python3.11/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (5.5.2)\n","Requirement already satisfied: pyasn1-modules>=0.2.1 in /usr/local/lib/python3.11/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (0.4.2)\n","Requirement already satisfied: rsa<5,>=3.1.4 in /usr/local/lib/python3.11/dist-packages (from google-auth>=1.0.1->kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (4.9.1)\n","Requirement already satisfied: filelock in /usr/local/lib/python3.11/dist-packages (from huggingface-hub<1.0,>=0.16.4->tokenizers->litellm==1.68.0->crewai) (3.18.0)\n","Requirement already satisfied: fsspec>=2023.5.0 in /usr/local/lib/python3.11/dist-packages (from huggingface-hub<1.0,>=0.16.4->tokenizers->litellm==1.68.0->crewai) (2025.3.2)\n","Requirement already satisfied: hf-xet<2.0.0,>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from huggingface-hub<1.0,>=0.16.4->tokenizers->litellm==1.68.0->crewai) (1.1.0)\n","Requirement already satisfied: parso<0.9.0,>=0.8.4 in /usr/local/lib/python3.11/dist-packages (from jedi>=0.16->ipython>=5.3.0->pyvis>=0.3.2->crewai) (0.8.4)\n","Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.11/dist-packages (from markdown-it-py>=2.2.0->rich>=10.11.0->chromadb>=0.5.23->crewai) (0.1.2)\n","Requirement already satisfied: ptyprocess>=0.5 in /usr/local/lib/python3.11/dist-packages (from pexpect>4.3->ipython>=5.3.0->pyvis>=0.3.2->crewai) (0.7.0)\n","Requirement already satisfied: wcwidth in /usr/local/lib/python3.11/dist-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->ipython>=5.3.0->pyvis>=0.3.2->crewai) (0.2.13)\n","Collecting humanfriendly>=9.1 (from coloredlogs->onnxruntime>=1.14.1->chromadb>=0.5.23->crewai)\n","  Downloading humanfriendly-10.0-py2.py3-none-any.whl.metadata (9.2 kB)\n","Requirement already satisfied: mpmath<1.4,>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from sympy->onnxruntime>=1.14.1->chromadb>=0.5.23->crewai) (1.3.0)\n","Requirement already satisfied: pyasn1<0.7.0,>=0.6.1 in /usr/local/lib/python3.11/dist-packages (from pyasn1-modules>=0.2.1->google-auth>=1.0.1->kubernetes>=28.1.0->chromadb>=0.5.23->crewai) (0.6.1)\n","Downloading crewai-0.120.1-py3-none-any.whl (310 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m310.0/310.0 kB\u001b[0m \u001b[31m18.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading litellm-1.68.0-py3-none-any.whl (7.7 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m7.7/7.7 MB\u001b[0m \u001b[31m135.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading appdirs-1.4.4-py2.py3-none-any.whl (9.6 kB)\n","Downloading auth0_python-4.9.0-py3-none-any.whl (135 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m135.3/135.3 kB\u001b[0m \u001b[31m14.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading chromadb-1.0.9-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.9 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m18.9/18.9 MB\u001b[0m \u001b[31m29.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading fastapi-0.115.9-py3-none-any.whl (94 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m94.9/94.9 kB\u001b[0m \u001b[31m8.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading instructor-1.8.2-py3-none-any.whl (91 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m91.2/91.2 kB\u001b[0m \u001b[31m9.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading json_repair-0.44.1-py3-none-any.whl (22 kB)\n","Downloading json5-0.12.0-py3-none-any.whl (36 kB)\n","Downloading jsonref-1.1.0-py3-none-any.whl (9.4 kB)\n","Downloading openai-1.75.0-py3-none-any.whl (646 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m647.0/647.0 kB\u001b[0m \u001b[31m29.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading opentelemetry_api-1.33.0-py3-none-any.whl (65 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m65.8/65.8 kB\u001b[0m \u001b[31m7.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading opentelemetry_exporter_otlp_proto_http-1.33.0-py3-none-any.whl (17 kB)\n","Downloading opentelemetry_exporter_otlp_proto_common-1.33.0-py3-none-any.whl (18 kB)\n","Downloading opentelemetry_proto-1.33.0-py3-none-any.whl (55 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m55.9/55.9 kB\u001b[0m \u001b[31m5.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading opentelemetry_sdk-1.33.0-py3-none-any.whl (118 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m118.9/118.9 kB\u001b[0m \u001b[31m11.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading opentelemetry_semantic_conventions-0.54b0-py3-none-any.whl (194 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m194.9/194.9 kB\u001b[0m \u001b[31m19.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pdfplumber-0.11.6-py3-none-any.whl (60 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m60.2/60.2 kB\u001b[0m \u001b[31m6.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pdfminer_six-20250327-py3-none-any.whl (5.6 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m5.6/5.6 MB\u001b[0m \u001b[31m71.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading python_dotenv-1.1.0-py3-none-any.whl (20 kB)\n","Downloading pyvis-0.3.2-py3-none-any.whl (756 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m756.0/756.0 kB\u001b[0m \u001b[31m42.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading tomli-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (236 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m236.0/236.0 kB\u001b[0m \u001b[31m20.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading tomli_w-1.2.0-py3-none-any.whl (6.7 kB)\n","Downloading uv-0.7.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.4 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m17.4/17.4 MB\u001b[0m \u001b[31m30.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading bcrypt-4.3.0-cp39-abi3-manylinux_2_34_x86_64.whl (284 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m284.2/284.2 kB\u001b[0m \u001b[31m25.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading importlib_metadata-8.6.1-py3-none-any.whl (26 kB)\n","Downloading jiter-0.8.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (345 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m345.6/345.6 kB\u001b[0m \u001b[31m25.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading kubernetes-32.0.1-py2.py3-none-any.whl (2.0 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.0/2.0 MB\u001b[0m \u001b[31m48.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading mmh3-5.1.0-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (101 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m101.6/101.6 kB\u001b[0m \u001b[31m11.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading onnxruntime-1.22.0-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.4 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m16.4/16.4 MB\u001b[0m \u001b[31m20.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading opentelemetry_exporter_otlp_proto_grpc-1.33.0-py3-none-any.whl (18 kB)\n","Downloading opentelemetry_instrumentation_fastapi-0.54b0-py3-none-any.whl (12 kB)\n","Downloading opentelemetry_instrumentation-0.54b0-py3-none-any.whl (31 kB)\n","Downloading opentelemetry_instrumentation_asgi-0.54b0-py3-none-any.whl (16 kB)\n","Downloading opentelemetry_util_http-0.54b0-py3-none-any.whl (7.3 kB)\n","Downloading overrides-7.7.0-py3-none-any.whl (17 kB)\n","Downloading posthog-4.0.1-py2.py3-none-any.whl (92 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m92.0/92.0 kB\u001b[0m \u001b[31m9.7 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pypdfium2-4.30.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.9 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.9/2.9 MB\u001b[0m \u001b[31m71.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading uvicorn-0.34.2-py3-none-any.whl (62 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m62.5/62.5 kB\u001b[0m \u001b[31m6.5 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading backoff-2.2.1-py3-none-any.whl (15 kB)\n","Downloading durationpy-0.9-py3-none-any.whl (3.5 kB)\n","Downloading httptools-0.6.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (459 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m459.8/459.8 kB\u001b[0m \u001b[31m37.4 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading jedi-0.19.2-py2.py3-none-any.whl (1.6 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m1.6/1.6 MB\u001b[0m \u001b[31m46.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading starlette-0.45.3-py3-none-any.whl (71 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m71.5/71.5 kB\u001b[0m \u001b[31m5.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading uvloop-0.21.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.0 MB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m4.0/4.0 MB\u001b[0m \u001b[31m50.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading watchfiles-1.0.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (454 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m454.8/454.8 kB\u001b[0m \u001b[31m22.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading coloredlogs-15.0.1-py2.py3-none-any.whl (46 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m46.0/46.0 kB\u001b[0m \u001b[31m3.8 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading asgiref-3.8.1-py3-none-any.whl (23 kB)\n","Downloading humanfriendly-10.0-py2.py3-none-any.whl (86 kB)\n","\u001b[2K   \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m86.8/86.8 kB\u001b[0m \u001b[31m8.1 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hBuilding wheels for collected packages: pypika\n","  Building wheel for pypika (pyproject.toml) ... \u001b[?25l\u001b[?25hdone\n","  Created wheel for pypika: filename=pypika-0.48.9-py2.py3-none-any.whl size=53801 sha256=4201c59891ca578a46606e30c51643ef5d245fd9a328e30ad5d503328ce04d7c\n","  Stored in directory: /root/.cache/pip/wheels/a3/01/bd/4c40ceb9d5354160cb186dcc153360f4ab7eb23e2b24daf96d\n","Successfully built pypika\n","Installing collected packages: pypika, durationpy, appdirs, uvloop, uvicorn, uv, tomli-w, tomli, python-dotenv, pypdfium2, overrides, opentelemetry-util-http, opentelemetry-proto, mmh3, jsonref, json5, json-repair, jiter, jedi, importlib-metadata, humanfriendly, httptools, bcrypt, backoff, asgiref, watchfiles, starlette, posthog, opentelemetry-exporter-otlp-proto-common, opentelemetry-api, coloredlogs, pyvis, pdfminer.six, opentelemetry-semantic-conventions, openai, onnxruntime, kubernetes, fastapi, auth0-python, pdfplumber, opentelemetry-sdk, opentelemetry-instrumentation, litellm, instructor, opentelemetry-instrumentation-asgi, opentelemetry-exporter-otlp-proto-http, opentelemetry-exporter-otlp-proto-grpc, opentelemetry-instrumentation-fastapi, chromadb, crewai\n","  Attempting uninstall: jiter\n","    Found existing installation: jiter 0.9.0\n","    Uninstalling jiter-0.9.0:\n","      Successfully uninstalled jiter-0.9.0\n","  Attempting uninstall: importlib-metadata\n","    Found existing installation: importlib_metadata 8.7.0\n","    Uninstalling importlib_metadata-8.7.0:\n","      Successfully uninstalled importlib_metadata-8.7.0\n","  Attempting uninstall: opentelemetry-api\n","    Found existing installation: opentelemetry-api 1.16.0\n","    Uninstalling opentelemetry-api-1.16.0:\n","      Successfully uninstalled opentelemetry-api-1.16.0\n","  Attempting uninstall: opentelemetry-semantic-conventions\n","    Found existing installation: opentelemetry-semantic-conventions 0.37b0\n","    Uninstalling opentelemetry-semantic-conventions-0.37b0:\n","      Successfully uninstalled opentelemetry-semantic-conventions-0.37b0\n","  Attempting uninstall: openai\n","    Found existing installation: openai 1.78.0\n","    Uninstalling openai-1.78.0:\n","      Successfully uninstalled openai-1.78.0\n","  Attempting uninstall: opentelemetry-sdk\n","    Found existing installation: opentelemetry-sdk 1.16.0\n","    Uninstalling opentelemetry-sdk-1.16.0:\n","      Successfully uninstalled opentelemetry-sdk-1.16.0\n","Successfully installed appdirs-1.4.4 asgiref-3.8.1 auth0-python-4.9.0 backoff-2.2.1 bcrypt-4.3.0 chromadb-1.0.9 coloredlogs-15.0.1 crewai-0.120.1 durationpy-0.9 fastapi-0.115.9 httptools-0.6.4 humanfriendly-10.0 importlib-metadata-8.6.1 instructor-1.8.2 jedi-0.19.2 jiter-0.8.2 json-repair-0.44.1 json5-0.12.0 jsonref-1.1.0 kubernetes-32.0.1 litellm-1.68.0 mmh3-5.1.0 onnxruntime-1.22.0 openai-1.75.0 opentelemetry-api-1.33.0 opentelemetry-exporter-otlp-proto-common-1.33.0 opentelemetry-exporter-otlp-proto-grpc-1.33.0 opentelemetry-exporter-otlp-proto-http-1.33.0 opentelemetry-instrumentation-0.54b0 opentelemetry-instrumentation-asgi-0.54b0 opentelemetry-instrumentation-fastapi-0.54b0 opentelemetry-proto-1.33.0 opentelemetry-sdk-1.33.0 opentelemetry-semantic-conventions-0.54b0 opentelemetry-util-http-0.54b0 overrides-7.7.0 pdfminer.six-20250327 pdfplumber-0.11.6 posthog-4.0.1 pypdfium2-4.30.1 pypika-0.48.9 python-dotenv-1.1.0 pyvis-0.3.2 starlette-0.45.3 tomli-2.2.1 tomli-w-1.2.0 uv-0.7.3 uvicorn-0.34.2 uvloop-0.21.0 watchfiles-1.0.5\n"]},{"output_type":"display_data","data":{"application/vnd.colab-display-data+json":{"pip_warning":{"packages":["importlib_metadata"]},"id":"a64e6416eee04f3f9533ab2072fd36e2"}},"metadata":{}},{"output_type":"stream","name":"stdout","text":["Collecting crewai-tools\n","  Downloading crewai_tools-0.45.0-py3-none-any.whl.metadata (10 kB)\n","Requirement already satisfied: chromadb>=0.4.22 in /usr/local/lib/python3.11/dist-packages (from crewai-tools) (1.0.9)\n","Requirement already satisfied: click>=8.1.8 in /usr/local/lib/python3.11/dist-packages (from crewai-tools) (8.1.8)\n","Requirement already satisfied: crewai>=0.119.0 in /usr/local/lib/python3.11/dist-packages (from crewai-tools) (0.120.1)\n","Collecting docker>=7.1.0 (from crewai-tools)\n","  Downloading docker-7.1.0-py3-none-any.whl.metadata (3.8 kB)\n","Collecting embedchain>=0.1.114 (from crewai-tools)\n","  Downloading embedchain-0.1.128-py3-none-any.whl.metadata (9.2 kB)\n","Collecting lancedb>=0.5.4 (from crewai-tools)\n","  Downloading lancedb-0.22.0-cp39-abi3-manylinux_2_28_x86_64.whl.metadata (4.4 kB)\n","Requirement already satisfied: openai>=1.12.0 in /usr/local/lib/python3.11/dist-packages (from crewai-tools) (1.75.0)\n","Requirement already satisfied: pydantic>=2.6.1 in /usr/local/lib/python3.11/dist-packages (from crewai-tools) (2.11.4)\n","Collecting pyright>=1.1.350 (from crewai-tools)\n","  Downloading pyright-1.1.400-py3-none-any.whl.metadata (6.6 kB)\n","Collecting pytube>=15.0.0 (from crewai-tools)\n","  Downloading pytube-15.0.0-py3-none-any.whl.metadata (5.0 kB)\n","Requirement already satisfied: requests>=2.31.0 in /usr/local/lib/python3.11/dist-packages (from crewai-tools) (2.32.3)\n","Requirement already satisfied: build>=1.0.3 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (1.2.2.post1)\n","Requirement already satisfied: fastapi==0.115.9 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (0.115.9)\n","Requirement already satisfied: uvicorn>=0.18.3 in /usr/local/lib/python3.11/dist-packages (from uvicorn[standard]>=0.18.3->chromadb>=0.4.22->crewai-tools) (0.34.2)\n","Requirement already satisfied: numpy>=1.22.5 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (2.0.2)\n","Requirement already satisfied: posthog>=2.4.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (4.0.1)\n","Requirement already satisfied: typing-extensions>=4.5.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (4.13.2)\n","Requirement already satisfied: onnxruntime>=1.14.1 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (1.22.0)\n","Requirement already satisfied: opentelemetry-api>=1.2.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (1.33.0)\n","Requirement already satisfied: opentelemetry-exporter-otlp-proto-grpc>=1.2.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (1.33.0)\n","Requirement already satisfied: opentelemetry-instrumentation-fastapi>=0.41b0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (0.54b0)\n","Requirement already satisfied: opentelemetry-sdk>=1.2.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (1.33.0)\n","Requirement already satisfied: tokenizers>=0.13.2 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (0.21.1)\n","Requirement already satisfied: pypika>=0.48.9 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (0.48.9)\n","Requirement already satisfied: tqdm>=4.65.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (4.67.1)\n","Requirement already satisfied: overrides>=7.3.1 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (7.7.0)\n","Requirement already satisfied: importlib-resources in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (6.5.2)\n","Requirement already satisfied: grpcio>=1.58.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (1.71.0)\n","Requirement already satisfied: bcrypt>=4.0.1 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (4.3.0)\n","Requirement already satisfied: typer>=0.9.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (0.15.3)\n","Requirement already satisfied: kubernetes>=28.1.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (32.0.1)\n","Requirement already satisfied: tenacity>=8.2.3 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (9.1.2)\n","Requirement already satisfied: pyyaml>=6.0.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (6.0.2)\n","Requirement already satisfied: mmh3>=4.0.1 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (5.1.0)\n","Requirement already satisfied: orjson>=3.9.12 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (3.10.18)\n","Requirement already satisfied: httpx>=0.27.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (0.28.1)\n","Requirement already satisfied: rich>=10.11.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (13.9.4)\n","Requirement already satisfied: jsonschema>=4.19.0 in /usr/local/lib/python3.11/dist-packages (from chromadb>=0.4.22->crewai-tools) (4.23.0)\n","Requirement already satisfied: starlette<0.46.0,>=0.40.0 in /usr/local/lib/python3.11/dist-packages (from fastapi==0.115.9->chromadb>=0.4.22->crewai-tools) (0.45.3)\n","Requirement already satisfied: appdirs>=1.4.4 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (1.4.4)\n","Requirement already satisfied: auth0-python>=4.7.1 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (4.9.0)\n","Requirement already satisfied: blinker>=1.9.0 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (1.9.0)\n","Requirement already satisfied: instructor>=1.3.3 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (1.8.2)\n","Requirement already satisfied: json-repair>=0.25.2 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (0.44.1)\n","Requirement already satisfied: json5>=0.10.0 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (0.12.0)\n","Requirement already satisfied: jsonref>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (1.1.0)\n","Requirement already satisfied: litellm==1.68.0 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (1.68.0)\n","Requirement already satisfied: openpyxl>=3.1.5 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (3.1.5)\n","Requirement already satisfied: opentelemetry-exporter-otlp-proto-http>=1.30.0 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (1.33.0)\n","Requirement already satisfied: pdfplumber>=0.11.4 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (0.11.6)\n","Requirement already satisfied: python-dotenv>=1.0.0 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (1.1.0)\n","Requirement already satisfied: pyvis>=0.3.2 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (0.3.2)\n","Requirement already satisfied: regex>=2024.9.11 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (2024.11.6)\n","Requirement already satisfied: tomli-w>=1.1.0 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (1.2.0)\n","Requirement already satisfied: tomli>=2.0.2 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (2.2.1)\n","Requirement already satisfied: uv>=0.4.25 in /usr/local/lib/python3.11/dist-packages (from crewai>=0.119.0->crewai-tools) (0.7.3)\n","Requirement already satisfied: aiohttp in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai>=0.119.0->crewai-tools) (3.11.15)\n","Requirement already satisfied: importlib-metadata>=6.8.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai>=0.119.0->crewai-tools) (8.6.1)\n","Requirement already satisfied: jinja2<4.0.0,>=3.1.2 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai>=0.119.0->crewai-tools) (3.1.6)\n","Requirement already satisfied: tiktoken>=0.7.0 in /usr/local/lib/python3.11/dist-packages (from litellm==1.68.0->crewai>=0.119.0->crewai-tools) (0.9.0)\n","Requirement already satisfied: urllib3>=1.26.0 in /usr/local/lib/python3.11/dist-packages (from docker>=7.1.0->crewai-tools) (2.4.0)\n","Collecting alembic<2.0.0,>=1.13.1 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading alembic-1.15.2-py3-none-any.whl.metadata (7.3 kB)\n","Requirement already satisfied: beautifulsoup4<5.0.0,>=4.12.2 in /usr/local/lib/python3.11/dist-packages (from embedchain>=0.1.114->crewai-tools) (4.13.4)\n","Collecting chromadb>=0.4.22 (from crewai-tools)\n","  Downloading chromadb-0.5.23-py3-none-any.whl.metadata (6.8 kB)\n","Collecting gptcache<0.2.0,>=0.1.43 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading gptcache-0.1.44-py3-none-any.whl.metadata (24 kB)\n","Requirement already satisfied: langchain<0.4.0,>=0.3.1 in /usr/local/lib/python3.11/dist-packages (from embedchain>=0.1.114->crewai-tools) (0.3.25)\n","Collecting langchain-cohere<0.4.0,>=0.3.0 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading langchain_cohere-0.3.5-py3-none-any.whl.metadata (6.7 kB)\n","Collecting langchain-community<0.4.0,>=0.3.1 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading langchain_community-0.3.24-py3-none-any.whl.metadata (2.5 kB)\n","Collecting langchain-openai<0.3.0,>=0.2.1 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading langchain_openai-0.2.14-py3-none-any.whl.metadata (2.7 kB)\n","Requirement already satisfied: langsmith<0.4.0,>=0.3.18 in /usr/local/lib/python3.11/dist-packages (from embedchain>=0.1.114->crewai-tools) (0.3.42)\n","Collecting mem0ai<0.2.0,>=0.1.54 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading mem0ai-0.1.98-py3-none-any.whl.metadata (7.4 kB)\n","Collecting posthog>=2.4.0 (from chromadb>=0.4.22->crewai-tools)\n","  Downloading posthog-3.25.0-py2.py3-none-any.whl.metadata (3.0 kB)\n","Collecting pypdf<6.0.0,>=5.0.0 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading pypdf-5.5.0-py3-none-any.whl.metadata (7.2 kB)\n","Collecting pysbd<0.4.0,>=0.3.4 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading pysbd-0.3.4-py3-none-any.whl.metadata (6.1 kB)\n","Collecting schema<0.8.0,>=0.7.5 (from embedchain>=0.1.114->crewai-tools)\n","  Downloading schema-0.7.7-py2.py3-none-any.whl.metadata (34 kB)\n","Requirement already satisfied: sqlalchemy<3.0.0,>=2.0.27 in /usr/local/lib/python3.11/dist-packages (from embedchain>=0.1.114->crewai-tools) (2.0.40)\n","Collecting chroma-hnswlib==0.7.6 (from chromadb>=0.4.22->crewai-tools)\n","  Downloading chroma_hnswlib-0.7.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (252 bytes)\n","Collecting tokenizers (from litellm==1.68.0->crewai>=0.119.0->crewai-tools)\n","  Downloading tokenizers-0.20.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.7 kB)\n","Collecting deprecation (from lancedb>=0.5.4->crewai-tools)\n","\u001b[31mERROR: Operation cancelled by user\u001b[0m\u001b[31m\n","\u001b[0m^C\n","^C\n"]}],"source":["!pip install crewai\n"]},{"cell_type":"code","source":["!pip freeze"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"s3SQX8NSGrSX","executionInfo":{"status":"ok","timestamp":1747315248982,"user_tz":-120,"elapsed":2562,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}},"outputId":"b9e8413a-63e8-4e6a-bcf4-9d2461df611b"},"execution_count":1,"outputs":[{"output_type":"stream","name":"stdout","text":["absl-py==1.4.0\n","accelerate==1.6.0\n","aiohappyeyeballs==2.6.1\n","aiohttp==3.11.15\n","aiosignal==1.3.2\n","alabaster==1.0.0\n","albucore==0.0.24\n","albumentations==2.0.6\n","ale-py==0.11.0\n","altair==5.5.0\n","annotated-types==0.7.0\n","antlr4-python3-runtime==4.9.3\n","anyio==4.9.0\n","appdirs==1.4.4\n","argon2-cffi==23.1.0\n","argon2-cffi-bindings==21.2.0\n","array_record==0.7.2\n","arviz==0.21.0\n","asgiref==3.8.1\n","astropy==7.0.1\n","astropy-iers-data==0.2025.5.5.0.38.14\n","astunparse==1.6.3\n","atpublic==5.1\n","attrs==25.3.0\n","audioread==3.0.1\n","auth0-python==4.9.0\n","autograd==1.8.0\n","babel==2.17.0\n","backcall==0.2.0\n","backoff==2.2.1\n","backports.tarfile==1.2.0\n","bcrypt==4.3.0\n","beautifulsoup4==4.13.4\n","betterproto==2.0.0b6\n","bigframes==2.3.0\n","bigquery-magics==0.9.0\n","bleach==6.2.0\n","blinker==1.9.0\n","blis==1.3.0\n","blobfile==3.0.0\n","blosc2==3.3.2\n","bokeh==3.7.2\n","Bottleneck==1.4.2\n","bqplot==0.12.44\n","branca==0.8.1\n","build==1.2.2.post1\n","CacheControl==0.14.3\n","cachetools==5.5.2\n","catalogue==2.0.10\n","certifi==2025.4.26\n","cffi==1.17.1\n","chardet==5.2.0\n","charset-normalizer==3.4.2\n","chex==0.1.89\n","chromadb==1.0.9\n","clarabel==0.10.0\n","click==8.1.8\n","cloudpathlib==0.21.0\n","cloudpickle==3.1.1\n","cmake==3.31.6\n","cmdstanpy==1.2.5\n","colorcet==3.1.0\n","coloredlogs==15.0.1\n","colorlover==0.3.0\n","colour==0.1.5\n","community==1.0.0b1\n","confection==0.1.5\n","cons==0.4.6\n","contourpy==1.3.2\n","cramjam==2.10.0\n","crewai==0.120.1\n","cryptography==43.0.3\n","cuda-python==12.6.2.post1\n","cudf-cu12 @ https://pypi.nvidia.com/cudf-cu12/cudf_cu12-25.2.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl\n","cudf-polars-cu12==25.2.2\n","cufflinks==0.17.3\n","cuml-cu12==25.2.1\n","cupy-cuda12x==13.3.0\n","curl_cffi==0.10.0\n","cuvs-cu12==25.2.1\n","cvxopt==1.3.2\n","cvxpy==1.6.5\n","cycler==0.12.1\n","cyipopt==1.5.0\n","cymem==2.0.11\n","Cython==3.0.12\n","dask==2024.12.1\n","dask-cuda==25.2.0\n","dask-cudf-cu12==25.2.2\n","dask-expr==1.1.21\n","dataproc-spark-connect==0.7.3\n","datascience==0.17.6\n","datasets==2.14.4\n","db-dtypes==1.4.2\n","dbus-python==1.2.18\n","debugpy==1.8.0\n","decorator==4.4.2\n","defusedxml==0.7.1\n","Deprecated==1.2.18\n","diffusers==0.33.1\n","dill==0.3.7\n","distributed==2024.12.1\n","distributed-ucxx-cu12==0.42.0\n","distro==1.9.0\n","dlib==19.24.6\n","dm-tree==0.1.9\n","docker-pycreds==0.4.0\n","docstring_parser==0.16\n","docutils==0.21.2\n","dopamine_rl==4.1.2\n","duckdb==1.2.2\n","durationpy==0.9\n","earthengine-api==1.5.14\n","easydict==1.13\n","editdistance==0.8.1\n","eerepr==0.1.2\n","einops==0.8.1\n","en_core_web_sm @ https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-3.8.0/en_core_web_sm-3.8.0-py3-none-any.whl#sha256=1932429db727d4bff3deed6b34cfc05df17794f4a52eeb26cf8928f7c1a0fb85\n","entrypoints==0.4\n","et_xmlfile==2.0.0\n","etils==1.12.2\n","etuples==0.3.9\n","Farama-Notifications==0.0.4\n","fastai==2.7.19\n","fastapi==0.115.9\n","fastcore==1.7.29\n","fastdownload==0.0.7\n","fastjsonschema==2.21.1\n","fastprogress==1.0.3\n","fastrlock==0.8.3\n","filelock==3.18.0\n","firebase-admin==6.8.0\n","Flask==3.1.0\n","flatbuffers==25.2.10\n","flax==0.10.6\n","folium==0.19.5\n","fonttools==4.57.0\n","frozendict==2.4.6\n","frozenlist==1.6.0\n","fsspec==2025.3.2\n","future==1.0.0\n","gast==0.6.0\n","gcsfs==2025.3.2\n","GDAL==3.6.4\n","gdown==5.2.0\n","geemap==0.35.3\n","geocoder==1.38.1\n","geographiclib==2.0\n","geopandas==1.0.1\n","geopy==2.4.1\n","gin-config==0.5.0\n","gitdb==4.0.12\n","GitPython==3.1.44\n","glob2==0.7\n","google==2.0.3\n","google-ai-generativelanguage==0.6.15\n","google-api-core==2.24.2\n","google-api-python-client==2.169.0\n","google-auth==2.38.0\n","google-auth-httplib2==0.2.0\n","google-auth-oauthlib==1.2.2\n","google-cloud-aiplatform==1.92.0\n","google-cloud-bigquery==3.31.0\n","google-cloud-bigquery-connection==1.18.2\n","google-cloud-bigquery-storage==2.31.0\n","google-cloud-bigtable==2.30.1\n","google-cloud-core==2.4.3\n","google-cloud-dataproc==5.18.1\n","google-cloud-datastore==2.21.0\n","google-cloud-firestore==2.20.2\n","google-cloud-functions==1.20.3\n","google-cloud-iam==2.19.0\n","google-cloud-language==2.17.1\n","google-cloud-pubsub==2.25.0\n","google-cloud-resource-manager==1.14.2\n","google-cloud-spanner==3.54.0\n","google-cloud-storage==2.19.0\n","google-cloud-translate==3.20.2\n","google-colab @ file:///colabtools/dist/google_colab-1.0.0.tar.gz\n","google-crc32c==1.7.1\n","google-genai==1.14.0\n","google-generativeai==0.8.5\n","google-pasta==0.2.0\n","google-resumable-media==2.7.2\n","googleapis-common-protos==1.70.0\n","googledrivedownloader==1.1.0\n","graphviz==0.20.3\n","greenlet==3.2.1\n","grpc-google-iam-v1==0.14.2\n","grpc-interceptor==0.15.4\n","grpcio==1.71.0\n","grpcio-status==1.71.0\n","grpclib==0.4.8\n","gspread==6.2.0\n","gspread-dataframe==4.0.0\n","gym==0.25.2\n","gym-notices==0.0.8\n","gymnasium==1.1.1\n","h11==0.16.0\n","h2==4.2.0\n","h5netcdf==1.6.1\n","h5py==3.13.0\n","hdbscan==0.8.40\n","hf-xet==1.1.0\n","hf_transfer==0.1.9\n","highspy==1.10.0\n","holidays==0.72\n","holoviews==1.20.2\n","hpack==4.1.0\n","html5lib==1.1\n","httpcore==1.0.9\n","httpimport==1.4.1\n","httplib2==0.22.0\n","httptools==0.6.4\n","httpx==0.28.1\n","huggingface-hub==0.31.1\n","humanfriendly==10.0\n","humanize==4.12.3\n","hyperframe==6.1.0\n","hyperopt==0.2.7\n","ibis-framework==9.5.0\n","idna==3.10\n","imageio==2.37.0\n","imageio-ffmpeg==0.6.0\n","imagesize==1.4.1\n","imbalanced-learn==0.13.0\n","immutabledict==4.2.1\n","importlib_metadata==8.6.1\n","importlib_resources==6.5.2\n","imutils==0.5.4\n","inflect==7.5.0\n","iniconfig==2.1.0\n","instructor==1.8.2\n","intel-cmplr-lib-ur==2025.1.1\n","intel-openmp==2025.1.1\n","ipyevents==2.0.2\n","ipyfilechooser==0.6.0\n","ipykernel==6.17.1\n","ipyleaflet==0.19.2\n","ipyparallel==8.8.0\n","ipython==7.34.0\n","ipython-genutils==0.2.0\n","ipython-sql==0.5.0\n","ipytree==0.2.2\n","ipywidgets==7.7.1\n","itsdangerous==2.2.0\n","jaraco.classes==3.4.0\n","jaraco.context==6.0.1\n","jaraco.functools==4.1.0\n","jax==0.5.2\n","jax-cuda12-pjrt==0.5.1\n","jax-cuda12-plugin==0.5.1\n","jaxlib==0.5.1\n","jedi==0.19.2\n","jeepney==0.9.0\n","jieba==0.42.1\n","Jinja2==3.1.6\n","jiter==0.8.2\n","joblib==1.5.0\n","json5==0.12.0\n","json_repair==0.44.1\n","jsonpatch==1.33\n","jsonpickle==4.0.5\n","jsonpointer==3.0.0\n","jsonref==1.1.0\n","jsonschema==4.23.0\n","jsonschema-specifications==2025.4.1\n","jupyter-client==6.1.12\n","jupyter-console==6.1.0\n","jupyter-leaflet==0.19.2\n","jupyter-server==1.16.0\n","jupyter_core==5.7.2\n","jupyter_kernel_gateway @ git+https://github.com/googlecolab/kernel_gateway@b134e9945df25c2dcb98ade9129399be10788671\n","jupyterlab_pygments==0.3.0\n","jupyterlab_widgets==3.0.15\n","kaggle==1.7.4.5\n","kagglehub==0.3.12\n","keras==3.8.0\n","keras-hub==0.18.1\n","keras-nlp==0.18.1\n","keyring==25.6.0\n","keyrings.google-artifactregistry-auth==1.1.2\n","kiwisolver==1.4.8\n","kubernetes==32.0.1\n","langchain==0.3.25\n","langchain-core==0.3.59\n","langchain-text-splitters==0.3.8\n","langcodes==3.5.0\n","langsmith==0.3.42\n","language_data==1.3.0\n","launchpadlib==1.10.16\n","lazr.restfulclient==0.14.4\n","lazr.uri==1.0.6\n","lazy_loader==0.4\n","libclang==18.1.1\n","libcudf-cu12 @ https://pypi.nvidia.com/libcudf-cu12/libcudf_cu12-25.2.1-py3-none-manylinux_2_28_x86_64.whl\n","libcugraph-cu12==25.2.0\n","libcuml-cu12==25.2.1\n","libcuvs-cu12==25.2.1\n","libkvikio-cu12==25.2.1\n","libpysal==4.13.0\n","libraft-cu12==25.2.0\n","librosa==0.11.0\n","libucx-cu12==1.18.1\n","libucxx-cu12==0.42.0\n","lightgbm @ file:///tmp/lightgbm/LightGBM/dist/lightgbm-4.5.0-py3-none-linux_x86_64.whl\n","linkify-it-py==2.0.3\n","litellm==1.68.0\n","llvmlite==0.43.0\n","locket==1.0.0\n","logical-unification==0.4.6\n","lxml==5.4.0\n","Mako==1.1.3\n","marisa-trie==1.2.1\n","Markdown==3.8\n","markdown-it-py==3.0.0\n","MarkupSafe==3.0.2\n","matplotlib==3.10.0\n","matplotlib-inline==0.1.7\n","matplotlib-venn==1.1.2\n","mdit-py-plugins==0.4.2\n","mdurl==0.1.2\n","miniKanren==1.0.3\n","missingno==0.5.2\n","mistune==3.1.3\n","mizani==0.13.5\n","mkl==2025.0.1\n","ml-dtypes==0.4.1\n","mlxtend==0.23.4\n","mmh3==5.1.0\n","more-itertools==10.7.0\n","moviepy==1.0.3\n","mpmath==1.3.0\n","msgpack==1.1.0\n","multidict==6.4.3\n","multipledispatch==1.0.0\n","multiprocess==0.70.15\n","multitasking==0.0.11\n","murmurhash==1.0.12\n","music21==9.3.0\n","namex==0.0.9\n","narwhals==1.38.2\n","natsort==8.4.0\n","nbclassic==1.3.1\n","nbclient==0.10.2\n","nbconvert==7.16.6\n","nbformat==5.10.4\n","ndindex==1.9.2\n","nest-asyncio==1.6.0\n","networkx==3.4.2\n","nibabel==5.3.2\n","nltk==3.9.1\n","notebook==6.5.7\n","notebook_shim==0.2.4\n","numba==0.60.0\n","numba-cuda==0.2.0\n","numexpr==2.10.2\n","numpy==2.0.2\n","nvidia-cublas-cu12==12.5.3.2\n","nvidia-cuda-cupti-cu12==12.5.82\n","nvidia-cuda-nvcc-cu12==12.5.82\n","nvidia-cuda-nvrtc-cu12==12.5.82\n","nvidia-cuda-runtime-cu12==12.5.82\n","nvidia-cudnn-cu12==9.3.0.75\n","nvidia-cufft-cu12==11.2.3.61\n","nvidia-curand-cu12==10.3.6.82\n","nvidia-cusolver-cu12==11.6.3.83\n","nvidia-cusparse-cu12==12.5.1.3\n","nvidia-cusparselt-cu12==0.6.2\n","nvidia-ml-py==12.575.51\n","nvidia-nccl-cu12==2.21.5\n","nvidia-nvcomp-cu12==4.2.0.11\n","nvidia-nvjitlink-cu12==12.5.82\n","nvidia-nvtx-cu12==12.4.127\n","nvtx==0.2.11\n","nx-cugraph-cu12 @ https://pypi.nvidia.com/nx-cugraph-cu12/nx_cugraph_cu12-25.2.0-py3-none-any.whl\n","oauth2client==4.1.3\n","oauthlib==3.2.2\n","omegaconf==2.3.0\n","onnxruntime==1.22.0\n","openai==1.75.0\n","opencv-contrib-python==4.11.0.86\n","opencv-python==4.11.0.86\n","opencv-python-headless==4.11.0.86\n","openpyxl==3.1.5\n","opentelemetry-api==1.33.0\n","opentelemetry-exporter-otlp-proto-common==1.33.0\n","opentelemetry-exporter-otlp-proto-grpc==1.33.0\n","opentelemetry-exporter-otlp-proto-http==1.33.0\n","opentelemetry-instrumentation==0.54b0\n","opentelemetry-instrumentation-asgi==0.54b0\n","opentelemetry-instrumentation-fastapi==0.54b0\n","opentelemetry-proto==1.33.0\n","opentelemetry-sdk==1.33.0\n","opentelemetry-semantic-conventions==0.54b0\n","opentelemetry-util-http==0.54b0\n","opt_einsum==3.4.0\n","optax==0.2.4\n","optree==0.15.0\n","orbax-checkpoint==0.11.13\n","orjson==3.10.18\n","osqp==1.0.4\n","overrides==7.7.0\n","packaging==24.2\n","pandas==2.2.2\n","pandas-datareader==0.10.0\n","pandas-gbq==0.28.0\n","pandas-stubs==2.2.2.240909\n","pandocfilters==1.5.1\n","panel==1.6.3\n","param==2.2.0\n","parso==0.8.4\n","parsy==2.1\n","partd==1.4.2\n","pathlib==1.0.1\n","patsy==1.0.1\n","pdfminer.six==20250327\n","pdfplumber==0.11.6\n","peewee==3.18.1\n","peft==0.15.2\n","pexpect==4.9.0\n","pickleshare==0.7.5\n","pillow==11.2.1\n","platformdirs==4.3.8\n","plotly==5.24.1\n","plotnine==0.14.5\n","pluggy==1.5.0\n","ply==3.11\n","polars==1.21.0\n","pooch==1.8.2\n","portpicker==1.5.2\n","posthog==4.0.1\n","preshed==3.0.9\n","prettytable==3.16.0\n","proglog==0.1.11\n","progressbar2==4.5.0\n","prometheus_client==0.21.1\n","promise==2.3\n","prompt_toolkit==3.0.51\n","propcache==0.3.1\n","prophet==1.1.6\n","proto-plus==1.26.1\n","protobuf==5.29.4\n","psutil==5.9.5\n","psycopg2==2.9.10\n","ptyprocess==0.7.0\n","py-cpuinfo==9.0.0\n","py4j==0.10.9.7\n","pyarrow==18.1.0\n","pyasn1==0.6.1\n","pyasn1_modules==0.4.2\n","pycairo==1.28.0\n","pycocotools==2.0.8\n","pycparser==2.22\n","pycryptodomex==3.22.0\n","pydantic==2.11.4\n","pydantic_core==2.33.2\n","pydata-google-auth==1.9.1\n","pydot==3.0.4\n","pydotplus==2.0.2\n","PyDrive==1.3.1\n","PyDrive2==1.21.3\n","pyerfa==2.0.1.5\n","pygame==2.6.1\n","pygit2==1.18.0\n","Pygments==2.19.1\n","PyGObject==3.42.0\n","PyJWT==2.10.1\n","pylibcudf-cu12 @ https://pypi.nvidia.com/pylibcudf-cu12/pylibcudf_cu12-25.2.1-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl\n","pylibcugraph-cu12==25.2.0\n","pylibraft-cu12==25.2.0\n","pymc==5.22.0\n","pymystem3==0.2.0\n","pynndescent==0.5.13\n","pynvjitlink-cu12==0.6.0\n","pynvml==12.0.0\n","pyogrio==0.11.0\n","pyomo==6.9.2\n","PyOpenGL==3.1.9\n","pyOpenSSL==24.2.1\n","pyparsing==3.2.3\n","pypdfium2==4.30.1\n","pyperclip==1.9.0\n","PyPika==0.48.9\n","pyproj==3.7.1\n","pyproject_hooks==1.2.0\n","pyshp==2.3.1\n","PySocks==1.7.1\n","pyspark==3.5.1\n","pytensor==2.30.3\n","pytest==8.3.5\n","python-apt==0.0.0\n","python-box==7.3.2\n","python-dateutil==2.9.0.post0\n","python-dotenv==1.1.0\n","python-louvain==0.16\n","python-slugify==8.0.4\n","python-snappy==0.7.3\n","python-utils==3.9.1\n","pytz==2025.2\n","pyvis==0.3.2\n","pyviz_comms==3.0.4\n","PyWavelets==1.8.0\n","PyYAML==6.0.2\n","pyzmq==24.0.1\n","raft-dask-cu12==25.2.0\n","rapids-dask-dependency==25.2.0\n","ratelim==0.1.6\n","referencing==0.36.2\n","regex==2024.11.6\n","requests==2.32.3\n","requests-oauthlib==2.0.0\n","requests-toolbelt==1.0.0\n","requirements-parser==0.9.0\n","rich==13.9.4\n","rmm-cu12==25.2.0\n","roman-numerals-py==3.1.0\n","rpds-py==0.24.0\n","rpy2==3.5.17\n","rsa==4.9.1\n","safetensors==0.5.3\n","scikit-image==0.25.2\n","scikit-learn==1.6.1\n","scipy==1.15.3\n","scooby==0.10.1\n","scs==3.2.7.post2\n","seaborn==0.13.2\n","SecretStorage==3.3.3\n","Send2Trash==1.8.3\n","sentence-transformers==4.1.0\n","sentencepiece==0.2.0\n","sentry-sdk==2.27.0\n","setproctitle==1.3.6\n","shap==0.47.2\n","shapely==2.1.0\n","shellingham==1.5.4\n","simple-parsing==0.1.7\n","simplejson==3.20.1\n","simsimd==6.2.1\n","six==1.17.0\n","sklearn-compat==0.1.3\n","sklearn-pandas==2.2.0\n","slicer==0.0.8\n","smart-open==7.1.0\n","smmap==5.0.2\n","sniffio==1.3.1\n","snowballstemmer==3.0.0.1\n","sortedcontainers==2.4.0\n","soundfile==0.13.1\n","soupsieve==2.7\n","soxr==0.5.0.post1\n","spacy==3.8.5\n","spacy-legacy==3.0.12\n","spacy-loggers==1.0.5\n","spanner-graph-notebook==1.1.6\n","Sphinx==8.2.3\n","sphinxcontrib-applehelp==2.0.0\n","sphinxcontrib-devhelp==2.0.0\n","sphinxcontrib-htmlhelp==2.1.0\n","sphinxcontrib-jsmath==1.0.1\n","sphinxcontrib-qthelp==2.0.0\n","sphinxcontrib-serializinghtml==2.0.0\n","SQLAlchemy==2.0.40\n","sqlglot==25.20.2\n","sqlparse==0.5.3\n","srsly==2.5.1\n","stanio==0.5.1\n","starlette==0.45.3\n","statsmodels==0.14.4\n","stringzilla==3.12.5\n","stumpy==1.13.0\n","sympy==1.13.1\n","tables==3.10.2\n","tabulate==0.9.0\n","tbb==2022.1.0\n","tblib==3.1.0\n","tcmlib==1.3.0\n","tenacity==9.1.2\n","tensorboard==2.18.0\n","tensorboard-data-server==0.7.2\n","tensorflow==2.18.0\n","tensorflow-datasets==4.9.8\n","tensorflow-hub==0.16.1\n","tensorflow-io-gcs-filesystem==0.37.1\n","tensorflow-metadata==1.17.1\n","tensorflow-probability==0.25.0\n","tensorflow-text==2.18.1\n","tensorflow_decision_forests==1.11.0\n","tensorstore==0.1.74\n","termcolor==3.1.0\n","terminado==0.18.1\n","text-unidecode==1.3\n","textblob==0.19.0\n","tf-slim==1.1.0\n","tf_keras==2.18.0\n","thinc==8.3.6\n","threadpoolctl==3.6.0\n","tifffile==2025.3.30\n","tiktoken==0.9.0\n","timm==1.0.15\n","tinycss2==1.4.0\n","tokenizers==0.21.1\n","toml==0.10.2\n","tomli==2.2.1\n","tomli_w==1.2.0\n","toolz==0.12.1\n","torch @ https://download.pytorch.org/whl/cu124/torch-2.6.0%2Bcu124-cp311-cp311-linux_x86_64.whl\n","torchao==0.10.0\n","torchaudio @ https://download.pytorch.org/whl/cu124/torchaudio-2.6.0%2Bcu124-cp311-cp311-linux_x86_64.whl\n","torchdata==0.11.0\n","torchsummary==1.5.1\n","torchtune==0.6.1\n","torchvision @ https://download.pytorch.org/whl/cu124/torchvision-0.21.0%2Bcu124-cp311-cp311-linux_x86_64.whl\n","tornado==6.4.2\n","tqdm==4.67.1\n","traitlets==5.7.1\n","traittypes==0.2.1\n","transformers==4.51.3\n","treelite==4.4.1\n","treescope==0.1.9\n","triton==3.2.0\n","tsfresh==0.21.0\n","tweepy==4.15.0\n","typeguard==4.4.2\n","typer==0.15.3\n","types-pytz==2025.2.0.20250326\n","types-setuptools==80.4.0.20250511\n","typing-inspection==0.4.0\n","typing_extensions==4.13.2\n","tzdata==2025.2\n","tzlocal==5.3.1\n","uc-micro-py==1.0.3\n","ucx-py-cu12==0.42.0\n","ucxx-cu12==0.42.0\n","umap-learn==0.5.7\n","umf==0.10.0\n","uritemplate==4.1.1\n","urllib3==2.4.0\n","uv==0.7.3\n","uvicorn==0.34.2\n","uvloop==0.21.0\n","vega-datasets==0.9.0\n","wadllib==1.3.6\n","wandb==0.19.11\n","wasabi==1.1.3\n","watchfiles==1.0.5\n","wcwidth==0.2.13\n","weasel==0.4.1\n","webcolors==24.11.1\n","webencodings==0.5.1\n","websocket-client==1.8.0\n","websockets==15.0.1\n","Werkzeug==3.1.3\n","widgetsnbextension==3.6.10\n","wordcloud==1.9.4\n","wrapt==1.17.2\n","wurlitzer==3.1.1\n","xarray==2025.3.1\n","xarray-einstats==0.8.0\n","xgboost==2.1.4\n","xlrd==2.0.1\n","xxhash==3.5.0\n","xyzservices==2025.4.0\n","yarl==1.20.0\n","ydf==0.11.0\n","yellowbrick==1.5\n","yfinance==0.2.59\n","zict==3.0.0\n","zipp==3.21.0\n","zstandard==0.23.0\n"]}]},{"cell_type":"code","source":["# Retrieve the API keys securely from Google Colab's user data\n","from google.colab import userdata\n","openai_api_key = userdata.get('openai_api')"],"metadata":{"id":"DjcPs_1NiRlb"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["openai_api_key"],"metadata":{"id":"ZcCU7DA1BDkd","executionInfo":{"status":"ok","timestamp":1747313794975,"user_tz":-120,"elapsed":4,"user":{"displayName":"Diogo Resende","userId":"05706604408624562002"}},"outputId":"cf6d5eb9-139d-414d-be89-ab40439ca1c1","colab":{"base_uri":"https://localhost:8080/","height":35}},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["'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'"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"string"}},"metadata":{},"execution_count":3}]},{"cell_type":"code","source":["import os\n","# Set the API keys as environment variables for accessibility\n","os.environ['OPENAI_API_KEY'] = openai_api_key"],"metadata":{"id":"0_HkpHgGihiT"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["from crewai_tools import DirectoryReadTool, PDFSearchTool, FileWriterTool\n","from crewai import Agent, Crew, Process, Task\n","from crewai.tasks.task_output import TaskOutput\n","\n","from langchain_openai import ChatOpenAI\n","from IPython.display import Markdown\n","import pandas as pd"],"metadata":{"id":"-8D3djWcirrG"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["inputs = {\n","    'folder': 'invoices',\n","    'requirements': 'all invoices from Simonis and Braun',\n","    'columns': ['Date', \"Description\", 'Total Amount', 'Issuer', \"Receiver\"],\n","    'question' : 'what is the total amount invoiced and all the names of personnel involved in the latest invoive file'\n","}"],"metadata":{"id":"v8v3WoWClRVM"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["## Assistant Agent - retrieve necessary documents"],"metadata":{"id":"Rd6FHbCICUYz"}},{"cell_type":"code","source":["assistant_agent = Agent(\n","    role=\"Invoice Retrieval Assistant\",\n","    goal=f\"\"\"\n","        Your task is to search the files within the folder **{inputs['folder']}** and locate the correct document based on the following criteria:\n","        **{inputs['requirements']}**\n","        Once identified, extract and retrieve the relevant data from the document.\n","    \"\"\",\n","    backstory=\"\"\"\n","        You are an efficient and detail-oriented assistant specializing in organizing and retrieving relevant data from documents.\n","    \"\"\",\n","    llm=ChatOpenAI(model_name=\"gpt-4o\", temperature=0.8),  # Using GPT-4 model\n","    tools=[DirectoryReadTool(), PDFSearchTool()]\n",")"],"metadata":{"id":"l-TuWw_BizUx"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["assistant_task = Task(\n","    description=f\"\"\"\n","        Search for the correct file within **{inputs['folder']}** that matches the following criteria:\n","        **{inputs['requirements']}**\n","        Once found, extract all the data from the relevant file.\n","    \"\"\",\n","    expected_output=\"\"\"\n","        The extracted data from the relevant file, formatted for clarity and completeness.\n","    \"\"\",\n","    agent=assistant_agent\n",")\n"],"metadata":{"id":"YOxntmY9jkkx"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["## Organizer Agent - Format into CSV"],"metadata":{"id":"36hrn8adGkOt"}},{"cell_type":"code","source":["organizer_agent = Agent(\n","    role=\"Data Organization Assistant\",\n","    goal=f\"\"\"\n","        Process the provided data and format it as a CSV file with the specified columns:\n","        **{inputs['columns']}**\n","        Save the results strictly in CSV format without any additional text or formatting.\n","    \"\"\",\n","    backstory=\"\"\"\n","        You are an efficient and detail-oriented assistant specializing in structuring and organizing data into CSV format.\n","    \"\"\",\n","    llm=ChatOpenAI(model_name=\"gpt-4o\", temperature=0.8),  # Using GPT-4 model\n",")\n"],"metadata":{"id":"QFAUGr2rs9bc"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["organizer_task = Task(\n","    description=f\"\"\"\n","        Format the provided data into a CSV file with the specified columns:\n","        **{inputs['columns']}**\n","        Ensure that all numeric values use a decimal point (.) instead of a comma (,).\n","        Data should be formatted as DD-MM-YYYY.\n","        Save the results strictly in CSV format without any additional text.\n","    \"\"\",\n","    expected_output=\"\"\"\n","        A properly formatted CSV file containing the correct values in the specified columns.\n","    \"\"\",\n","    agent=organizer_agent,\n",")\n"],"metadata":{"id":"qy3Z_zASteYE"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["## Analyst Agent - Answer query"],"metadata":{"id":"D8HKsBx9HmNx"}},{"cell_type":"code","source":["analyst_agent = Agent(\n","    role=\"Data Analyst Assistant\",\n","    goal=f\"\"\"\n","        Analyze the provided data and accurately answer the following question:\n","        **{inputs['question']}**\n","        Base your response strictly on data and factual analysis.\n","    \"\"\",\n","    backstory=\"\"\"\n","        You are a detail-oriented data analyst, skilled at extracting insights and answering questions based on facts and data.\n","    \"\"\",\n","    llm=ChatOpenAI(model_name=\"gpt-4o\", temperature=0.8),  # Using GPT-4 model\n",")\n"],"metadata":{"id":"FSjPcqn3TdQ5"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["analyst_task = Task(\n","    description=f\"\"\"\n","        Analyze the provided data and answer the following question:\n","        **{inputs['question']}**\n","        Ensure your response is based strictly on data-driven insights.\n","    \"\"\",\n","    expected_output=\"\"\"\n","        A correct, data-backed answer along with the name of the file used for analysis.\n","    \"\"\",\n","    agent=analyst_agent,\n",")\n"],"metadata":{"id":"hv1tN77IVUCJ"},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":["## Assemble crew"],"metadata":{"id":"AtrGXX6VIcZz"}},{"cell_type":"code","source":["crew = Crew(\n","    agents=[assistant_agent, organizer_agent, analyst_agent],  # List of agents involved\n","    tasks=[assistant_task, organizer_task, analyst_task],  # List of tasks to execute\n","    verbose=True,\n","    process=Process.sequential  # Ensuring tasks are processed in order\n",")\n","result = crew.kickoff()  # Start the task execution"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"collapsed":true,"id":"9XlJDRHXoqTF","executionInfo":{"status":"ok","timestamp":1738827460155,"user_tz":0,"elapsed":33101,"user":{"displayName":"Gladys Mawarni","userId":"03879441175200282144"}},"outputId":"43c3a4cd-4cbe-4e0e-8570-8fe6c668db24"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stderr","text":["WARNING:opentelemetry.trace:Overriding of current TracerProvider is not allowed\n"]},{"output_type":"stream","name":"stdout","text":["\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInvoice Retrieval Assistant\u001b[00m\n","\u001b[95m## Task:\u001b[00m \u001b[92m\n","        Search for the correct file within **invoices** that matches the following criteria:  \n","        **all invoices from Simonis and Braun**  \n","        Once found, extract all the data from the relevant file.\n","    \u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInvoice Retrieval Assistant\u001b[00m\n","\u001b[95m## Using tool:\u001b[00m \u001b[92mList files in directory\u001b[00m\n","\u001b[95m## Tool Input:\u001b[00m \u001b[92m\n","\"{\\\"directory\\\": \\\"invoices\\\"}\"\u001b[00m\n","\u001b[95m## Tool Output:\u001b[00m \u001b[92m\n","File paths: \n","-invoices/Hammes_and_sons_2024-12.pdf\n","- invoices/Torphy_2025-02.pdf\n","- invoices/Braun_2022-10.pdf\n","- invoices/simonis_2025-03.pdf\n","- invoices/Gulgowski_and_sons_2025-02.pdf\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInvoice Retrieval Assistant\u001b[00m\n","\u001b[95m## Using tool:\u001b[00m \u001b[92mSearch a PDF's content\u001b[00m\n","\u001b[95m## Tool Input:\u001b[00m \u001b[92m\n","\"{\\\"query\\\": \\\"Simonis and Braun\\\", \\\"pdf\\\": \\\"invoices/Braun_2022-10.pdf\\\"}\"\u001b[00m\n","\u001b[95m## Tool Output:\u001b[00m \u001b[92m\n","Relevant Content:\n","Sample - Do not pay! Braun Ltd Treutel Unions 505 38003-6849 South Tobyside Date: 2022-10-04 Invoice No.: 31500 Invoice Dear Mr. Cormier, We hereby invoice the following deliveries and services. Pos. Amount Unit Description Price Total 1 73 Pcs. Quis ut excepturi quia odit.474,92 € 34.669,16 € 2 79 Pcs. Et qui voluptatem libero.554,69 € 43.820,51 € 3 92 Pcs. Accusamus ea autem. 830,53 € 76.408,76 € 4 67 Pcs. Consectetur ratione explicabo.196,93 € 13.194,31 € Price net 168.092,74 € plus 10% VAT 16.809,27 € Invoice total 184.902,01 € Payment details: Payment within 90 days Braun Ltd - Treutel Unions 505 - 38003-6849 South Tobyside Stehr-Heaney Donato Cormier Leopold Forks 711 24085 McCluremouth Saint Pierre and Miquelon WARNING! This document is only for testing purposes. Do not make any payment! - Generated by invoicefaker.com Braun Ltd Treutel Unions 505 38003-6849 South Tobyside CEO: Liliana Jast EN715009365 586 / 5 / 535 Bank details: NL07LBKP8434276625 KPKMGASKW1P\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInvoice Retrieval Assistant\u001b[00m\n","\u001b[95m## Using tool:\u001b[00m \u001b[92mSearch a PDF's content\u001b[00m\n","\u001b[95m## Tool Input:\u001b[00m \u001b[92m\n","\"{\\\"query\\\": \\\"Simonis and Braun\\\", \\\"pdf\\\": \\\"invoices/simonis_2025-03.pdf\\\"}\"\u001b[00m\n","\u001b[95m## Tool Output:\u001b[00m \u001b[92m\n","Relevant Content:\n","Sample - Do not pay! INVOICE 84951 DATE 05.02.2025 PAYMENT DETAILS 07.03.2025 DESCRIPTION PRICE AMOUNT TOTAL Deleniti consequatur hic omnis. 918,80 € 59 54.209,20 € Quis qui cum eligendi. 162,67 € 82 13.338,94 € Aut error voluptatem voluptatem. 976,13 € 82 80.042,66 € Assumenda nemo. 171,00 € 29 4.959,00 € Qui ab. 309,57 € 76 23.527,32 € PRICE NET 176.077,12 € plus 7% VAT 12.325,40 € INVOICE TOTAL 188.402,52 € CUSTOMER Norwood Spinka ADDRESS Aurelia Wall 784 CITY 42644-0051 South Maudieland Simonis LLC COMPANY Barney Village 891 ADDRESS 24163-6226 Kaseytown CITY PAYMENT DETAILS: Payment within 30 days WARNING! This document is only for testing purposes. Do not make any payment! - Generated by invoicefaker.com Simonis LLC Barney Village 891 24163-6226 Kaseytown CEO: Garry Kilback EN658568060 193 / 590 / 193 Bank details: RS97378587727026913595 AADDWABV\n","\n","\n","You ONLY have access to the following tools, and should NEVER make up tools that are not listed here:\n","\n","Tool Name: List files in directory\n","Tool Arguments: {'directory': {'description': 'Mandatory directory to list content', 'type': 'str'}}\n","Tool Description: A tool that can be used to recursively list a directory's content.\n","Tool Name: Search a PDF's content\n","Tool Arguments: {'query': {'description': \"Mandatory query you want to use to search the PDF's content\", 'type': 'str'}, 'pdf': {'description': 'Mandatory pdf path you want to search', 'type': 'str'}}\n","Tool Description: A tool that can be used to semantic search a query from a PDF's content.\n","\n","IMPORTANT: Use the following format in your response:\n","\n","```\n","Thought: you should always think about what to do\n","Action: the action to take, only one name of [List files in directory, Search a PDF's content], just the name, exactly as it's written.\n","Action Input: the input to the action, just a simple JSON object, enclosed in curly braces, using \" to wrap keys and values.\n","Observation: the result of the action\n","```\n","\n","Once all necessary information is gathered, return the following format:\n","\n","```\n","Thought: I now know the final answer\n","Final Answer: the final answer to the original input question\n","```\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mInvoice Retrieval Assistant\u001b[00m\n","\u001b[95m## Final Answer:\u001b[00m \u001b[92m\n","**Invoice from Braun Ltd (Braun_2022-10.pdf):**\n","```\n","Sample - Do not pay! \n","Braun Ltd \n","Treutel Unions 505 \n","38003-6849 South Tobyside \n","\n","Date: 2022-10-04 \n","Invoice No.: 31500 \n","\n","Dear Mr. Cormier, \n","We hereby invoice the following deliveries and services.\n","\n","Pos. Amount Unit Description Price Total \n","1 73 Pcs. Quis ut excepturi quia odit.474,92 € 34.669,16 € \n","2 79 Pcs. Et qui voluptatem libero.554,69 € 43.820,51 € \n","3 92 Pcs. Accusamus ea autem. 830,53 € 76.408,76 € \n","4 67 Pcs. Consectetur ratione explicabo.196,93 € 13.194,31 € \n","\n","Price net 168.092,74 € \n","plus 10% VAT 16.809,27 € \n","Invoice total 184.902,01 € \n","\n","Payment details: Payment within 90 days \n","Braun Ltd - Treutel Unions 505 - 38003-6849 South Tobyside \n","\n","Stehr-Heaney Donato Cormier Leopold Forks 711 24085 McCluremouth Saint Pierre and Miquelon \n","\n","WARNING! This document is only for testing purposes. Do not make any payment! - Generated by invoicefaker.com \n","Braun Ltd Treutel Unions 505 38003-6849 South Tobyside \n","CEO: Liliana Jast EN715009365 586 / 5 / 535 \n","Bank details: NL07LBKP8434276625 KPKMGASKW1P\n","```\n","\n","**Invoice from Simonis LLC (simonis_2025-03.pdf):**\n","```\n","Sample - Do not pay! \n","INVOICE 84951 \n","DATE 05.02.2025 \n","PAYMENT DETAILS 07.03.2025 \n","\n","DESCRIPTION PRICE AMOUNT TOTAL \n","Deleniti consequatur hic omnis. 918,80 € 59 54.209,20 € \n","Quis qui cum eligendi. 162,67 € 82 13.338,94 € \n","Aut error voluptatem voluptatem. 976,13 € 82 80.042,66 € \n","Assumenda nemo. 171,00 € 29 4.959,00 € \n","Qui ab. 309,57 € 76 23.527,32 € \n","\n","PRICE NET 176.077,12 € \n","plus 7% VAT 12.325,40 € \n","INVOICE TOTAL 188.402,52 € \n","\n","CUSTOMER Norwood Spinka \n","ADDRESS Aurelia Wall 784 \n","CITY 42644-0051 South Maudieland \n","\n","Simonis LLC \n","COMPANY Barney Village 891 \n","ADDRESS 24163-6226 Kaseytown CITY \n","\n","PAYMENT DETAILS: Payment within 30 days \n","WARNING! This document is only for testing purposes. Do not make any payment! - Generated by invoicefaker.com \n","\n","Simonis LLC Barney Village 891 24163-6226 Kaseytown CEO: Garry Kilback EN658568060 193 / 590 / 193 \n","Bank details: RS97378587727026913595 AADDWABV\n","```\n","```\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mData Organization Assistant\u001b[00m\n","\u001b[95m## Task:\u001b[00m \u001b[92m\n","        Format the provided data into a CSV file with the specified columns:  \n","        **['Date', 'Description', 'Total Amount', 'Issuer', 'Receiver']**  \n","        Ensure that all numeric values use a decimal point (.) instead of a comma (,).  \n","        Data should be formatted as DD-MM-YYYY.\n","        Save the results strictly in CSV format without any additional text.\n","    \u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mData Organization Assistant\u001b[00m\n","\u001b[95m## Final Answer:\u001b[00m \u001b[92m\n","```\n","Date,Description,Total Amount,Issuer,Receiver\n","04-10-2022,Quis ut excepturi quia odit.,34669.16,Braun Ltd,Mr. Cormier\n","04-10-2022,Et qui voluptatem libero.,43820.51,Braun Ltd,Mr. Cormier\n","04-10-2022,Accusamus ea autem.,76408.76,Braun Ltd,Mr. Cormier\n","04-10-2022,Consectetur ratione explicabo.,13194.31,Braun Ltd,Mr. Cormier\n","04-10-2022,Invoice Total,184902.01,Braun Ltd,Mr. Cormier\n","05-02-2025,Deleniti consequatur hic omnis.,54209.20,Simonis LLC,Norwood Spinka\n","05-02-2025,Quis qui cum eligendi.,13338.94,Simonis LLC,Norwood Spinka\n","05-02-2025,Aut error voluptatem voluptatem.,80042.66,Simonis LLC,Norwood Spinka\n","05-02-2025,Assumenda nemo.,4959.00,Simonis LLC,Norwood Spinka\n","05-02-2025,Qui ab.,23527.32,Simonis LLC,Norwood Spinka\n","05-02-2025,Invoice Total,188402.52,Simonis LLC,Norwood Spinka\n","```\u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mData Analyst Assistant\u001b[00m\n","\u001b[95m## Task:\u001b[00m \u001b[92m\n","        Analyze the provided data and answer the following question:  \n","        **what is the total amount invoiced + VAT and all the names of personnel involved in the latest invoive file**  \n","        Ensure your response is based strictly on data-driven insights.\n","    \u001b[00m\n","\n","\n","\u001b[1m\u001b[95m# Agent:\u001b[00m \u001b[1m\u001b[92mData Analyst Assistant\u001b[00m\n","\u001b[95m## Final Answer:\u001b[00m \u001b[92m\n","The total amount invoiced including VAT for the latest invoice file dated 05-02-2025 is 188,402.52. The personnel involved in this invoice are Simonis LLC as the issuer and Norwood Spinka as the receiver. This data is from the invoice file \"05-02-2025.\"\u001b[00m\n","\n","\n"]}]},{"cell_type":"code","source":["# raw data from the invoices\n","Markdown(result.tasks_output[0].raw)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"id":"i8Nt2Mnnoti1","executionInfo":{"status":"ok","timestamp":1738827460156,"user_tz":0,"elapsed":20,"user":{"displayName":"Gladys Mawarni","userId":"03879441175200282144"}},"outputId":"c2f3ce7c-6592-4c0c-f95f-f43cdd477236"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["<IPython.core.display.Markdown object>"],"text/markdown":"**Invoice from Braun Ltd (Braun_2022-10.pdf):**\n```\nSample - Do not pay! \nBraun Ltd \nTreutel Unions 505 \n38003-6849 South Tobyside \n\nDate: 2022-10-04 \nInvoice No.: 31500 \n\nDear Mr. Cormier, \nWe hereby invoice the following deliveries and services.\n\nPos. Amount Unit Description Price Total \n1 73 Pcs. Quis ut excepturi quia odit.474,92 € 34.669,16 € \n2 79 Pcs. Et qui voluptatem libero.554,69 € 43.820,51 € \n3 92 Pcs. Accusamus ea autem. 830,53 € 76.408,76 € \n4 67 Pcs. Consectetur ratione explicabo.196,93 € 13.194,31 € \n\nPrice net 168.092,74 € \nplus 10% VAT 16.809,27 € \nInvoice total 184.902,01 € \n\nPayment details: Payment within 90 days \nBraun Ltd - Treutel Unions 505 - 38003-6849 South Tobyside \n\nStehr-Heaney Donato Cormier Leopold Forks 711 24085 McCluremouth Saint Pierre and Miquelon \n\nWARNING! This document is only for testing purposes. Do not make any payment! - Generated by invoicefaker.com \nBraun Ltd Treutel Unions 505 38003-6849 South Tobyside \nCEO: Liliana Jast EN715009365 586 / 5 / 535 \nBank details: NL07LBKP8434276625 KPKMGASKW1P\n```\n\n**Invoice from Simonis LLC (simonis_2025-03.pdf):**\n```\nSample - Do not pay! \nINVOICE 84951 \nDATE 05.02.2025 \nPAYMENT DETAILS 07.03.2025 \n\nDESCRIPTION PRICE AMOUNT TOTAL \nDeleniti consequatur hic omnis. 918,80 € 59 54.209,20 € \nQuis qui cum eligendi. 162,67 € 82 13.338,94 € \nAut error voluptatem voluptatem. 976,13 € 82 80.042,66 € \nAssumenda nemo. 171,00 € 29 4.959,00 € \nQui ab. 309,57 € 76 23.527,32 € \n\nPRICE NET 176.077,12 € \nplus 7% VAT 12.325,40 € \nINVOICE TOTAL 188.402,52 € \n\nCUSTOMER Norwood Spinka \nADDRESS Aurelia Wall 784 \nCITY 42644-0051 South Maudieland \n\nSimonis LLC \nCOMPANY Barney Village 891 \nADDRESS 24163-6226 Kaseytown CITY \n\nPAYMENT DETAILS: Payment within 30 days \nWARNING! This document is only for testing purposes. Do not make any payment! - Generated by invoicefaker.com \n\nSimonis LLC Barney Village 891 24163-6226 Kaseytown CEO: Garry Kilback EN658568060 193 / 590 / 193 \nBank details: RS97378587727026913595 AADDWABV\n```\n```"},"metadata":{},"execution_count":33}]},{"cell_type":"code","source":["# table structured\n","print(result.tasks_output[1].raw)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"mLdsDbzVpBeG","executionInfo":{"status":"ok","timestamp":1738827460156,"user_tz":0,"elapsed":16,"user":{"displayName":"Gladys Mawarni","userId":"03879441175200282144"}},"outputId":"f01faf3e-d0bb-4550-f515-a85851d0b64a"},"execution_count":null,"outputs":[{"output_type":"stream","name":"stdout","text":["```\n","Date,Description,Total Amount,Issuer,Receiver\n","04-10-2022,Quis ut excepturi quia odit.,34669.16,Braun Ltd,Mr. Cormier\n","04-10-2022,Et qui voluptatem libero.,43820.51,Braun Ltd,Mr. Cormier\n","04-10-2022,Accusamus ea autem.,76408.76,Braun Ltd,Mr. Cormier\n","04-10-2022,Consectetur ratione explicabo.,13194.31,Braun Ltd,Mr. Cormier\n","04-10-2022,Invoice Total,184902.01,Braun Ltd,Mr. Cormier\n","05-02-2025,Deleniti consequatur hic omnis.,54209.20,Simonis LLC,Norwood Spinka\n","05-02-2025,Quis qui cum eligendi.,13338.94,Simonis LLC,Norwood Spinka\n","05-02-2025,Aut error voluptatem voluptatem.,80042.66,Simonis LLC,Norwood Spinka\n","05-02-2025,Assumenda nemo.,4959.00,Simonis LLC,Norwood Spinka\n","05-02-2025,Qui ab.,23527.32,Simonis LLC,Norwood Spinka\n","05-02-2025,Invoice Total,188402.52,Simonis LLC,Norwood Spinka\n","```\n"]}]},{"cell_type":"code","source":["# write to csv\n","from io import StringIO\n","\n","df = pd.read_csv(StringIO(result.tasks_output[1].raw))\n","df.dropna(inplace=True)\n","df.to_csv('result.csv')"],"metadata":{"id":"RYrBARSdVgzp"},"execution_count":null,"outputs":[]},{"cell_type":"code","source":["# answer to the question\n","Markdown(result.tasks_output[2].raw)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":64},"id":"RtPL8CTEVtHU","executionInfo":{"status":"ok","timestamp":1738827460157,"user_tz":0,"elapsed":12,"user":{"displayName":"Gladys Mawarni","userId":"03879441175200282144"}},"outputId":"3458e739-d057-4300-859e-4d15f575a390"},"execution_count":null,"outputs":[{"output_type":"execute_result","data":{"text/plain":["<IPython.core.display.Markdown object>"],"text/markdown":"The total amount invoiced including VAT for the latest invoice file dated 05-02-2025 is 188,402.52. The personnel involved in this invoice are Simonis LLC as the issuer and Norwood Spinka as the receiver. This data is from the invoice file \"05-02-2025.\""},"metadata":{},"execution_count":36}]}]}