Git Product home page Git Product logo

au-chatbot's Introduction

AUThink IA

Welcome to the AUThink IA Chatbot Project! This repository contains the source code and documentation for our chatbot designed to provide access to university-related information for students and faculty.

Project Overview

The chatbot project aims to address the challenges faced by students and faculty in accessing university information such as course details, exam schedules, fee structures, and campus events. With the help of technologies such as natural language processing (NLP) and machine learning algorithms, the chatbot offers a user-friendly interface for quick and accurate information retrieval.

Key Features

  • FAQ Module: Provides answers to frequently asked questions.
  • Contextual Understanding: Maintains conversation context for personalized responses.
  • Data Security: Implements privacy measures for user data protection.

Project Screenshot

  • Home Theme

AUThink_IA_2

  • Chat Answering

AUThink_IA_3

Installation

  1. Install Node.js and npm (if not already installed):
    # On Ubuntu/Debian
    sudo apt update
    sudo apt install nodejs npm
    
    # On macOS (using Homebrew)
    brew install node
  2. Clone the repository:
    git clone https://github.com/Amirth24/buffalobot.git
  3. navigate inside the repository:
    cd buffalobot
  4. Install dependencies:
    pip install -r requirements.txt
  5. Populate the VectorDB with Data:
    python populate_db.py
  6. Run the ChatBot API service:
    uvicorn services:app --reload
  7. Navigate to frontend folder:
    cd frontend
  8. Install all node Dependencies:
    npm install
  9. Run the Frontend in the localhost:
    ng serve

Usage

  1. Access the chatbot interface via web browser or messaging platform.
  2. Enter your queries and interact with the chatbot to retrieve information.
  3. Explore different features and functionalities available.

Contributing

We welcome contributions to improve the chatbot project. Please fork the repository and submit pull requests with your enhancements or bug fixes.

License

This project is licensed under the MIT License.

Contact

For inquiries or support, contact us at

  1. Amirthanathan R.
  2. Aravind S

au-chatbot's People

Contributors

amirth24 avatar aravind-sl avatar

Watchers

 avatar

au-chatbot's Issues

Create a Basic UI with Angular

Create an angular application for UI. The UI should be simple and intuitive to the user. It should

  • display a welcome message.
  • Ask the user for a prompt.
  • It should render the response stream character by character.

Do suggest improvements.

Create ChatAgent

Create a class ChatAgent. It should be created in the API layer. Suggest an inference strategy that enables concurrent support.

Create scripts for populating ChromaDB

Create a script for loading the processed data in the vector database. The script should,

  1. create a persistent ChromaDB client.
  2. traverse and load all the processed text files.
  3. populate the text either by using Google generative AI embeddings or ollama embeddings

Write unit test cases to automate the testing.

Clean the collected Informations

  1. Create a folder documents/processed.
  2. Save the cleaned and processed files in txt format with appropriate name in snake case
  3. If you did use scripts, please make them as scripts and save those files 'scripts' folder.

For scripts, decompose the process into funcitons and use if __name__ == "__main__" for executable part of code. Write proper documentations for the functions you write.

Build a Basic API for inference.

Build an API endpoint for inference. The API needn't check for auth. For now, it should serve a single route in which the user posts the prompt and gets a response as an HTTP stream of text.

Integration

Integrate the ChatAgent and angular frontend with the FAST API endpoint.

Docker Deployment

Write Dockerfiles and a docker-compose.yml file for deployment purpose

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.