PV226 ML: Chatbots
Content of this session
What is chatbot?
Keras
Approaches to build chatbot
Chatbot
Communication automaton integrated into webpage chat or chat application like Messenger, Whatsapp, Viber, Slack and others.
Not all apps have API to integrate chatbot.
Chatbot
Answers user's questions. And provide some easy actions.
Common terms
- utterance
- intent
- entity
Common Approaches
Decision Tree
- simple tree structure to drive conversation by giving user choices
- easy to implement
- the most reliable option we have available now
NLP
- extracting intent and entity from utterance using natural language processing
- often uses recurrent neural networks (LSTM, GRU)
- requires heavy investments or pretrained cloud model
- not so reliable
- multiple intent issues
How to do chatbot
- if decision tree is enough, use it
- if not be clear this is a chatbot and not real user. Users are more tolerant
- log conversation and collect intents and success of the conversation
From developer side
- for each intent you must call a function
- will you use specific function for bot or do system architecture in a way to support chatbot?
From developer side
- user context
- authentication and authorization
- how long to keep session opened
Some solutions
Open souce
Any questions?
PV226: Chatbots
By Lukáš Grolig
PV226: Chatbots
- 277