Skip to content

Naresh-Cod/RAG_Model_PDF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“„ Suraj RAG Project (Gemini + Streamlit)

A simple Retrieval-Augmented Generation (RAG) project using Google Gemini LLM + Streamlit UI.
This app lets you upload PDFs, create embeddings, and ask questions to get intelligent answers.


✨ Features

  • πŸ“‚ Upload PDF files
  • πŸ“ Extract and process text
  • 🧠 Build vector embeddings with FAISS
  • πŸ” Ask questions and get answers from Gemini LLM
  • 🌐 Easy-to-use Streamlit interface

πŸš€ Installation & Run

1️⃣ Clone Repository

git clone https://github.com/your-username/RAG_Model_PDF.git
cd RAG_Model_PDF

2️⃣ Setup Environment
python3 -m venv .venv
source .venv/bin/activate   # Linux/Mac
.venv\Scripts\activate      # Windows

3️⃣ Install Requirements
pip install -r requirements.txt

4️⃣ Configure API Key

Create a .env file in project root:

GOOGLE_API_KEY=your_api_key_here

5️⃣ Run the App
streamlit run app.py


Open πŸ‘‰ http://localhost:8501

πŸ“‚ Project Structure
RAG_Model_PDF/
│── app.py                 # Main Streamlit app
│── requirements.txt        # Dependencies
│── README.md               # Documentation
│── utils/
β”‚   β”œβ”€β”€ index_builder.py    # FAISS index creation
β”‚   β”œβ”€β”€ rag_qa_engine.py    # RAG QA logic
│── .env                    # (Your API key here)
│── .venv/                  # Virtual environment

πŸ› οΈ Requirements

Python 3.11+

Streamlit

LangChain

FAISS

Sentence Transformers

Google Generative AI

πŸ“Œ Example Usage

Upload sample.pdf

Ask: "What is this document about?"

Get instant answers powered by RAG + Gemini πŸš€# RAG_Model_PDF

About

πŸ“„ A Streamlit-based RAG (Retrieval-Augmented Generation) app that extracts text from PDFs, builds vector embeddings (FAISS), and enables question answering with Google Gemini.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages