NEW FEATURES: - Made reranker configurable via ENABLE_RERANKER env var - Previously hardcoded as disabled - Now controllable: set ENABLE_RERANKER=true to enable - Graceful fallback if initialization fails - Added comprehensive config validation on startup - Validates Ollama host, database path, ports - Validates RAG configuration values - Early failure with clear error messages - Prevents silent configuration errors - Added slowapi dependency for rate limiting IMPROVED: - Better error handling for reranker initialization - Clearer logging messages for configuration status - Type-safe environment variable parsing Files: app/core/config.py, app/core/rag_engine.py, requirements.txt
51 lines
1.1 KiB
Text
51 lines
1.1 KiB
Text
# LlamaIndex and RAG
|
|
llama-index>=0.10.0
|
|
llama-index-llms-ollama>=0.1.0
|
|
llama-index-embeddings-ollama>=0.1.0
|
|
|
|
# Vector Database (SQLite-based)
|
|
sqlite-vec>=0.1.0
|
|
numpy>=1.24.0
|
|
|
|
# Tree-sitter for fast structural indexing
|
|
tree-sitter>=0.21.0
|
|
tree-sitter-languages>=1.10.0 # Pre-built binaries for 40+ languages
|
|
networkx>=3.2.1 # For dependency graphs and PageRank
|
|
|
|
# File system watching
|
|
watchdog>=3.0.0
|
|
|
|
# Document Processing
|
|
pymupdf>=1.23.0
|
|
|
|
# Reranking and Hybrid Search
|
|
sentence-transformers>=2.2.0
|
|
rank-bm25>=0.2.2
|
|
|
|
# MCP Server
|
|
mcp>=1.0.0
|
|
fastapi>=0.104.0
|
|
uvicorn>=0.24.0
|
|
pydantic>=2.0.0
|
|
slowapi>=0.1.9 # Rate limiting
|
|
|
|
# Authentication
|
|
passlib[bcrypt]>=1.7.4
|
|
python-jose[cryptography]>=3.3.0
|
|
python-multipart>=0.0.6
|
|
|
|
# Utilities
|
|
python-dotenv>=1.0.0
|
|
requests>=2.31.0
|
|
|
|
# Real-time Learning System
|
|
redis>=5.0.0 # Redis client for pub/sub and caching
|
|
rq>=1.14.0 # Job queue (Python equivalent of Sidekiq)
|
|
|
|
# Testing
|
|
pytest>=7.4.0
|
|
pytest-asyncio>=0.21.0
|
|
pytest-cov>=4.1.0
|
|
pytest-mock>=3.12.0
|
|
httpx>=0.25.0 # For testing FastAPI endpoints
|
|
faker>=20.0.0 # For generating test data
|