# === Core LLM === openai>=1.40.0 pydantic>=2.7.0 tenacity>=8.2.3 # retry logic for API calls # === Document processing === pdfplumber>=0.11.0 # text-based PDFs pymupdf>=1.24.0 # fast PDF rendering + fallback text Pillow>=10.3.0 # image handling for GPT-4o vision pdf2image>=1.17.0 # convert PDF pages to images for vision # === Backend === fastapi>=0.111.0 uvicorn[standard]>=0.30.0 python-multipart>=0.0.9 # file uploads slowapi>=0.1.9 # rate limiting # === Frontend === streamlit>=1.35.0 requests>=2.32.0 # === Data + eval === pandas>=2.2.0 numpy>=1.26.0 rapidfuzz>=3.9.0 # fuzzy matching for eval scikit-learn>=1.5.0 # precision/recall/f1 datasets>=2.19.0 # HuggingFace datasets (SROIE/CORD) # === SEC filings (v2) === sec-edgar-downloader>=5.0.0 beautifulsoup4>=4.12.0 lxml>=5.2.0 # === Observability === python-dotenv>=1.0.1 loguru>=0.7.2 # === Dev / test === pytest>=8.2.0 pytest-cov>=5.0.0 pytest-asyncio>=0.23.0 httpx>=0.27.0 # async test client for FastAPI ruff>=0.4.0 black>=24.4.0