47 lines
2.3 KiB
Plaintext
47 lines
2.3 KiB
Plaintext
# ── Web framework ─────────────────────────────────────────────────────────────
|
|
fastapi>=0.110.0
|
|
uvicorn[standard]>=0.27.0
|
|
python-multipart>=0.0.9
|
|
|
|
# ── Config & utilities ────────────────────────────────────────────────────────
|
|
pydantic>=2.0.0
|
|
pydantic-settings>=2.0.0
|
|
python-dotenv>=1.0.0
|
|
loguru>=0.7.0
|
|
httpx>=0.25.0
|
|
tiktoken>=0.5.0
|
|
tenacity>=8.2.0
|
|
|
|
# ── Auth ──────────────────────────────────────────────────────────────────────
|
|
python-jose[cryptography]>=3.3.0
|
|
# passlib is incompatible with bcrypt>=4.0 (removed __about__, strict 72-byte limit).
|
|
# Pin bcrypt to 3.x until passlib ships a fix.
|
|
passlib[bcrypt]>=1.7.4
|
|
bcrypt>=3.2.0,<4.0.0
|
|
|
|
# ── Async task queue ──────────────────────────────────────────────────────────
|
|
celery>=5.3.0
|
|
redis>=4.5.0
|
|
|
|
# ── Storage & databases ───────────────────────────────────────────────────────
|
|
pymilvus>=2.4.0
|
|
minio>=7.1.0
|
|
psycopg2-binary>=2.9.0
|
|
|
|
# ── Document parsing ─────────────────────────────────────────────────────────
|
|
pymupdf>=1.24.0
|
|
python-docx>=1.1.0
|
|
alibabacloud-docmind-api20220711>=1.0.6
|
|
alibabacloud-tea-openapi>=0.3.11
|
|
alibabacloud-tea-util>=0.3.13
|
|
|
|
# ── RAG / LangChain ───────────────────────────────────────────────────────────
|
|
langchain>=0.1.0
|
|
langchain-milvus>=0.1.0
|
|
numpy>=1.24.0
|
|
|
|
# ── Testing ───────────────────────────────────────────────────────────────────
|
|
pytest>=7.4.0
|
|
pytest-asyncio>=0.21.0
|
|
fakeredis>=2.0.0
|