Slide 1

Slide 1 text

#devoxxbot @glaforge #devoxxbot @glaforge Un bot pour gérer l’agenda de votre conférence Guillaume Laforge Google Cloud Developer Advocate

Slide 2

Slide 2 text

#devoxxbot @glaforge #devoxxbot @glaforge Chatbots of the past...

Slide 3

Slide 3 text

#devoxxbot @glaforge #devoxxbot @glaforge Bots of today & tomorrow

Slide 4

Slide 4 text

#devoxxbot @glaforge Game changer: ML-driven Natural Language Processing

Slide 5

Slide 5 text

#devoxxbot @glaforge Game changer: ML-powered voice recognition

Slide 6

Slide 6 text

#devoxxbot @glaforge #devoxxbot @glaforge Modern chatbot concepts I want to eat some bananas How many bananas? INTENT → “eat-something” ENTITY → “banana” A natural conversation, that learns from past exchanges CONTEXT → remember the details of the conversation

Slide 7

Slide 7 text

#devoxxbot @glaforge #devoxxbot @glaforge The concept Ok Google, let me talk to Devoxx France! Hi, I’ll be your guide to Devoxx France, I can help you explore topics or pick a session to attend. What would you like to know? When is the next Machine Learning talk? Sure! Here’s Devoxx France. Enter Earcon The next session about Machine Learning is “A bot to schedule the agenda of your conference” in room 220 on Thursday at 1:55pm. Is there another topic you’re interested in? Exit Earcon . . .

Slide 8

Slide 8 text

#devoxxbot @glaforge #devoxxbot @glaforge From idea to development Design, Develop, Deploy

Slide 9

Slide 9 text

#devoxxbot @glaforge Your bot workflow What to build How to build it How to deliver it Design Develop Deploy

Slide 10

Slide 10 text

#devoxxbot @glaforge @glaforge Design What to build

Slide 11

Slide 11 text

#devoxxbot @glaforge Create your persona 1. List out your core brand attributes What words define the experience you’re shooting for? 2. Correlate to attributes that will define your functional design principles How will those manifest in the design? 3. Define some attributes that you’d want to infuse into the voice, style of writing, and personality of the dialog What personality traits match your strategy? 4. Style guide & “bio sketch” Practical application and maintain consistency for longevity of your experience knowledgeable helpful encouraging data rich recommending proactive geeky eager motivating

Slide 12

Slide 12 text

#devoxxbot @glaforge Example style guide INSTEAD OF... IS MORE LIKELY TO SAY... I found Up for that? Does that sound good? Maybe later While you’re at it... what’s going on I did not receive a response if you feel you have reached this message in error please select from one of the following X options to help us serve you better for questions related to... you have entered that was an invalid… we require that you... please try again for faster answers we’re sorry, we are unable to… I did not understand MIGHT SAY THINGS LIKE... so you can keep up to date on, I’ll look it up right now Sure, that’s coming up Right around the corner from… That session’s full, but… You might like lets need can’t because more about help right now one sec stay allows require unable to due to additional regarding assist currently please hold remain WOULD NEVER SAY...

Slide 13

Slide 13 text

#devoxxbot @glaforge Sample dialogs & checklist 1. Canonical “Happy path” 2. First time experience 3. Tapered experience (Return user) 4. Repair 5. Personality questions g.co/dev/ActionsChecklist

Slide 14

Slide 14 text

#devoxxbot @glaforge #devoxxbot @glaforge DEMO API.AI

Slide 15

Slide 15 text

#devoxxbot @glaforge @glaforge Develop How to build it

Slide 16

Slide 16 text

#devoxxbot @glaforge Life of a conversation “Ok Google, talk to Devoxx France” Invoke “Devoxx France” action “Hi! Welcome to Devoxx France...” Speech to Text “The next Machine Learning Session is…” “I want to hear more about Machine Learning” Text to Speech “Sure, here’s Devoxx France” Speech to Text, NLP, Knowledge Graph, ML Ranking, User Profile Text to Speech

Slide 17

Slide 17 text

#devoxxbot @glaforge Cloud Functions A “serverless platform for building event-based microservices”. Function-as-a-service approach Great fit for event-oriented architectures, supporting 3 kind of triggers: ● Cloud Storage updates ● Cloud Pub/Sub messages ● Direct HTTP calls

Slide 18

Slide 18 text

#devoxxbot @glaforge Cloud Functions Completely serverless & fully managed service ⇒ don’t worry about the ops! Automatic scaling and super-fast ⇒ grows with the success of your project ⇒ cost-effective Open and familiar ⇒ JavaScript / Node.js

Slide 19

Slide 19 text

#devoxxbot @glaforge Architecture in development

Slide 20

Slide 20 text

#devoxxbot @glaforge Architecture in development ngrok

Slide 21

Slide 21 text

#devoxxbot @glaforge Fast feedback loop: Ngrok + Functions emulator Google Cloud Functions emulator Ngrok secure internet tunnels to localhost LIVE RELOADING DEBUG IN CHROME

Slide 22

Slide 22 text

#devoxxbot @glaforge #devoxxbot @glaforge DEMO Cloud Functions (emulator + ngrok)

Slide 23

Slide 23 text

#devoxxbot @glaforge @glaforge Deploy How to deliver it

Slide 24

Slide 24 text

#devoxxbot @glaforge Deploying Cloud Functions In production gcloud beta functions deploy agent \ --trigger-http \ --stage-bucket gs://devoxxfr17/ Locally functions deploy agent --trigger-http

Slide 25

Slide 25 text

#devoxxbot @glaforge Review and approval Web-based portal ● Triggering Information ● Merchandising and information Approvals ● Automatic and manual policy checks ● Turn around in about 1 week

Slide 26

Slide 26 text

#devoxxbot @glaforge Discovery Discovery patterns ● Guaranteed invocation ○ “Talk to Devoxx France” ● Discovery Patterns ○ “What’s happening at Devoxx France?” Google Home app

Slide 27

Slide 27 text

#devoxxbot @glaforge #devoxxbot @glaforge API.AI integrations Assistant surface area, and many others

Slide 28

Slide 28 text

#devoxxbot @glaforge Integrations Actions on Google ● Google Home, Pixel… and more to come External integrations ● Slack, Facebook Messenger, ● Twitter, Twilio, Skype, Tropo, ● Telegram, Kik, LINE, Cisco Spark, ● Alexa, Cortana

Slide 29

Slide 29 text

#devoxxbot @glaforge #devoxxbot @glaforge API.AI features

Slide 30

Slide 30 text

#devoxxbot @glaforge #devoxxbot @glaforge Further resources Conversational design guidelines

Slide 31

Slide 31 text

#devoxxbot @glaforge Resources — Checklist g.co/dev/ActionsChecklist

Slide 32

Slide 32 text

#devoxxbot @glaforge Resources — Conversation design guides g.co/dev/ActionsDesign

Slide 33

Slide 33 text

#devoxxbot @glaforge #devoxxbot @glaforge Thanks for your attention! And now, Questions & Answers… …with real humans inside!!!