Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/chiragjoshi12/chat-with-multiple-pdf
A Langchain app that allows you to chat with multiple PDFs
https://github.com/chiragjoshi12/chat-with-multiple-pdf
chiragjoshi document-chatbot langchain openai openai-api pdf rag streamlit
Last synced: 9 days ago
JSON representation
A Langchain app that allows you to chat with multiple PDFs
- Host: GitHub
- URL: https://github.com/chiragjoshi12/chat-with-multiple-pdf
- Owner: chiragjoshi12
- Created: 2024-04-14T06:45:30.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-04-14T08:27:42.000Z (7 months ago)
- Last Synced: 2024-07-14T16:02:00.795Z (4 months ago)
- Topics: chiragjoshi, document-chatbot, langchain, openai, openai-api, pdf, rag, streamlit
- Language: Python
- Homepage:
- Size: 187 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# MultiPDF Chat App
## Introduction
------------
The MultiPDF Chat App is a Python application that allows you to chat with multiple PDF documents. You can ask questions about the PDFs using natural language, and the application will provide relevant responses based on the content of the documents. This app utilizes a language model to generate accurate answers to your queries. Please note that the app will only respond to questions related to the loaded PDFs.## How It Works
------------![MultiPDF Chat App Diagram](/img/PDF-LangChain.jpg)
The application follows these steps to provide responses to your questions:
1. PDF Loading: The app reads multiple PDF documents and extracts their text content.
2. Text Chunking: The extracted text is divided into smaller chunks that can be processed effectively.
3. Language Model: The application utilizes a language model to generate vector representations (embeddings) of the text chunks.
4. Similarity Matching: When you ask a question, the app compares it with the text chunks and identifies the most semantically similar ones.
5. Response Generation: The selected chunks are passed to the language model, which generates a response based on the relevant content of the PDFs.
## Dependencies and Installation
----------------------------
To install the MultiPDF Chat App, please follow these steps:1. Clone the repository to your local machine.
2. Install the required dependencies by running the following command:
```
pip install -r requirements.txt
```3. Obtain an API key from OpenAI and add it to the `.env` file in the project directory.
```commandline
OPENAI_API_KEY=your_secrit_api_key
```## Usage
-----
To use the MultiPDF Chat App, follow these steps:1. Ensure that you have installed the required dependencies and added the OpenAI API key to the `.env` file.
2. Run the `main.py` file using the Streamlit CLI. Execute the following command:
```
streamlit run app.py
```3. The application will launch in your default web browser, displaying the user interface.
4. Load multiple PDF documents into the app by following the provided instructions.
5. Ask questions in natural language about the loaded PDFs using the chat interface.