-
Notifications
You must be signed in to change notification settings - Fork 2
Home
Welcome to the tulo-chatbot wiki!
This bot is a generic conversational bot, implemented for use case of a Banking App. (However it is easily trainable for any other use case as well.
the packages are as below -
- nlp_query_parser - this contains implementation of vectorization algorithms. To implement a new vectorization algorithm, add as a class to vectorizers, and reference it in the vector_factory, followed by creating an enum in vector_types.
- nlp_query_parser.model_selection - this contains classification models. Follows the same pattern as vectors above. I've not implemented all the algorithms.
N. B. - I'm still learning how to structure a python project. Please feel free to point out better implementations.
While this is a prelim work, I intend to grow/ mature it and make it production ready. Please feel free to make contributions to it wherever necessary. (Raise a merge request)
Note on using Telegram : It is quite easy to prototype chatbots with Telegram-bot-api. however, the telegram class has been kept separate from the actual bot implementation. So going forward, the same bot can be extended to facebook messenger, whatsapp business api, wechat, slack-bot, skype bot and any other messaging app.
Update: Flask APIs have been added to expose bot conversation over REST services
queries can be added to consumer_questions.csv the dataset has been segregated into following query topic types -
- balance-inquiry
- transaction-history-inquiry
- card-block
- card-unblock
- introduction
- small-talk
- expletive
- escalation
responses can be of 2 types -
- static-query
- dynamic-query - can be used for creating JSON responses (if flask is used), with indication for placeholders. currently dummy values have been used.
Current data is structured in a flat file as below -
- question
- question-category
- answer-category
- answer