cracking the chat bot code

48
Cracking the Chat bot Code Elvis D’Souza Product Engineer Sensy Remote

Upload: elvis-dsouza

Post on 10-Jan-2017

69 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Cracking the Chat bot Code

Cracking  the Chat  bot  CodeElvis  D’SouzaProduct  Engineer  Sensy  Remote

Page 2: Cracking the Chat bot Code

Cracking  the Chat  bot  CodeElvis  D’SouzaProduct  Engineer  Sensy  Remote

Page 3: Cracking the Chat bot Code

Cracking  the Chat  bot  CodeElvis  D’SouzaProduct  Engineer  Sensy  Remote

Page 4: Cracking the Chat bot Code
Page 5: Cracking the Chat bot Code

IVR/USSD

Page 6: Cracking the Chat bot Code

The  world  of  Apps

• App  download  is  expensive  • Poor  discovery  on  app  stores  • Apps  compete  with  photos  for  

space  on  the  phone  • Apps  make  you  sign-­‐up,  use  a  lot  

of  data,  send  irrelevant  notifications,  hog  memory  

Page 7: Cracking the Chat bot Code

CHAT  BOTS  -­‐  WHAT,  WHY,  HOW

Page 8: Cracking the Chat bot Code

Chat  Bots

• To-­‐and-­‐fro  interaction  between  the  user  and  a  system  

• The  host  is  usually  a  messaging  app.  Familiar  UI  

• Primary  input  is  using  text,  like  in  messaging  apps  

• Are  not  a  direct  replacement  for  apps,  like  apps  vs  websites

Page 9: Cracking the Chat bot Code

Arrange  Meetings  

Authenticate  Identity  

Check-­‐in  to  a  flight  

Pay  for  lunches

HISTORY  -­‐  WeChat

🍲

"

Page 10: Cracking the Chat bot Code

Why  platforms?

• Easy  to  install  from  a  “bot  store”,  lesser  friction  during  first-­‐use  

• One  (messaging?)  app  to  rule  them  all,  less  clutter  on  the  phone’s  home  screen  

• Share  auth,  social  graph  &  payments  with  bots  easily

Page 11: Cracking the Chat bot Code

Conversational  UI?

• Natural  language  is  good,  but  typing  on  mobile  remains  hard!  

• Required  AI  systems  are  not  production  ready  yet  

• Instant  gratification  demands  intents  be  satisfied  with  fewer  taps  

• UI  should  reduce  cognitive  load  and  offer  functionality/choices  at  the  same  time

Page 12: Cracking the Chat bot Code

BOTS  IN  THE  WILD

Page 13: Cracking the Chat bot Code

Poncho  -­‐  The  Weather  Bot

Page 14: Cracking the Chat bot Code

Space  Adventure  -­‐  Text  Game

Page 15: Cracking the Chat bot Code

TARS

Page 16: Cracking the Chat bot Code

Riffsy  -­‐  The  GIF  bot  on  Kik

Page 17: Cracking the Chat bot Code

QUALITIES  OF  CHAT  BOTS

Page 18: Cracking the Chat bot Code

The  bot  introduces its  offerings

Convenient   one-­‐tap  interaction

Surfaces  content  via“cards”  interface

Page 19: Cracking the Chat bot Code

Handy  options  on  what  to  do  next

Rich  Card  UI,  bots  can  do  more  than  text

Allows  for  casual  conversation

Page 20: Cracking the Chat bot Code

Feedback  and  compliments

Deeper  engagement  with  content

Engages  in  pleasantry

Page 21: Cracking the Chat bot Code

MY  EXPERIENCE  BUILDING  A  BOT

Page 22: Cracking the Chat bot Code

Sensy  Mobile  App

• “Whats  running  on  TV  right  now?”  

• Highly  visual  interface  • Grids  of  programs  • Tap  to  switch  channel  or  learn  

more  about  a  show  • Handy  channel  number  

reference  for  faster  switching

Page 23: Cracking the Chat bot Code

Sensy  Mobile  App

• Powerful  Search  • “English  Comedy”  • “Kannada  Drama”  • “Akshay  Kumar  movie”  • “Animated  movies”  • “Star  Suvarna”  • “This  Weekend”  —  Filters

Page 24: Cracking the Chat bot Code

Sensy  Bot  -­‐  Why?

• Expose  a  conversational  interface  to  Search  

• Elicit  Intent  via  Natural  Language  

• An  experiment  • Fun  to  build  one!

Page 25: Cracking the Chat bot Code

Sensy  Bot  v1

• Define  the  domain  • Introduce  yourselves  • Convey  what  your  bot  does  • Offer  hints  on  how  to  proceed  • Give  examples Thanks!  I'd  like  to  

watch  an  english  comedy  movie.  Do  you  have  something  for  me?  

Hello!  My  name  is  Sensy.  Let  me  help  you  find  something  to  watch  on  TV  

Page 26: Cracking the Chat bot Code

Sensy  Bot  v1

• Leverage  structured  information  • Identify  Entities  related  to  

your  use  case  • “English”  —  Language  • “Comedy”  —  Genre  • “Movie”  —  Show  Type

I'd  like  to  watch  an  english  comedy  movie.  Do  you  have  something  for  me?  

Here  are  English  Comedy  Movies  running  right  now  

watch  on  TV  

Page 27: Cracking the Chat bot Code

Sensy  Bot  v1

• Offer  keywords  to  modify  context  • Time  —  “this  weekend”  • History  —  “on  my  favourite  

channel”  • Filters  —  “I  have  20  minutes  

of  free  time”

I'd  like  to  watch  an  english  comedy  movie  this  weekend.  Do  you  have  something  for  me?  

Here  are  English  Comedy  Movies  running  this  weekend  

watch  on  TV  

Page 28: Cracking the Chat bot Code

Sensy  Bot  v1

• Deliver  content  using  Cards  UI  • Use  images,  audio  and  video  

to  deliver  content  • Enable  interaction  with  

options  or  links

I'd  like  to  watch  an  english  comedy  movie.  Do  you  have  something  for  me?  

Here  are  English  Comedy  Movies  running  right  now  

Page 29: Cracking the Chat bot Code

Learnings

• Closed  domain  sets  expectations  • Examples  provide  comfort  to  the  user  

• Treating  this  as  a  search  problem  helped  get  the  v1  within  hours  

• Input  from  the  user  helped  prioritize  how  a  v2  should  be  

• Pleasantries  not  to  be  ignored  • Account  for  playful  users

I'd  like  to  watch  an  english  comedy  movie  this  weekend.  Do  you  have  something  for  me?  

Here  are  English  Comedy  Movies  running  this  weekend  

watch  on  TV  

Page 30: Cracking the Chat bot Code

BUILDING  BOTS

Page 31: Cracking the Chat bot Code

Form  Filling  Bots

• Guided  form  flows  • Can  branch  depending  on  user  input  

• Alternative  to  Customer  support  forms

Page 32: Cracking the Chat bot Code

WeChat/Kik  Style

• Modified  keyboard  to  guide  conversation  

• Entertainment,  lifestyle  and  gaming  use  cases  

• A  new,  fun  way  for  brands  to  interact  with  their  users  

• New  age  IRC-­‐style  commands/IVR  systems

Page 33: Cracking the Chat bot Code

Bot  Frameworks

• Write  once  for  many  platforms  

• Bot  Builders  • Customer  care  bots  • Form  filling  

• Plug-­‐and-­‐play  AI  • Microsoft  Bot  Framework  • Facebook  Bot  Engine  (Wit.ai)  • API.ai

Page 34: Cracking the Chat bot Code

The  first  message

• Helps  set  the  domain  for  interaction.  Open  domain  bots  are  hard  

• Users  are  often  unsure  of  the  “right”  way  to  talk  to  the  bot

Page 35: Cracking the Chat bot Code
Page 36: Cracking the Chat bot Code
Page 37: Cracking the Chat bot Code

The  first  message

Hello!  I’m  a  mobile  recharge  bot.  Are  you  looking  to  recharge  talk  time  or  data?  

Welcome  to  Pizza  station.  Would  you  like  to  order  a  Pizza?  

Let  me  help  you  find  something  to  eat.  What  are  you  in  the  mood  for?  

Hi,  Are  you  looking  for  help  regarding  a  recent  order?

Are  you  up  for  a  game  of  Tic-­‐Tac-­‐Toe?

Good  Morning,  Elvis!  Here  are  5  stories  trending  on  News  Now,  today  

Page 38: Cracking the Chat bot Code

Assisting  Input

• Use  custom  keyboards  on  mobile  

• Provide  hints  and  examples,  identify  when  the  user  is  stuck  

• Minimize  taps  required  to  get  things  done  

• Allow  for  starting  over  in  guided  flows

Page 39: Cracking the Chat bot Code

Nurturing  Trust

• Tell  the  user  how  you  interpret  their  queries  

• Confirm  before  taking  irreversible  actions  

• Sprinkle  feedback  and  compliments  

• Engage  in  chatter,  handle  insults  with  care,  know  when  to  escalate

Page 40: Cracking the Chat bot Code

Follow  Up

• “Push”  messages  to  the  user  —  Start  a  new  conversation  or  continue  an  old  one  

• Use  this  for  delivering  updates,  like  change  in  flight  status  or  new  product  being  available  in  store

Page 41: Cracking the Chat bot Code

BOTS  OF  THE  FUTURE

Page 42: Cracking the Chat bot Code

AI  Bots

• They  may  be  open  domain,  or  may  support  a  plethora  of  use-­‐cases  through  a  natural  language  interface  

• They  have  excellent  intent  harvesting  abilities,  and  enhanced  ability  to  know  when  not  doing  well

Hello  Genie,  Please  open  the  front  door  for  Jake,  will  you?  

Sure  thing!  I  shall  have  the  front  door  open  for  Jake

Jake  is  in!  I  have  locked  the  front  door

Page 43: Cracking the Chat bot Code

AI  Bots  -­‐  Language

• They  can  understand  complex  constructs  &  respond  in  natural  language  

• Can  understand  nuances  in  language,  handle  disambiguation  and  changes  in  linguistic  context  

Almost  every?  

Good  Morning!  Netflix  is  suddenly  available  in  almost  every  country  in  the  world!  

Yeah!  Its  still  not  available  in  China,  North  Korea  and  Syria.  CEO  Reed  hastings  said  it  could  take    

Page 44: Cracking the Chat bot Code

AI  Bots  -­‐  Context

• Free  form  input  may  have  multiple  questions,  ambiguity,  intent-­‐switching,  references  to  temporal  events  

• Bots  need  to  understand  and  remember  the  user,  their  preferences.    

• They  should  not  ask  questions  they  should  know  the  answers  for  

• They  need  to  be  on  top  of  temporal  and  physical  context

Neat!  Whats  the  weather  like,  today?

Slight  drizzle  expected  in  the  evening  at  Bangalore.

How  are  things  at  Jake’s  place

Its  foggy  &  26  degrees  in  Mumbai  

Page 45: Cracking the Chat bot Code

AI  Bots  -­‐  Deep  Learning

• Rule/template  based  systems  don’t  scale.  Generative  models  will  fare  better  

• Training  is  hard  due  to  lack  of  relevant  data  

• Handling  context  &  maintaining  a  coherent  personality  is  a  challenge

Neat!  Whats  the  status  of  my  order?

Order  51  will  reach  you  by  6PM  today  

Should  I  be  expecting  a  delivery  today?

Order  51  is  being  prepared  at  the  Mumbai  Hub  

Page 46: Cracking the Chat bot Code

References

❖ Build  Bots  • Microsoft  Bot  Framework  • Pandora  Bots  • Chatfuel  • Botkit  • API.ai  • wit.ai

❖ Reading  • Checking  In  On  Chat  Bots  • Bots  won't  replace  apps  • Deep  Learning  for  

Chatbots  • Botday

Page 47: Cracking the Chat bot Code

Questions

 TRY  THE  BOT      www.sensyremote.com/bot    

 Elvis  D’Souza  ·∙  [email protected]      sensyremote.com      We  are  Hiring!    

Page 48: Cracking the Chat bot Code