ppt-tool/backend/pyproject.toml
Vadym Samoilenko 8715fa8bd2 Replace docling+layoutparser+torch with PyMuPDF (~3.5GB → ~80MB)
- docling removed: PDF now parsed by PyMuPDF (fitz), PPTX by python-pptx
- layoutparser removed: already optional with graceful fallback (returns [])
- torch/pytorch index removed: no longer needed by any dependency
- pymupdf added: ~20MB wheel, no ML deps, faster than docling for text extraction
- All existing DOCX parsing kept (python-docx, already working)
- extract_text_from_image_via_vision() unchanged (Gemini API)

Result: api/worker Docker image ~3-4GB lighter, no NVIDIA libs on CPU server

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-19 20:06:46 +00:00

47 lines
1.1 KiB
TOML

[project]
name = "oliver-deckforge-backend"
version = "0.1.0"
description = "Add your description here"
requires-python = ">=3.11,<3.12"
dependencies = [
"aiohttp>=3.12.15",
"aiomysql>=0.2.0",
"aiosqlite>=0.21.0",
"anthropic>=0.60.0",
"asyncpg>=0.30.0",
"chromadb>=1.0.15",
"dirtyjson>=1.0.8",
"fastapi[standard]>=0.116.1",
"fastmcp>=2.11.0",
"google-genai>=1.28.0",
"nltk>=3.9.1",
"openai>=1.98.0",
"pathvalidate>=3.3.1",
"pdfplumber>=0.11.7",
"pytest>=8.4.1",
"python-docx>=1.1",
"python-pptx>=1.0.2",
"pymupdf>=1.24",
"opencv-python-headless>=4.8",
"redis>=5.0,<6",
"sqlmodel>=0.0.24",
"alembic>=1.15",
"msal>=1.31",
"python-jose[cryptography]>=3.3",
"openpyxl>=3.1",
"trafilatura>=2.0",
"arq>=0.26",
"pytest-asyncio>=0.25",
"httpx>=0.28",
"slowapi>=0.1.9",
]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
pythonpath = ["."]
[tool.setuptools.packages.find]
where = ["."]
include = ["api*", "enums*", "models*", "services*", "constants*", "utils*", "scripts*", "workers*", "migrations*"]