# Core
fastapi>=0.110
uvicorn[standard]>=0.29
httpx>=0.27
python-multipart>=0.0.9        # multipart uploads (admin photo test)
pydantic-settings>=2.2
PyMySQL>=1.1
cryptography>=42.0        # needed by PyMySQL for MySQL 8 authentication
openai>=1.30
faster-whisper>=1.0             # local voice transcription (no API needed)
numpy>=1.26
Pillow>=10.3

# Dev — run the test suite with:  python -m pytest
pytest>=8.0
pytest-asyncio>=0.23

# Optional — enables local CLIP photo matching (best product-photo recognition).
# Large download (~1.5 GB with torch). Without it, the bot automatically falls
# back to GPT-4o vision description matching.
# sentence-transformers>=2.7
