pyyaml>=6.0.0
exrex>=0.11.0

[all]
pycatalyst[api,db,docs,faker,http,inference,ml,mongodb,parquet,postgres,s3,sandbox,ui,workbench,worker]

[api]
fastapi>=0.104.0
uvicorn[standard]>=0.24.0
pydantic>=2.0.0
pydantic-settings>=2.0.0
python-multipart>=0.0.6
PyJWT>=2.8.0
httpx>=0.24.0
alembic>=1.13.0
sqlalchemy>=2.0.0

[db]
alembic>=1.13.0
sqlalchemy>=2.0.0

[dev]
pycatalyst[all]
pytest>=7.0.0
pytest-asyncio>=0.21.0
pytest-cov>=4.0.0
hypothesis>=6.0.0
ruff>=0.9.0
mypy>=1.0.0
pre-commit>=3.0.0
build>=0.10.0
twine>=4.0.0
types-PyYAML>=6.0.0
jupyterlab>=4.0.0
ipykernel>=6.0.0

[docs]
mkdocs-material>=9.5.0
mkdocstrings[python]>=0.24.0

[faker]
faker>=20.0.0

[http]
httpx>=0.24.0

[inference]
pandas>=2.0.0

[kafka]
confluent-kafka>=2.3.0

[ml]
pycatalyst[ml-core,ml-llm,ml-sklearn]

[ml-core]
torch>=2.0.0
numpy>=1.24.0
pandas>=2.0.0
matplotlib>=3.7.0
pydantic>=2.0.0
joblib>=1.3.0

[ml-llm]
pycatalyst[ml-core]
transformers>=4.36.0
peft>=0.7.0
datasets>=2.16.0
accelerate>=0.25.0

[ml-sklearn]
pycatalyst[ml-core]
scikit-learn>=1.3.0

[mongodb]
pymongo>=4.6.0

[parquet]
pyarrow>=14.0.0

[postgres]
psycopg2-binary>=2.9.0

[rabbitmq]
pika>=1.3.0

[s3]
boto3>=1.28.0

[sandbox]
docker>=7.0.0

[ui]
fastapi>=0.104.0
uvicorn[standard]>=0.24.0
httpx>=0.24.0
aiofiles>=23.0.0

[workbench]
pycatalyst[api,sandbox]
ipython>=8.0.0

[worker]
alembic>=1.13.0
sqlalchemy>=2.0.0
