# Knowledge RAG System - Python Dependencies
# ==========================================
# Requires Python 3.11 or 3.12 (NOT 3.13+ due to onnxruntime)

# Vector Database (uses new PersistentClient API)
chromadb>=1.4.0

# PDF Parser (text extraction)
pymupdf>=1.23.0

# Embeddings & Reranker (ONNX Runtime, in-process, no external server)
# [reranking] extra installs cross-encoder dependencies (required for reranker)
fastembed[reranking]>=0.4.0

# MCP Server Framework (FastMCP)
mcp>=1.0.0

# BM25 for Hybrid Search (keyword + semantic)
rank-bm25>=0.2.2

# URL content fetching (add_from_url tool)
requests>=2.31.0

# HTML parsing (add_from_url tool)
beautifulsoup4>=4.12.0

# Office formats (DOCX, XLSX, PPTX)
python-docx>=1.0.0
openpyxl>=3.1.0
python-pptx>=1.0.0

# YAML configuration
pyyaml>=6.0

# File watcher (auto-reindex on document changes)
watchdog>=4.0.0

# ==========================================
# IMPORTANT NOTES:
# ==========================================
# 1. FastEmbed auto-downloads models on first run
#    (no manual setup required, unlike Ollama)
#
# 2. Default embedding model: BAAI/bge-small-en-v1.5 (384-dim)
#    Cached in ~/.cache/fastembed/
#
# 3. Python 3.13+ is NOT supported because chromadb
#    depends on onnxruntime which has no 3.13 wheels
# ==========================================
