# GRASS GIS RAG Pipeline - Production Requirements
# Minimal dependencies for production deployment
# Package size optimized for <1GB target

# Core dependencies for RAG functionality
torch>=2.0.0,<3.0.0
transformers>=4.30.0,<5.0.0
sentence-transformers>=2.2.0,<3.0.0
numpy>=1.24.0,<2.0.0

# Vector database and storage
lancedb>=0.3.0,<1.0.0
pyarrow>=12.0.0,<15.0.0

# Logging and utilities
loguru>=0.7.0,<1.0.0
click>=8.1.0,<9.0.0

# Data processing
pandas>=2.0.0,<3.0.0
tqdm>=4.65.0,<5.0.0

# HTTP requests for model downloads
requests>=2.31.0,<3.0.0

# System utilities
psutil>=5.9.0,<6.0.0

# Optional UI dependencies (install with: pip install grass-rag-pipeline[ui])
streamlit>=1.25.0,<2.0.0; extra == "ui"
plotly>=5.15.0,<6.0.0; extra == "ui"

# Development dependencies (install with: pip install grass-rag-pipeline[dev])
pytest>=7.4.0,<8.0.0; extra == "dev"
pytest-asyncio>=0.21.0,<1.0.0; extra == "dev"
pytest-cov>=4.1.0,<5.0.0; extra == "dev"
black>=23.0.0,<24.0.0; extra == "dev"
isort>=5.12.0,<6.0.0; extra == "dev"
flake8>=6.0.0,<7.0.0; extra == "dev"

# Monitoring dependencies (install with: pip install grass-rag-pipeline[monitoring])
prometheus-client>=0.17.0,<1.0.0; extra == "monitoring"

# Rich output formatting (install with: pip install grass-rag-pipeline[rich])
rich>=13.0.0,<14.0.0; extra == "rich"