fastapi>=0.110,<1.0 uvicorn[standard]>=0.30,<1.0 gunicorn>=22,<24 sqlalchemy[asyncio]>=2.0.30,<2.1 psycopg[binary]>=3.1,<4.0 alembic>=1.13,<2.0 pydantic>=2.7,<3.0 pydantic-settings>=2.7,<3.0 python-jose[cryptography]>=3.4.0,<4.0 passlib[argon2]>=1.7,<2.0 python-multipart>=0.0.9,<1.0 redis>=5.0,<6.0 httpx>=0.27,<1.0 python-dotenv>=1.0,<2.0 email-validator>=2.1,<3.0 tenacity>=8.0,<10.0 structlog>=24.0,<25.0 cryptography>=42,<45 google-generativeai>=0.8,<1.0 pdfplumber>=0.10,<1.0 PyPDF2>=3.0,<4.0 Pillow>=10.0,<12.0 safety>=2.0,<3.0 # Observability & Monitoring opentelemetry-api>=1.20,<2.0 opentelemetry-sdk>=1.20,<2.0 opentelemetry-instrumentation-fastapi>=0.42b,<1.0 opentelemetry-instrumentation-sqlalchemy>=0.42b,<1.0 opentelemetry-instrumentation-redis>=0.42b,<1.0 prometheus-client>=0.19,<1.0 # Background tasks celery>=5.4,<6.0