Arag / requirements.txt
AuthorBot
Ship chatbot intelligence upgrades and author-friendly Readers tab
67f5095
Raw
History Blame Contribute Delete
5.09 kB
# Author RAG Chatbot SaaS β€” Python Dependencies
# ─────────────────────────────────────────────────────────
# Install: pip install -r requirements.txt
# Update this file after any dependency change (RULES.md #59)
# ─────────────────────────────────────────────────────────
# ── Core Framework ────────────────────────────────────────
fastapi==0.115.9
uvicorn[standard]==0.32.1
python-multipart==0.0.9
pydantic[email]==2.10.6
email-validator==2.1.1
pydantic-settings==2.7.1
# ── Database ──────────────────────────────────────────────
sqlalchemy[asyncio]==2.0.30
asyncpg==0.29.0
aiosqlite==0.20.0
alembic==1.13.1
greenlet==3.0.3
# ── Redis ─────────────────────────────────────────────────
redis[hiredis]==5.0.4
# ── Auth ──────────────────────────────────────────────────
python-jose[cryptography]==3.3.0
bcrypt==4.1.3
pyotp==2.9.0 # TOTP for SuperAdmin 2FA
qrcode[pil]==7.4.2 # QR code for TOTP setup
# ── OpenAI ────────────────────────────────────────────────
openai==1.30.1
tiktoken==0.7.0
tenacity>=8.2.3 # LLM retry with exponential backoff (Phase 2A)
# ── Vector Database ───────────────────────────────────────
chromadb==0.5.0
numpy==1.26.4 # chromadb 0.5.x incompatible with NumPy 2.x
rank-bm25==0.2.2 # Lightweight pure-Python BM25 for hybrid retrieval
# ── Free Local ML Models ──────────────────────────────────
sentence-transformers==3.0.1 # MiniLM intent + book confidence
torch==2.3.0 # Required by sentence-transformers
transformers==4.41.1 # BART summarizer + NLI model
accelerate==0.30.0 # Faster model inference
# ── Document Parsing ──────────────────────────────────────
pypdf2==3.0.1 # PDF text extraction
ebooklib==0.18 # EPUB parsing
python-docx==1.1.0 # DOCX parsing
python-magic==0.4.27 # MIME type detection by magic bytes
# ── Celery (Background Tasks) ─────────────────────────────
celery[redis]==5.4.0
flower==2.0.1 # Celery monitoring UI
# ── Analytics / Geo ───────────────────────────────────────
maxminddb==2.6.0 # MaxMind GeoLite2 reader
user-agents==2.2.0 # Browser/device detection
# ── HTTP Client (for URL validation) ──────────────────────
httpx==0.27.0
# ── Logging ───────────────────────────────────────────────
structlog==24.2.0
# ── Observability (R-159) ─────────────────────────────────
prometheus_client==0.20.0
sentry-sdk[fastapi]==2.5.1
# ── Testing ───────────────────────────────────────────────
pytest==8.2.1
pytest-asyncio==0.23.7
pytest-cov==5.0.0
httpx==0.27.0 # Test client for FastAPI
behave==1.2.6 # BDD test runner
factory-boy==3.3.0 # Test data factories
# ── Dev Tools ─────────────────────────────────────────────
python-dotenv==1.0.1
mypy==1.10.0
ruff==0.4.5 # Linter + formatter
# ── Billing ────────────────────────────────────────────────
stripe>=10.0.0 # Stripe SDK (billing, Connect, webhooks)
# ── Testing extras ────────────────────────────────────────
fakeredis[aioredis]>=2.23.0 # In-memory Redis for tests (no real Redis needed)
# ── Enterprise / SSO (optional β€” install on Enterprise tier) ──
dnspython>=2.6.0 # Custom domain TXT verification
python3-saml>=1.16.0 # SAML 2.0 SSO