Python Package Dependencies
Smarter Platform is a Python-Django micro-service application. Below is a list of the requirements and version pins for packages included in this environment. Note that we bump version pins on a monthly basis on the first of each month to our alpha branch. Version bumps follow the normal CI-CD workflow to arrive into the production environment, and that this takes an indertiminate amount of time before these ultimately arrive into the production environment. If you are developing your solution in Python then you can use this list to ensure that your development environment is in sync with the Smarter Platform.
#
# This file is autogenerated by pip-compile with Python 3.14
# by the following command:
#
# pip-compile --output-file=smarter/requirements/docker.txt smarter/requirements/in/docker.in
#
aiohappyeyeballs==2.6.1
# via aiohttp
aiohttp==3.13.5
# via llamaai
aiosignal==1.4.0
# via aiohttp
amqp==5.3.1
# via kombu
annotated-types==0.7.0
# via pydantic
anyio==4.13.0
# via
# google-genai
# httpx
# httpx2
# mcp
# openai
# sse-starlette
# starlette
asgiref==3.11.1
# via
# channels
# channels-redis
# django
# django-cors-headers
attrs==26.1.0
# via
# aiohttp
# cattrs
# jsonschema
# referencing
# requests-cache
bcrypt==5.0.0
# via paramiko
beautifulsoup4==4.14.3
# via -r smarter/requirements/in/base.in
billiard==4.2.4
# via celery
boto3==1.43.5
# via -r smarter/requirements/in/base.in
botocore==1.43.5
# via
# -r smarter/requirements/in/base.in
# boto3
# s3transfer
cachetools==7.0.5
# via -r smarter/requirements/in/base.in
cattrs==26.1.0
# via requests-cache
celery==5.6.3
# via
# -r smarter/requirements/in/base.in
# celery-redbeat
# django-celery-beat
celery-redbeat==2.3.3
# via -r smarter/requirements/in/base.in
certifi==2026.2.25
# via
# httpcore
# httpx
# mailchimp-marketing
# pinecone
# requests
cffi==2.0.0
# via
# cryptography
# pynacl
channels==4.3.2
# via
# -r smarter/requirements/in/base.in
# channels-redis
channels-redis==4.3.0
# via -r smarter/requirements/in/base.in
charset-normalizer==3.4.7
# via requests
click==8.3.2
# via
# celery
# click-didyoumean
# click-plugins
# click-repl
# nltk
# uvicorn
click-didyoumean==0.3.1
# via celery
click-plugins==1.1.1.2
# via celery
click-repl==0.3.0
# via celery
cron-descriptor==1.4.5
# via django-celery-beat
cryptography==46.0.7
# via
# google-auth
# paramiko
# pyjwt
defusedxml==0.7.1
# via
# python3-openid
# social-auth-core
distro==1.9.0
# via
# google-genai
# openai
django==6.0.4
# via
# -r smarter/requirements/in/base.in
# channels
# django-celery-beat
# django-cors-headers
# django-debug-toolbar
# django-filter
# django-redis
# django-rest-knox
# django-storages
# django-taggit
# django-timezone-field
# django-waffle
# djangorestframework
# drf-yasg
# social-auth-app-django
django-celery-beat==2.9.0
# via -r smarter/requirements/in/base.in
django-cors-headers==4.9.0
# via -r smarter/requirements/in/base.in
django-debug-toolbar==6.3.0
# via -r smarter/requirements/in/base.in
django-filter==25.2
# via -r smarter/requirements/in/base.in
django-hosts==7.0.0
# via -r smarter/requirements/in/base.in
django-redis==6.0.0
# via -r smarter/requirements/in/base.in
django-rest-knox==5.0.4
# via -r smarter/requirements/in/base.in
django-storages==1.14.6
# via -r smarter/requirements/in/base.in
django-taggit==6.1.0
# via -r smarter/requirements/in/base.in
django-timezone-field==7.2.1
# via django-celery-beat
django-waffle==5.0.0
# via -r smarter/requirements/in/base.in
djangorestframework==3.17.1
# via
# -r smarter/requirements/in/base.in
# django-rest-knox
# drf-yasg
dnspython==2.8.0
# via
# -r smarter/requirements/in/base.in
# email-validator
docutils==0.22.4
# via -r smarter/requirements/in/base.in
drf-yasg==1.21.15
# via -r smarter/requirements/in/base.in
email-validator==2.3.0
# via -r smarter/requirements/in/base.in
filelock==3.25.2
# via tldextract
flatbuffers==25.9.23
# via openmeteo-sdk
flexcache==0.3
# via pint
flexparser==0.4
# via pint
frozenlist==1.8.0
# via
# aiohttp
# aiosignal
google-auth[requests]==2.49.2
# via google-genai
google-genai==1.73.0
# via -r smarter/requirements/in/base.in
googlemaps==4.10.0
# via -r smarter/requirements/in/base.in
grpcio==1.84.0
# via qdrant-client
h11==0.16.0
# via
# httpcore
# httpcore2
# uvicorn
h2==4.4.1
# via httpx
hpack==4.2.0
# via h2
httpcore==1.0.9
# via httpx
httpcore2==2.13.1
# via httpx2
httpx[http2]==0.28.1
# via
# google-genai
# langgraph-sdk
# langsmith
# openai
# qdrant-client
httpx2==2.13.1
# via mcp
hyperframe==6.1.0
# via h2
idna==3.20
# via
# anyio
# email-validator
# httpx
# httpx2
# requests
# tldextract
# url-normalize
# yarl
inflect==7.5.0
# via -r smarter/requirements/in/base.in
inflection==0.5.1
# via
# -r smarter/requirements/in/base.in
# drf-yasg
invoke==3.0.3
# via paramiko
jiter==0.14.0
# via openai
jmespath==1.1.0
# via
# boto3
# botocore
joblib==1.5.3
# via nltk
jsonpatch==1.33
# via langchain-core
jsonpointer==3.1.1
# via jsonpatch
jsonschema==4.26.0
# via mcp
jsonschema-specifications==2025.9.1
# via jsonschema
kombu==5.6.2
# via celery
langchain==1.2.15
# via -r smarter/requirements/in/base.in
langchain-core==1.2.28
# via
# langchain
# langchain-openai
# langchain-qdrant
# langchain-text-splitters
# langgraph
# langgraph-checkpoint
# langgraph-prebuilt
langchain-openai==1.1.12
# via -r smarter/requirements/in/base.in
langchain-qdrant==1.1.0
# via -r smarter/requirements/in/base.in
langchain-text-splitters==1.1.1
# via -r smarter/requirements/in/base.in
langgraph==1.1.6
# via langchain
langgraph-checkpoint==4.0.1
# via
# langgraph
# langgraph-prebuilt
langgraph-prebuilt==1.0.9
# via langgraph
langgraph-sdk==0.3.13
# via langgraph
langsmith==0.7.30
# via langchain-core
lark==1.3.1
# via python-hcl2
levenshtein==0.27.3
# via python-levenshtein
llamaai==0.1.27
# via -r smarter/requirements/in/base.in
lxml==6.0.4
# via -r smarter/requirements/in/base.in
mailchimp-marketing==3.0.80
# via -r smarter/requirements/in/base.in
mariadb==1.1.14
# via -r smarter/requirements/in/mariadb.in
markdown==3.10.2
# via -r smarter/requirements/in/base.in
mcp==2.2.0
# via -r smarter/requirements/in/base.in
mcp-types==2.2.0
# via mcp
more-itertools==11.0.2
# via inflect
msgpack==1.1.2
# via channels-redis
multidict==6.7.1
# via
# aiohttp
# yarl
nest-asyncio==1.6.0
# via llamaai
nltk==3.9.4
# via
# -r smarter/requirements/in/base.in
# textblob
numpy==2.4.4
# via
# pandas
# qdrant-client
oauthlib==3.3.1
# via
# requests-oauthlib
# social-auth-core
openai==2.31.0
# via
# -r smarter/requirements/in/base.in
# langchain-openai
openmeteo-requests==1.4.0
# via -r smarter/requirements/in/base.in
openmeteo-sdk==1.26.0
# via openmeteo-requests
opentelemetry-api==1.45.0
# via mcp
orjson==3.11.8
# via
# langgraph-sdk
# langsmith
ormsgpack==1.12.2
# via langgraph-checkpoint
packaging==24.2
# via
# drf-yasg
# kombu
# langchain-core
# langsmith
# mariadb
# pinecone-plugin-assistant
pandas==3.0.2
# via -r smarter/requirements/in/base.in
paramiko==4.0.0
# via -r smarter/requirements/in/base.in
pillow==12.2.0
# via -r smarter/requirements/in/base.in
pinecone==7.3.0
# via -r smarter/requirements/in/base.in
pinecone-plugin-assistant==1.8.0
# via pinecone
pinecone-plugin-interface==0.0.7
# via pinecone
pint==0.25.3
# via -r smarter/requirements/in/base.in
platformdirs==4.9.6
# via
# pint
# requests-cache
portalocker==3.2.0
# via qdrant-client
prompt-toolkit==3.0.52
# via click-repl
propcache==0.4.1
# via
# aiohttp
# yarl
protobuf==7.36.2
# via qdrant-client
psutil==7.2.2
# via -r smarter/requirements/in/base.in
pyasn1==0.6.3
# via pyasn1-modules
pyasn1-modules==0.4.2
# via google-auth
pycountry==26.2.16
# via -r smarter/requirements/in/base.in
pycparser==3.0
# via cffi
pydantic==2.13.0
# via
# -r smarter/requirements/in/base.in
# google-genai
# langchain
# langchain-core
# langchain-qdrant
# langgraph
# langsmith
# mcp
# mcp-types
# openai
# pydantic-settings
# qdrant-client
pydantic-core==2.46.0
# via pydantic
pydantic-settings==2.13.1
# via -r smarter/requirements/in/base.in
pyjwt[crypto]==2.12.1
# via
# mcp
# social-auth-core
pymysql==1.1.3
# via -r smarter/requirements/in/base.in
pynacl==1.6.2
# via paramiko
pypdf==6.19.0
# via -r smarter/requirements/in/base.in
python-crontab==3.3.0
# via django-celery-beat
python-dateutil==2.9.0.post0
# via
# botocore
# celery
# celery-redbeat
# mailchimp-marketing
# pandas
# pinecone
python-dotenv==1.2.2
# via
# -r smarter/requirements/in/base.in
# pydantic-settings
python-hcl2==8.1.2
# via -r smarter/requirements/in/base.in
python-levenshtein==0.27.3
# via -r smarter/requirements/in/base.in
python-multipart==0.0.32
# via mcp
python3-openid==3.2.0
# via social-auth-core
pytz==2026.1.post1
# via drf-yasg
pyyaml==6.0.3
# via
# -r smarter/requirements/in/base.in
# drf-yasg
# langchain-core
qdrant-client==1.19.1
# via
# -r smarter/requirements/in/base.in
# langchain-qdrant
rapidfuzz==3.14.5
# via levenshtein
redis==7.4.0
# via
# celery-redbeat
# channels-redis
# django-redis
referencing==0.37.0
# via
# jsonschema
# jsonschema-specifications
regex==2026.4.4
# via
# nltk
# python-hcl2
# tiktoken
requests==2.33.1
# via
# -r smarter/requirements/in/base.in
# google-auth
# google-genai
# googlemaps
# langsmith
# llamaai
# mailchimp-marketing
# openmeteo-requests
# pinecone-plugin-assistant
# requests-cache
# requests-file
# requests-oauthlib
# requests-toolbelt
# retry-requests
# social-auth-core
# tiktoken
# tldextract
requests-cache==1.3.1
# via -r smarter/requirements/in/base.in
requests-file==3.0.1
# via tldextract
requests-oauthlib==2.0.0
# via social-auth-core
requests-toolbelt==1.0.0
# via langsmith
retry-requests==2.0.0
# via -r smarter/requirements/in/base.in
rpds-py==2026.6.3
# via
# jsonschema
# referencing
s3transfer==0.17.0
# via boto3
six==1.17.0
# via
# mailchimp-marketing
# python-dateutil
sniffio==1.3.1
# via
# google-genai
# openai
social-auth-app-django==5.7.0
# via -r smarter/requirements/in/base.in
social-auth-core==4.8.5
# via social-auth-app-django
soupsieve==2.8.3
# via beautifulsoup4
sqlparse==0.5.5
# via
# django
# django-debug-toolbar
sse-starlette==3.5.0
# via mcp
starlette==1.7.0
# via
# mcp
# sse-starlette
tenacity==9.1.4
# via
# celery-redbeat
# google-genai
# langchain-core
textblob==0.20.0
# via -r smarter/requirements/in/base.in
tiktoken==0.12.0
# via langchain-openai
tldextract==5.3.1
# via -r smarter/requirements/in/base.in
tqdm==4.67.3
# via
# nltk
# openai
truststore==0.10.4
# via
# httpcore2
# httpx2
typeguard==4.5.1
# via inflect
typing-extensions==4.15.0
# via
# beautifulsoup4
# cattrs
# flexcache
# flexparser
# google-genai
# grpcio
# langchain-core
# mcp
# mcp-types
# openai
# opentelemetry-api
# pinecone
# pint
# pydantic
# pydantic-core
# typeguard
# typing-inspection
typing-inspection==0.4.2
# via
# mcp
# pydantic
# pydantic-settings
tzdata==2026.1
# via
# django-celery-beat
# kombu
tzlocal==5.3.1
# via celery
uritemplate==4.2.0
# via drf-yasg
url-normalize==2.2.1
# via requests-cache
urllib3==2.6.3
# via
# botocore
# mailchimp-marketing
# pinecone
# qdrant-client
# requests
# requests-cache
# retry-requests
uuid-utils==0.14.1
# via
# langchain-core
# langsmith
uvicorn==0.46.0
# via
# -r smarter/requirements/in/docker.in
# mcp
validators==0.35.0
# via -r smarter/requirements/in/base.in
vine==5.1.0
# via
# amqp
# celery
# kombu
wcwidth==0.6.0
# via prompt-toolkit
websockets==16.0
# via google-genai
whitenoise==6.12.0
# via -r smarter/requirements/in/base.in
xxhash==3.6.0
# via
# langgraph
# langsmith
yarl==1.23.0
# via aiohttp
zstandard==0.25.0
# via langsmith