YAML Metadata Warning:empty or missing yaml metadata in repo card
Check out the documentation for more information.
CredResolve RAG
Open-source, lender-isolated RAG service for CredResolve voice bot fallback.
What This Includes
- FastAPI RAG API with REST and WebSocket endpoints.
- Multi-tenant document upload and retrieval by
lender_id. - Background ingestion worker entrypoint.
- Qdrant vector store integration with strict lender payload filters.
- PostgreSQL metadata schema via SQLAlchemy models.
- MinIO object storage integration with local filesystem fallback.
- Docling-first document parsing with pragmatic fallbacks.
- Self-hosted embedding and reranker service containers for BGE-M3 models.
- CredResolve-themed admin dashboard.
- Docker Compose stack for local/prod-style deployment.
Quick Start
cp .env.example .env
docker compose up --build
The default Compose file uses lightweight open-source fallback embedding/reranking services so it runs reliably on a MacBook without downloading large PyTorch model images. The default parser supports TXT, Markdown, CSV, XLSX, DOCX, and PDF through lightweight libraries.
For production Docling parsing and BGE-M3 model containers, run:
docker compose -f docker-compose.yml -f docker-compose.docling.yml -f docker-compose.bge.yml up --build
Open:
- Admin UI:
http://localhost:8000 - API docs:
http://localhost:8000/docs - Qdrant:
http://localhost:6333/dashboard - MinIO console:
http://localhost:9001
Naadh Integration
Use REST for normal FAQ fallback:
curl -X POST "http://localhost:8000/v1/rag/retrieve" \
-H "Authorization: Bearer dev-token" \
-H "Content-Type: application/json" \
-d '{
"lender_id": "hdfc_bank",
"session_id": "call_123",
"query": "What documents are required for settlement?",
"top_k": 8,
"return_sources": true
}'
WebSocket is available at:
ws://localhost:8000/v1/rag/ws
Send JSON:
{
"lender_id": "hdfc_bank",
"session_id": "call_123",
"query": "What documents are required for settlement?",
"top_k": 8
}
Production Notes
- Keep
RAG_REQUIRE_AUTH=trueoutside local development. - Set
API_TOKENSto comma-separated service tokens for Naadh/admin systems. - Use
DATABASE_URL=postgresql+psycopg://...in production. - Run nightly backups for PostgreSQL, MinIO, and Qdrant snapshots.
- Put API and admin UI behind TLS using the included nginx template or your platform gateway.
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support