Skip to content

A RAG application for East West University (Only Science Faculty)

License

Notifications You must be signed in to change notification settings

ihkcreations/EWU_RAG_Chatbot

Repository files navigation

EWU_RAG_Chatbot post

A RAG (Retrival-Augmented Generation) application on East West University(Only Science Faculty).

Contributors

Name Student ID
Md. Iftekhar Hossain Khan 2020-3-60-073
Md. Iftakher Alam 2020-2-60-003
Nourin Nahar Hridy 2021-1-60-102
Hasnain Ahmed 2020-1-60-092

Codeocean's capsule link of the app

EWU RAG Chatbot (Student ID access needed)

Objective

This project implements the functionalities of using LLMs (Large Language Models) of GROQ API Interface to answer questions based on its own dataset.

Process Flowchart of EWU RAG Chatbot

post


Tools and Libraries used

  • Ollama : For creating embeddings using the open source embedding model 'nomic-embed-text'
  • RecursiveCharacterTextSplitter : For chunking the document into smaller segment
  • ChromaDB : App's vector database for storing embeddings
  • GROQ API : Faster inference with the LLMs hosted inside GROQ's interface.
  • LangChain : Where most of the libraries are used from.
  • Streamlit : App's framework or UI (User Interface)

Requirements to run the app

  • Clone the repository by typing in the terminal git clone https://github.com/ihkcreations/EWU_RAG_Chatbot.git
  • Install the necessary libraries first in a virtual python environment by typing pip install -r requirements.txt
  • Then download Ollama from here
  • After downloading Ollama, start Ollama server by typing: ollama serve in the terminal
  • Pull the Embedding Model by typing ollama pull nomic-embed-text
  • Edit the .env file by placing your own GROQ API Key there. Get your GROQ API Key from here. Make sure to create a GROQ account first.
  • After downloading the model, start the app.py by typing in the terminal streamlit run app.py

Enjoy asking questions related to our East West University.

Snapshot of the application

post