feat(agentic-rag): add multi-provider LLM, auth, and Docker support
## Added
- Multi-provider LLM support with factory pattern (8 providers):
* OpenAI, Z.AI, OpenCode Zen, OpenRouter, Anthropic, Google, Mistral, Azure
- Authentication system: JWT + API Key dual-mode
- Provider management API (/api/v1/providers)
- Docker containerization (Dockerfile + docker-compose.yml)
- Updated documentation in main.py
## Modified
- Documents API: added authentication
- Query API: support for provider/model selection
- RAG service: dynamic LLM provider selection
- Config: multi-provider settings
## Infrastructure
- Qdrant vector store integration
- Redis support (optional)
- Health check endpoints
🚀 Ready for production deployment
This commit is contained in:
52
requirements.txt
Normal file
52
requirements.txt
Normal file
@@ -0,0 +1,52 @@
|
||||
# AgenticRAG Requirements
|
||||
# Core dependencies
|
||||
|
||||
# FastAPI and web framework
|
||||
fastapi>=0.104.0
|
||||
uvicorn[standard]>=0.24.0
|
||||
python-multipart>=0.0.6
|
||||
python-jose[cryptography]>=3.3.0
|
||||
passlib[bcrypt]>=1.7.4
|
||||
|
||||
# Datapizza AI framework
|
||||
datapizza-ai>=0.1.0
|
||||
datapizza-ai-core>=0.1.0
|
||||
|
||||
# LLM Clients
|
||||
datapizza-ai-clients-openai>=0.0.12
|
||||
# Additional providers will be installed via pip in Dockerfile
|
||||
|
||||
# Embeddings
|
||||
datapizza-ai-embedders-openai>=0.0.6
|
||||
|
||||
# Vector Store
|
||||
datapizza-ai-vectorstores-qdrant>=0.0.9
|
||||
qdrant-client>=1.7.0
|
||||
|
||||
# Document Processing
|
||||
datapizza-ai-modules-parsers-docling>=0.0.1
|
||||
|
||||
# Tools
|
||||
datapizza-ai-tools-duckduckgo>=0.0.1
|
||||
|
||||
# Configuration and utilities
|
||||
pydantic>=2.5.0
|
||||
pydantic-settings>=2.1.0
|
||||
python-dotenv>=1.0.0
|
||||
httpx>=0.25.0
|
||||
aiofiles>=23.2.0
|
||||
|
||||
# Observability
|
||||
opentelemetry-api>=1.21.0
|
||||
opentelemetry-sdk>=1.21.0
|
||||
opentelemetry-instrumentation-fastapi>=0.42b0
|
||||
|
||||
# Testing
|
||||
pytest>=7.4.0
|
||||
pytest-asyncio>=0.21.0
|
||||
httpx>=0.25.0
|
||||
|
||||
# Development
|
||||
black>=23.0.0
|
||||
ruff>=0.1.0
|
||||
mypy>=1.7.0
|
||||
Reference in New Issue
Block a user