A functional PoC chatbot inspired from Google's DialogFlow
DialogFlow is a framework by google that allow developers to create their own goal oriented chatbot using Machine Learning and NLP.
* The pre-trained model is hypertuned to get some specific results, train your own model to get better results...
It primarily functions in 4 different phase:
(1) It classifies the Intent using an LSTM Intent Classifier.
(2) It parses all the Entities from the given text input.
(3) The Entities are then passed to an Action(a function) associated with the Intent.
(4) A Sequence-to-Sequence model is used to generate the final output response.
Dataflow for the weather intent :
Our model uses a simple 3 Layered Intent Classifier.
The First layer is an LSTM followes by 2 Dense layers.
The Entity Parser uses Spacy library to do NLP tasks
Functions to parse weather, do a search, etc....
The Dialog Generation is done by a Sequence-to-Sequence Model.
The python files are stored in the './src/' folder. A standalone jupyter notebook is saved inside the folder notebook. The Folder imgs contain screenshots of the program.
Run the file 'main.py' inside the folder './src' to run the program.
* Estimated time for the application to load : 36 seconds
Try typing Hi or hello.....
First, it shows the intent of the text, then the entities, the generated dialog and at last, the reply from the bot...Try asking about the weather.....