- 🔍 Multi-PDF Support – Upload and query across multiple PDF documents
- 💡 Google Gemini Integration – Accurate, intelligent answers from a powerful LLM
- ⚡ FAISS Vector Store – Fast document similarity search
- 🧠 LangChain QA Chain – Efficient retrieval-augmented generation
- 🌐 Streamlit Interface – Simple, user-friendly front-end to interact with the chatbot
Below is the structured flow of the project:
├── streamlit_app.py # Streamlit app entry point
├── requirements.txt # Dependencies
├── .streamlit/config.toml # Streamlit theme config (optional) (In your local drive)
├── faiss_index/ # Local vector index (In your local drive)
├── docenv/ # Virtual Env (In your local drive)
├── .env # .env {For loading all keys and nessessary} (In your local drive)
└── README.md
git clone https://github.com/AritraOfficial/Chat_With_Multiple_PDFs.git
cd Chat_With_Multiple_PDFs
Make sure you’re using Python 3.9+. {MAKE SURE THE PY Version I Used 3.13.1}
pip install -r requirements.txt
Set your Google Gemini API key:
export GOOGLE_API_KEY="your_api_key_here"
Or create a .env
file:
GOOGLE_API_KEY=your_api_key_here
streamlit run app.py
The app will open in your browser. Upload PDFs and ask questions!
Upload PDFs | Ask Questions | Get Answers |
---|---|---|
![]() |
![]() |
![]() |
Upload PDFs | Ask Questions | Get Answers |
---|---|---|
![]() |
![]() |
![]() |
- Google Generative AI (Gemini Pro or Flash)
- LangChain
- FAISS
- Streamlit
- Python
- 📚 Academic research assistant
- 🏥 Clinical document analysis
- ⚖️ Legal contract understanding
- 📊 Business document summarization
- Chat history & memory (Already Have But not in this version)
- Support for other document types (Word, CSV, etc.)
- Upload via cloud storage
This project is licensed under the MIT License. Feel free to use, modify, and share.
Special thanks to the creators of Google, Streamlit, and Github for the powerful tools that made this project possible.
For queries or collaborations, feel free to connect:
Would you like me to include badges (e.g., stars, forks, license) or a deployment link (Streamlit Cloud)?