44
© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Alex Smith – Amazon Web Services Jo-Anne Tan – Gowild.sg JAWS DAYS 2017 Singapore AWS User Group Amazon Lex

AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Embed Size (px)

Citation preview

Page 1: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

© 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved.

Alex Smith – Amazon Web ServicesJo-Anne Tan – Gowild.sg

JAWS DAYS 2017

Singapore AWS User GroupAmazon Lex

Page 2: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

AWS User Groups

Page 3: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

AWS User Groups – ASEAN

ASEAN

10 Member States• SG, TH, VN, ID, PH, MY,

MM, KH, LA, BN

https://aws.amazon.com/usergroups/

Page 4: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

AWS User Groups – ASEAN

Jakarta (Indonesia)Kuala Lumpur (Malaysia)Manila (Philippines)SingaporeBangkok (Thailand)Hanoi (Viet Nam)

https://aws.amazon.com/usergroups/

Page 5: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

AWS User Group - Singapore

The “Little Red Dot”

5.75 Million• 3.9m Citizen/PR• 1.6m Other

!= China

Page 6: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

AWS User Group - Singapore

4 Languages (-and more)

Asia Pacific Hub

“Kiasu”

Page 7: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017
Page 8: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Restarted regular meetings

Page 9: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Restarted regular meetings

Passed 1000 members(2016-01-08)

Page 10: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Restarted regular meetings

Passed 1000 members(2016-01-08)

Changed to a better quality pizza shop

Page 11: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

What worked well

Regularity of meetings

Good venue & AV

Engineers.sg

Page 12: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Engineers.sg

• Oct 2013 – PHP UG

• >1200 videos

• 40 Strong Team

• More info: https://alexjs.co/engineershttp://engineers.sg

Page 13: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

What worked well

Regularity of meetings

Good venue & AV

Engineers.sg

Page 14: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

What worked well

Regularity of meetings

Good venue & AV

Engineers.sg

Beer

Page 15: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

What didn’t work well

AWS driven group

Huge variance in talk quality

Attendance/RSVP discrepancy

Page 16: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

What’s next?

Page 17: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

AWS User Group SG links:

https://www.facebook.com/groups/awsugsg/

https://www.meetup.com/AWS-SG/

https://engineers.sg

Page 18: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

What didn’t work well

AWS driven group

Huge variance in talk quality

Attendance/RSVP discrepancy

Page 19: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Attendance vs RSVP Discrepancy

User intent vs intended usage

The trash can analogy

Reduce the effort to comply

Page 20: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Amazon Lex

Page 21: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Why Did We Build Amazon Lex?

Page 22: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Advent of Conversational Interactions

1st Gen: Punch Cards & Memory Registers

2nd Gen: Pointers & Sliders

3nd Gen: Conversational Interfaces

Page 23: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Conversational Access

On-Demand

Accessible

Efficient

Natural

Page 24: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Conversational Access

On-Demand

Accessible

Efficient

Natural

Page 25: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Developer Challenges

Speech Recognition Language

Understanding

Business Logic

Disparate Systems

Authentication

Messaging platforms

Scale Testing

Security

Availability

Mobile

Conversational interfaces need to combine a large number of sophisticated algorithms and technologies

Page 26: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Amazon Lex: New service for building conversational interfaces using voice and

text

Page 27: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Amazon Lex - FeaturesText and Speech language understanding: Powered by the same technology as Alexa

Enterprise SaaS Connectors: Connect to enterprise systems

Deployment to chat services

Designed for Builders: Efficient and intuitive tools to build conversations; scales automatically

Versioning and alias support

Page 28: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Text and Speech Language Understanding

SpeechRecognition

Natural Language Understanding

Powered by the same Deep Learning technology as Alexa

Page 29: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Amazon Lex – Use Cases

Informational BotsChatbots for everyday consumer requests

Application BotsBuild powerful interfaces to mobile applications

• News updates• Weather information• Game scores ….

• Book tickets• Order food• Manage bank accounts ….

Enterprise Productivity BotsStreamline enterprise work activities and improve efficiencies

• Check sales numbers• Marketing performance• Inventory status ….

Internet of Things (IoT) BotsEnable conversational interfaces for device interactions

• Wearables• Appliances• Auto ….

Page 30: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Amazon Lex - Benefits

High quality Text and Speech Language Understanding

Built-in integration with the AWS platform

Seamlessly deploy and scale

Easy to use

Cost effective

Page 31: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Lex Bot Structure

UtterancesSpoken or typed phrases that invoke your intent

BookHotelIntentsAn Intent performs an action in response to natural language user input

SlotsSlots are input data required to fulfill the intent

FulfillmentFulfillment mechanism for your intent

User input Response

Page 32: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Lex Bot Structure: Utterances

Attend the user group

Come to the meet up

User inputs:

I want to come to the nextmeetup

Could I attend the next usergroup please

Maps to RegisterUserForEvent intent

RegisterUserForEvent intent

UTTERANCES

Page 33: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Lex Bot Structure: Utterances

Attend the user group on {eventDate}

Come to the meet up on {eventDate}

User inputs:

I want to come to the nextmeetup on 12 March 2017

Could I attend the user grouptomorrow please

Maps to RegisterUserForEvent intent;eventDate=2017-12-03

RegisterUserForEvent intent

UTTERANCES

SLOTS

eventDate AMAZON.DATESLOT NAME SLOT TYPE

Page 34: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Lex Bot Structure: Fulfilment

RegisterUserForEvent

eventDate=2017-03-12SLOT

INTENT

AWS Lambda Integration

Intents and slots passed to AWS

Lambda function for business logic

implementation.

Return to Client

Page 35: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Lambda input event

{ ..., "invocationSource": "FulfillmentCodeHook or DialogCodeHook", "userId": "user-id", "bot": {...}, "outputDialogMode": "Text or Voice”, "currentIntent": { "name": "intent-name", "slots": { "slot-name": "value", "slot-name": "value", "slot-name": "value" }, "confirmationStatus": "None, Confirmed, or Denied" }}

Page 36: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Lambda response object{ ..., "dialogAction": { "type": "ElicitIntent, ElicitSlot, ConfirmIntent, Delegate, or Close", "fulfillmentState": "Fulfilled or Failed", "message": { "contentType": "PlainText or SSML", "content": "message to convey to the user" }, "intentName": "intent-name", "slots": { "slot-name": "value", "slot-name": "value", "slot-name": "value" }, "slotToElicit" : "slot-name",}

Page 37: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Response card

{ ..., responseCard: { "version": 1, "contentType": "application/vnd.amazonaws.card.generic", "genericAttachments": [ { "title": "Flowers", "subTitle": “Pick a flower”, "imageUrl: "…", "buttons": [ {"text": "tulips","value": "tulips"}, {"text": "lilies","value": "lilies"}, {"text": "roses","value": "roses"} ] } ]}

Pick a flower

Page 38: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

“Attend an Event”

Attend event

12 March

“Attend the event on 12 March”

Automatic Speech Recognition

Natural Language Understanding

Intent/Slot Model

Utterances

“You are now confirmed for the next event on 12th March” Polly

the

on RegisterUserForEvent

eventDateSLOT

INTENT

Validate eventDateslot value

“You are now confirmed for the event on 12th March”

Update DB

Page 39: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

“Attend an Event”

Attend event

12 March

“Attend the event on 12 March”

Automatic Speech Recognition

Natural Language Understanding

Intent/Slot Model

Utterances

“You are now confirmed for the next event on 12th March” Polly

the

on RegisterUserForEvent

eventDateSLOT

INTENT

Validate eventDateslot value

“You are now confirmed for the event on 12th March”

Update DB

Page 40: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

“Attend an Event”

Attend event

12 March

“Attend the event on 12 March”

Automatic Speech Recognition

Natural Language Understanding

Intent/Slot Model

Utterances

“You are now confirmed for the next event on 12th March” Polly

the

on RegisterUserForEvent

eventDateSLOT

INTENT

Validate eventDateslot value

“You are now confirmed for the event on 12th March”

Update DB

Page 41: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

“Attend an Event”

Attend event

12 March

“Attend the event on 12 March”

Automatic Speech Recognition

Natural Language Understanding

Intent/Slot Model

Utterances

“You are now confirmed for the next event on 12th March” Polly

the

on RegisterUserForEvent

eventDateSLOT

INTENT

Validate eventDateslot value

“You are now confirmed for the event on 12th March”

Update DB

Page 42: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Event Manager Bot: Flow of Information

GetUpcomingEventINTENT

GetUpcomingEventAgenda

eventDateSLOT

INTENT RegisterUserForEvent

eventDateSLOT

INTENTList summary of all events

Show details for event on{eventDate}

Register user for event on eventDate}

Page 43: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Event Manager Bot: Flow of Information

GetUpcomingEventINTENT

GetUpcomingEventAgenda

eventDateSLOT

INTENT RegisterUserForEvent

eventDateSLOT

INTENT

Do you want to hear more?

YESNO

“Okay. Bye!”

?

Page 44: AWS User Group Singapore / Amazon Lex -- JAWSDAYS 2017

Thank You!http://aws.amazon.com/lex