An AI-powered PDF and Notes chatbot built using Retrieval-Augmented Generation (RAG). Users can upload PDF documents and ask questions based on the uploaded content.
The system extracts text, creates embeddings, stores them in a FAISS vector database, retrieves relevant chunks, and generates answers using an LLM.
- Upload PDF documents
- Extract text from PDFs
- Text chunking
- Embedding generation
- FAISS vector database
- Semantic search
- AI-powered question answering
- Chat history
- Mind map generation
- FastAPI backend
- Modern UI using HTML/CSS
- Python
- FastAPI
- Sentence Transformers
- FAISS
- Groq / Gemini API
- HTML
- CSS
- Jinja2 Templates
project/
│
├── main.py
├── utils.py
├── requirements.txt
├── render.yaml
│
├── templates/
│ └── index.html
│
├── data/
│ └── uploads/
│
└── README.mdgit clone YOUR_GITHUB_REPO_URL
cd PROJECT_NAMEpython -m venv venv
venv\Scripts\activatepython3 -m venv venv
source venv/bin/activatepip install -r requirements.txtuvicorn main:app --reloadOpen browser:
http://127.0.0.1:8000Create API key:
Paste the key into the sidebar input inside the application.
- User uploads PDF
- PDF text is extracted
- Text is chunked
- Embeddings are created
- Embeddings stored in FAISS
- User asks question
- Relevant chunks retrieved
- LLM generates answer
- Push project to GitHub
- Login to Render
- Create Web Service
- Connect GitHub repository
- Add build command:
pip install -r requirements.txt- Add start command:
uvicorn main:app --host 0.0.0.0 --port $PORT- Deploy
- Multiple PDF support
- Voice assistant
- Authentication system
- Database integration
- Streaming responses
- Better RAG pipeline
- Citation support
- PDF summarization
Developed by Vineela Srighakolapu