This repository contains a Streamlit-based chatbot application that uses LangChain for document processing and question-answering capabilities. The chatbot can handle PDF and URL inputs to provide answers based on the contents of the documents.
To install and run this project locally, follow these steps:
-
Folk and clone the repository:
git clone https://github.com/yourusername/RAG-QnA-Summarizer.git cd my-chatbot -
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate -
Install the required dependencies:
pip install -r requirements.txt
-
Install poppler:
apt-get install -y poppler-utils
To run the Streamlit app, execute the following command:
streamlit run app.py- PDFs: Upload multiple PDF files via the sidebar to be processed by the chatbot.
- URL: Enter a URL in the sidebar to process the content from the webpage.
After processing the documents, you can ask questions in the chat input at the bottom of the page. The chatbot will provide responses based on the processed content.
- Document Processing: Upload PDFs or enter URLs to extract and process content.
- Question Answering: Ask questions about the content of the uploaded documents or URLs.
- Document Summarization: Summarize the content of the processed documents.
This project relies on the following main dependencies:
langchainlangchain_communitylangchain_coherestreamlittempfileos
For a complete list of dependencies, refer to the requirements.txt file.
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch). - Commit your changes (
git commit -m 'Add some feature'). - Push to the branch (
git push origin feature-branch). - Open a pull request.
This project is licensed under the Apache License Version 2.0. See the LICENSE file for details.
For any questions or suggestions, feel free to contact us.