Skip to content
This repository has been archived by the owner on May 9, 2021. It is now read-only.

rounakdatta/digital-assistant

Repository files navigation

Usage

Add data to MongoDB

make data

Get the application running

make run

Head over to localhost:5000

Demo

System Design

/dataprovider/dataprovider.py - After core query is parsed, control passes to get_short_answer() where the processing logic lies. There, MongoDB lookup occurs. The priority of search is MongoDB -> wolfram -> wikipedia.

/nlp/rasa.py - Parsing logic - What to do with intents + all the hard-coded replies are defined here. Based on intent, if falls into hard-coded case, randomly one of the replies in the reply array is returned.

initDb.py - General documentation of how to push/pull to/from MongoDB - also includes the data which has already been inserted to MongoDB. This is the file needed to insert data to MongoDB (manually).

/data/training_data.json - Training dataset containing all the intents as well as entities. Use rasa-nlu-trainer instead of manual filling.

Development Status

  • The bot learns to speak
  • Database integration
  • Flask API
  • Front-End to interact
  • The bot remembers
  • The bot gives price, COD details, discounts
  • The bot can bargain (randomly bring down product price upto given limit)
  • The bot can accept an order and redirect you to the payment page
  • The bot is mature
  • The bot doesn't faint at all

Tip: Make use of Studio 3T on any platform to view MongoDB using an UI.