I am telling you 3 things about Chatbot

(so you don't have to learn it the hard way)

Cheuk Ting Ho

@cheukting_ho

Cheukting

About me

Co-organizer of 

Open Source contribution

Creator of

Volenteer of

Chatbot?

What is a chatbot?

A computer program designed to simulate conversation with human users, especially over the Internet. - Oxford Dictionaries

What is Turing test?

A person talks to both the person and the computer. The goal is to find out who his interlocutor is — a person or a machine.

Chatbot in business

 

  • Find out the weather  
    What’s the weather today?
  • Find your way home
    Navigate home.
  • Ask Google questions
    How many kilometres in a mile?
  • Play music 
    Play some Jazz music.
  • Ask for a joke
    Tell me a joke.

Chatbot in business

  • Answer questions about what is around you
     
  • Transferring money
     
  • Censorship — Avoids saying certain sensitive words

Chatbot in business

  • Healthcare — Symptom Checker Chatbot.
     
  • Provide relevant health and triage information based on symptoms;
     
  • However, the reliability has been challenged.

Chatbot in business

  • Rita — Revolut’s Intelligent Troubleshooting Assistant
     
  • For customer support
     
  • However, I prefer a real person

1. main components of a chatbot

4 Main components

  1. Natural language processing
    - Understanding of the user's message
    - Identifying intents and entities

     
  2. Dialog manager
    - Control the flow of the conversation
     
  3. Content
    - Scripts of what the chatbot's going to say
     
  4. Custom integrations / external data
    - Extra functions: e.g. sending data to DB, prompting external informations to users, sentiment analysis

Machine

Learning

App Development

Data Engineering

It's a team work to build chatbot

...from scratch

Luckily we have tools available

2. what a chatbot can and cannot do

1. Trying too hard

for passing the Turing test

Trying too hard to pass the Turing test

  • Pretend to be human
    - User feels that they are fooled
     
  • Handel too many things
    - User feels frustrated
     
  • End up passing back the conversation to a human to handle
     
  • Better be clear that user is chatting to a bot

2. Lack of clear dialog flow

Lack of Clear dialog flow

  • The best commercial bots will try to redirect conversation back to the planed dialog flow
    - aim to collect certain information form user
     
  • Handle one thing at a time
     
  • Minimize chitchat
    - which is not the chatbot's purpose and strength
     
  • User learn how to communicate with the bot

3. Not smart enough

Not Smart Enough

  • Not enough training data
    - Bad NLU model
     
  • Not enough content diversity
    - Not content generative model
    - Conversation feels dull
     
  • Avoid decision-tree types of bots
    - User rather fill in a form

Good Examples

Good Examples

  • Good NLP capability
    - multiple entirety extraction
    - adding event in iCalander
    - content extraction in Gmail
     
  • Tell users that they are chatting to an assistant (bot, not human)
     
  • Be clear what is wanted form the user
     
  • Fail gracefully
    - Redirect conversation vs asking for repeat

3. which one to choose

Rasa

  • Open Source
     
  • Community support
     
  • Fully customisation
    - pipeline, model, functionality
     
  • Own deployment
     
  • Enterprise version available

Watson

  • IBM
     
  • Slack community
     
  • SDK for building with Watson API
     
  • Free version: 10,000 free API calls a month
     
  • Different pricing for different plans

Dialogflow

  • Google
     
  • Dialogflow Google Group
     
  • SDK and code example available on GitHub
     
  • Free Standard Edition
     
  • Pay as you go Enterprise Edition

Lex

  • Amazon Web Service
     
  • Amazon Lex forums
     
  • SDKs: Java, JavaScript, Python, CLI, .NET, Ruby on Rails, PHP, Go, and CPP
     
  • Limited usage via AWS Free Tier
     
  • Or pay only for what you use

Comparison

Documentation Configuration Testing
Rasa 😀😀😀😀 😀 😀😀
Watson 😀😀😀 😀😀😀😀😀 😀😀😀😀
Dialogflow 😀😀😀😀😀 😀😀😀 😀😀😀😀
Lex 😀 😀😀😀 😀😀😀😀

Comparison

Flexibility Difficulty Price
Rasa 😀😀😀😀😀 😀 😀😀😀😀😀
Watson 😀😀 😀😀😀😀 😀😀
Dialogflow 😀😀 😀😀😀😀 😀😀
Lex 😀😀 😀😀😀 😀😀

My 2 cents

  • What is the purpose of your chatbot?
     
  • What resources do you have?
     
  • How you gonna deploy it?
     
  • What skill level do you have?
     
  • How much time do you want to invest in it?

Start building a chatbot !!!

@cheukting_ho

Cheukting

I am telling you 3 things about Chatbot

By Cheuk Ting Ho

I am telling you 3 things about Chatbot

Chatbot is cool! Now we can talk to our gadgets as if it’s a real human, right? It also makes you wonder when you chat with the “customer service” online, is that a real person or a robot on the other side? My boss wanted me to build a chatbot, and here’s 3 things that I discovered.

  • 1,835