Skip to content

Latest commit

 

History

History
55 lines (43 loc) · 1.64 KB

README.md

File metadata and controls

55 lines (43 loc) · 1.64 KB

CSE-Advising-Chatbot

A chatbot capable of answering basic frequenly asked CSE advising questions.

Getting Started

  1. Run Python server inside the backend directory
python3 ./backend/server.py
  1. Install dependencies and run Angular frontend inside the frontend
cd frontend
npm install
ng serve ("npm run ng serve" for Win)
  1. Run Elastic Search version 7.12.1. as database
docker run --name elasticsearch -d -p 9200:9200 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.12.1

Pipeline

  1. Read user input
  2. Classify input into one of the supportd categories using NLPC
  3. Extract target entity from the input using spaCy
  4. Search for corresponding desired information in the knowledge base
  5. Format and output the information

Class Label Definitions

  • GREETING
  • GOODBYE
  • PREREQ
  • SIMILAR-COURSES (e.g., What courses cover the similar topics to CSE 3521)
  • RELATED-COURSES (e.g., What are the AI related courses)
    • RELATED-COURSES-AI
    • RELATED-COURSES-DATABASE
    • RELATED-COURSES-PYTHON
  • TOPICS (e.g., What is CSEXXXX about)
  • WHO-TEACH
  • TEACH-WHAT
  • AVAILABLE-SEC
  • NOT-SUPPORTED

Note: Data format must match the definition by NLPC.

Named Entity Definitions

Note: Data format must match that in train_ner_course.py.

Search KB for Answer