amazon alexa: our successes and fails

34
AMAZON ALEXA our successes and fails 15 Sep 2017 DevBDay

Upload: vyacheslav-lyalkin

Post on 21-Jan-2018

264 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Amazon Alexa: our successes and fails

AMAZON ALEXAour successes and fails

15 Sep 2017

DevBDay

Page 2: Amazon Alexa: our successes and fails

Viachaslau Lialkin

EPAM Systems

vlialkin

2

Page 3: Amazon Alexa: our successes and fails

3

Introduction toAmazon Alexa

Page 4: Amazon Alexa: our successes and fails

4

Amazon Alexa is the cloud-based "brain" behind

Amazon voice assistant devices.

Page 5: Amazon Alexa: our successes and fails

5

Music & Entertainment

News & Information

Calling & Messaging

Help Around the House

Shopping experience

Custom Skills

Assists with

Page 6: Amazon Alexa: our successes and fails

6

// Information & Help

Page 7: Amazon Alexa: our successes and fails

7

// Music

Page 8: Amazon Alexa: our successes and fails

8

// Smart home

Page 9: Amazon Alexa: our successes and fails

9

There is also store for Alexa Skills …

Page 10: Amazon Alexa: our successes and fails
Page 11: Amazon Alexa: our successes and fails

11

Echo Dot$49.99

Amazon Echo$179.99

Echo Show$229.99

// Devices

Page 12: Amazon Alexa: our successes and fails

12

Amazon Alexa engine

Amazon Echo Amazon Echo Dot devicesAmazon Echo Show

Page 13: Amazon Alexa: our successes and fails

13

How phrasesare built?

Page 14: Amazon Alexa: our successes and fails

14

Alexa, ask Uber to request a ride

Page 15: Amazon Alexa: our successes and fails

15

KeywordFirst word in every requestRequired to wake up the device

Alexa, ask Uber to request a ride

Page 16: Amazon Alexa: our successes and fails

16

Skill invocation nameDefined by Skill developerPhrase is sent to the concrete Skill

Alexa, ask Uber to request a ride

Page 17: Amazon Alexa: our successes and fails

17

Intent from the Uber SkillShould be defined by Skill developer

Multiple utterances of single action are possible

Alexa, ask Uber to request a ride

Page 18: Amazon Alexa: our successes and fails

18

Alexa, set timer for 20 minutes

No skill invocation name, becauseit is built-it Alexa functionality

Page 19: Amazon Alexa: our successes and fails

19

Page 20: Amazon Alexa: our successes and fails

20

// How to create Skill

- Set Invocation Name (string)

- Build Interaction Model (json)

- Implement Speechlet interfacevoid onSessionStarted(SessionStartedRequest, Session)void onSessionEnded(SessionEndedRequest, Session)SpeechletResponse onLaunch(LaunchRequest, Session)SpeechletResponse onIntent(IntentRequest, Session)

Page 21: Amazon Alexa: our successes and fails

21

// How to test

- Use devices (thanks, Captain!)

- Use text emulator

- Use voice emulator

Page 22: Amazon Alexa: our successes and fails

Story #1: Alexa Office

Page 23: Amazon Alexa: our successes and fails

23

Alexa, ask Office where is Viachaslau Lialkin

Page 24: Amazon Alexa: our successes and fails

24

Alexa, ask Office where is Viachaslau Lialkin

Viachaslau Lialkin is on the meeting till 17:00

Viachaslau Lialkin is on vacation till September 22

Unfortunately Viachaslau Lialkin is on sick leave today

Page 25: Amazon Alexa: our successes and fails

25

// How does it work

HTTPSWeb-app

(Java)Telescope API

MS Exchange API

Amazon Developer web-interface

"office" EmployeeAvailabilityIntent- "where is {EmployeeName} now",- "is {EmployeeName} free now",- "is {EmployeeName} available now",- "is {EmployeeName} busy now",- "to find {EmployeeName}"

Heroku

EndpointType

(our URL)

SkillName

External APIs

InvocationName

("office")

Page 26: Amazon Alexa: our successes and fails

26

// What did we do well

- Integration w/ external systems

- Synonyms in Interaction Model (voice-to-text)

- Synonyms in web-app (text-to-identifier)

- Transcription of names in web-app (text-to-voice)

OK

OK

OK

OK

Page 27: Amazon Alexa: our successes and fails

27

- Bad recognition and pronunciation of names (voice-to-text and text-to-voice)

- Not convenient to ask Alexa and better to check manually

ERR

ERR

// Known problems

Page 28: Amazon Alexa: our successes and fails

Story #2: Alexa Question

Page 29: Amazon Alexa: our successes and fails

29

Alexa, ask Question

Page 30: Amazon Alexa: our successes and fails

30

Java Core - Could you please describe, what is happening during adding element into LinkedList?

Spring - What is DispatcherServlet?

Alexa, ask Question

Design Patterns - Could you please compare patterns Facade and Adapter?

Page 31: Amazon Alexa: our successes and fails

31

// How does it work

%

Amazon Developer web-interface

"question" QuestionIntent- "question",- "please",- "next",- "repeat",- "from {tag}",- "about {tag}"

TXT-filewith 60+questions

SkillName

InvocationName

("question")

Page 32: Amazon Alexa: our successes and fails
Page 33: Amazon Alexa: our successes and fails

33

Page 34: Amazon Alexa: our successes and fails

34