Upload
elvis-dsouza
View
69
Download
2
Embed Size (px)
Citation preview
Cracking the Chat bot CodeElvis D’SouzaProduct Engineer Sensy Remote
Cracking the Chat bot CodeElvis D’SouzaProduct Engineer Sensy Remote
Cracking the Chat bot CodeElvis D’SouzaProduct Engineer Sensy Remote
IVR/USSD
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
CHAT BOTS -‐ WHAT, WHY, HOW
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
Arrange Meetings
Authenticate Identity
Check-‐in to a flight
Pay for lunches
HISTORY -‐ WeChat
🍲
"
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
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
BOTS IN THE WILD
Poncho -‐ The Weather Bot
Space Adventure -‐ Text Game
TARS
Riffsy -‐ The GIF bot on Kik
QUALITIES OF CHAT BOTS
The bot introduces its offerings
Convenient one-‐tap interaction
Surfaces content via“cards” interface
Handy options on what to do next
Rich Card UI, bots can do more than text
Allows for casual conversation
Feedback and compliments
Deeper engagement with content
Engages in pleasantry
MY EXPERIENCE BUILDING A BOT
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
Sensy Mobile App
• Powerful Search • “English Comedy” • “Kannada Drama” • “Akshay Kumar movie” • “Animated movies” • “Star Suvarna” • “This Weekend” — Filters
Sensy Bot -‐ Why?
• Expose a conversational interface to Search
• Elicit Intent via Natural Language
• An experiment • Fun to build one!
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
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
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
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
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
BUILDING BOTS
Form Filling Bots
• Guided form flows • Can branch depending on user input
• Alternative to Customer support forms
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
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
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
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
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
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
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
BOTS OF THE FUTURE
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
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
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
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
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
Questions
TRY THE BOT www.sensyremote.com/bot
Elvis D’Souza ·∙ [email protected] sensyremote.com We are Hiring!