RAG PDF Assistant is an AI-powered Retrieval-Augmented Generation (RAG) chatbot that enables intelligent PDF document search and retrieval. It combines:
✅ DeepSeek-R1 (1.5B) – Advanced AI-powered language model for accurate responses.
✅ FAISS – Fast vector search for efficient document retrieval.
✅ Ollama – Lightweight model serving and seamless inference.
✅ LangChain – Modular AI framework for query execution and reasoning.
✅ Streamlit – Intuitive and interactive web-based UI.
🔍 Quickly search through large PDF documents.
📄 Summarize reports, research papers, contracts, and more.
📘 Extract relevant information with AI-driven accuracy.
🤖 Ask natural language questions and get concise answers.
Ensure you have the following installed:
- Python 3.9+
- pip (Python package manager)
- Git (for cloning the repository)
$ git clone https://github.com/mohd-faizy/RAG-DeepSeek.git
$ cd RAG-DeepSeek
$ pip install -r requirements.txt
-
Start Ollama service:
ollama serve
-
In a separate terminal, launch the chat interface:
streamlit run app/main.py
The application will launch in your browser at http://localhost:11434/
.
RAG-DeepSeek/
├── app/
│ ├── __init__.py # Python package initialization
│ ├── main.py # Main Streamlit application file
│ ├── utils.py # Utility functions for PDF processing, embeddings, retrieval
├── assets/ # Static files like images, CSS, etc.
├── requirements.txt # Python dependencies
├── .gitignore # Files ignored by Git
├── README.md # Project documentation
1️⃣ Upload a PDF → The AI extracts and indexes the content.
2️⃣ Ask a question → The system searches for the most relevant passages.
3️⃣ AI answers your query → Based on retrieved document content.
🔹 Uses FAISS for fast, efficient document retrieval.
🔹 DeepSeek-R1 ensures high-quality, context-aware answers.
Technology | Purpose |
---|---|
DeepSeek-R1 (1.5B) | Language model for intelligent responses |
Ollama | Model serving and inference |
FAISS | Vector search for document retrieval |
LangChain | AI-driven reasoning and query handling |
Streamlit | User-friendly web interface |
PDFPlumber | Extracting text from PDFs |
- Fork the repository
- Create a new feature branch (
git checkout -b feature-name
) - Commit your changes (
git commit -m "Added new feature"
) - Push to your fork (
git push origin feature-name
) - Open a pull request
This project is licensed under the MIT License. See the LICENSE file for details.
If you find this repository helpful, show your support by starring it! For questions or feedback, reach out on Twitter(X
).
➤ If you have questions or feedback, feel free to reach out!!!