PDF-Assistant-RAG
A production-style document assistant that lets a user upload PDFs such as financial reports or legal contracts and chat with a retrieval-augmented model that cites the exact source page for every answer.
The system combines vector search with BM25 keyword search using reciprocal rank fusion, then reranks the merged candidates with a cross-encoder before assembling a prompt and calling a hosted inference API, streaming the answer back token by token with exact page-numbered citations highlighted in the response. Uploaded documents are queued as a Celery task backed by Redis, chunked, embedded locally with caching, indexed with BM25 and stored as vectors in ChromaDB.
The frontend is a Next.js application with JWT-based authentication that keeps each user's uploaded documents and chat history isolated from other users. The project is built with FastAPI on the backend and is developed as an open community contribution project, with an architecture document describing its request flow and API in more detail.