Skip to content

An AI-powered chatbot that lets you upload and interact with multiple PDF files using natural language — powered by LangChain, FAISS, and Google Gemini.

License

Notifications You must be signed in to change notification settings

AritraOfficial/Chat_With_Multiple_PDFs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📄 Chat with Multiple PDFs using LangChain & Google Gemini

Live Demo

Build an AI-powered chatbot that can intelligently answer your questions from multiple PDF documents using Google Gemini, FAISS vector storage, and LangChain — all wrapped in a beautiful Streamlit interface.

image

🚀 Features

  • 🔍 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

📋 Project Flow

Below is the structured flow of the project:
diagram-export-04-05-2025-15_29_11

📁 Project Structure

├── 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

🛠️ Installation

1. Clone the Repository

git clone https://github.com/AritraOfficial/Chat_With_Multiple_PDFs.git
cd Chat_With_Multiple_PDFs

2. Set Up Environment

Make sure you’re using Python 3.9+. {MAKE SURE THE PY Version I Used 3.13.1}

pip install -r requirements.txt

3. Configure API Key

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

▶️ Run the App

streamlit run app.py

The app will open in your browser. Upload PDFs and ask questions!


📸 Computer's View

Upload PDFs Ask Questions Get Answers
image ask answer

📸 Mobile's View

Upload PDFs Ask Questions Get Answers
pdfs ask answer

🔧 Key Technologies

  • Google Generative AI (Gemini Pro or Flash)
  • LangChain
  • FAISS
  • Streamlit
  • Python

🧠 Use Cases

  • 📚 Academic research assistant
  • 🏥 Clinical document analysis
  • ⚖️ Legal contract understanding
  • 📊 Business document summarization

💡 Future Improvements

  • Chat history & memory (Already Have But not in this version)
  • Support for other document types (Word, CSV, etc.)
  • Upload via cloud storage

📜 License

This project is licensed under the MIT License. Feel free to use, modify, and share.


🙌 Acknowledgments

Special thanks to the creators of Google, Streamlit, and Github for the powerful tools that made this project possible.


📧 Contact

For queries or collaborations, feel free to connect:

LinkedIn Twitter Instagram LeetCode GitHub Discord Email



Would you like me to include badges (e.g., stars, forks, license) or a deployment link (Streamlit Cloud)?

About

An AI-powered chatbot that lets you upload and interact with multiple PDF files using natural language — powered by LangChain, FAISS, and Google Gemini.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy