This project is a chatbot implemented in Python using technique such as RAG (Retrieval Augmented Generation) & various libraries such as LangChain, LlamaCPP, Faiss, Transformers, PyPDF2, and Streamlit. The chatbot provides two main features:
- Upload New PDFs: Users can upload PDF documents, which the chatbot then processes and stores for later use.
- Chat with Bot: Users can engage in conversation with the chatbot, utilizing either the uploaded PDFs or a combination of uploaded and pre-existing data.
Additionally, the chatbot employs LangChain to prompt for the next dialogue in the conversation, ensuring coherence and context continuity.
- PDF Upload: Enables users to upload PDF documents.
- Chat Interface: Provides a user-friendly chat interface powered by Streamlit.
- Integration with Transformers: Utilizes Transformer-based models for natural language processing tasks.
- History Saving: Utilizes LangChain to save conversation history and prompt for the next dialogue.
- Python 3.x
- RAG
- LangChain
- LlamaCPP
- Faiss
- Transformers
- PyPDF2
- Streamlit
-
Clone the repository:
git clone https://github.com/mohdtalal3/ManaGenie.git
-
Install the required dependencies:
pip install -r requirements.txt
- Navigate to the project directory:
cd Files - Run the Streamlit app::
streamlit run app.py
- See or refer to the attached notebook
colab_run.ipynbto run on colab.
app.py: Contains the main streamlit code.Rag_note.ipynb: Contains the code of the main strucutre of chat bot .colab_run.ipynb: Contains the code to run using colab .Files: Contains the files to run locally or to run using colab .htmlTemplate.py: Contains the code for the streamlt frontend .
