SlideShare a Scribd company logo
1 of 17
CW
IN
CAPGEMINI
WEEK OF
INNOVATION
NETWORKS
Developing with Alexa
Sarah Saunders OSCE
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 2
Building an Alexa Skill
• Why?
• What does it do?
• How does it work?
Demo…
Application Walk-through
Conclusions and Opinions on
Alexa Development
Agenda
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 3
Building an Alexa Skill
• Why?
• What does it do?
• How does it work?
Demo…
Application Walk-through
Conclusions and Opinions on
Alexa Development
Agenda
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 4
Platinum Sponsor - recruitment
and promotion
Theme: “It takes all types to
make a team”
Techy demos, talking points,
catch peoples’ attention and
interest
Fun as a core value
Why: Capgemini at Devoxx UK
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 5
Community version of Myers Briggs personality test
32 questions, in the format “Do you prefer A or B”, where A
and B are opposites
Each must be answered on a scale of 1 to 5
An algorithm allocates you one of 16 personality types,
comprising of a combination of four “base” personality type
pairs (see below), based on your answers
Questions are open source; modified by the psychology
community
How to convert someone’s vocal answer into a 1 to 5 scale
How to get Alexa to recognise your answers (more on that
later)
Convert the OEJTS answer to a technology “type”
Shorten the questionnaire to make it completable
Fun, not opinionated
Don’t offend anybody! (FAIL)
Questionnaire Challenges
What: Open Extended Jungian Type Scales
Personality Types
Introverted / Extroverted (I / E)
Sensing / iNtuiting (S / N)
Feeling / Thinking (F / T)
Perceiving / Judging (P / J)
} 16 combinations (e.g.) INTJ, ENTJ…
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 6
Software Engineering “Personality Types”
Server
Side
Dev
Front
End
Dev
DevOps
New
Tech
Agile
Coach
ESFP,
ISFP,
ENFP
ESTJ,
ENTJ,
ESFJ,
ISFJ
ENFJ,
INFJ,
INFP
ISTJ,
INTJ,
INTP,
ISTP
ESTP,
ENTP
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 7
#DiversiTeams 
CW
IN
CAPGEMINI
WEEK OF
INNOVATION
NETWORKS
Demo
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 9Presentation Title | Author | Date © 2018 Capgemini. All rights reserved.
Alexa Voice Services (AVS) Lambda FunctionInvocation Model - ASK
Security
Client APIs (Echo, Java..) include:
• Wake Word logic
• When to start and stop recording
• Create sound file and send to
Amazon server
Server API:
• Converts sound to text
• Triggers Invocation Model
How: Alexa Skill Components
Browser based IDE
JSON file
Slots
Types – MANY predefined types (inc.
Names, Places…!)
Define every possible recognizable
answer to your questions
Passes slot values to server – lambda
or other
Event-driven
Javascript (or Java, Python, C#)
Contains states to manage flow
Use APIs to hook in other logic (ie
sentiment analysis)
Available “Skills” are linked via your AWS account
Client API uses OAuth to authenticate with your AWS account – you grant it permission to access the skills in your account
Token based authentication between invocation model of skill and server-side logic (ie lambda function)
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 10
Interaction Model Drill-down - Types
{“interactionModel”:{
"languageModel": {
"invocationName":"analyse me“,
"types": [
{
"name": “QUIZ_ANSWER",
"values": [
{
"name": {
"value": "make lists",
"synonyms": []
}
},
"name": {
"value": "rely on memory",
"synonyms": []
}
} ………………………… and on and on
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 11
Interaction Model Drill-down - Intents
{“interactionModel”:{
"languageModel": {
…
"intents": [
{
"name": "AMAZON.CancelIntent",
"samples": []
},
"name": “AnswerIntent",
"slots" : [
"name" : "QuizAnswer",
"type" : "QUIZ_ANSWER"
]
"samples": [
“{QuizAnswer}”
“I {QuizAnswer}”,
“Probably {QuizAnswer}”
……
]
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 12
Interaction Model Drill-down – Custom Types in Intents
{
“name”: “AskNameIntent”,
“samples”:[
“{sarah|Name}”,
“It’s {sarah|Name}”,
“My name is {sarah|Name}”,
“I’m {sarah|Name}”
],
“slots”:[
{
“name”: “Name”,
“type”:”AMAZON.LITERAL”
}
]
}
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 13
Server Side Drill Down – States
const states = {
START: "_START",
QUIZ: "_QUIZ",
ASSERT: "_ASSERT"
};
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 14
Server Side Drill Down – States
const startHandlers = Alexa.CreateStateHandler(states.START,{
"Start": function() {
this.response.speak(WELCOME_MESSAGE).listen(HELP_MESSAGE);
this.emit(":responseReady");
},
"QuizIntent": function() {
console.log("QuizIntent Intent");
this.handler.state = states.QUIZ;
this.emitWithState("Quiz");
}
});
const quizHandlers = Alexa.CreateStateHandler(states.QUIZ, {
"Quiz": function() {
this.emitWithState("AskQuestion");
},
"AskQuestion": function() {
this.emit(":ask", questions[counter]);,
},
"HelpIntent": function() {
// message specific to answering psychometric query
},
"AnswerIntent": function() {
var answer = getSlot(this.event.request.intent.slots); // This would be the answer to the above question
.....
this.handler.state = states.ASSERT;
this.emit(":ask", "Are you sure?");
});
const assertHandlers = Alexa.CreateStateHandler(states.ASSERT, {
"HelpIntent": function() {
// message specific to answering the are-you-sure query
},
"AnswerIntent" : function() {
var answer = getSlot(this.event.request.intent.slots); // This would be the response to the "are you sure?" question
....
this.handler.state = states.QUIZ; // ready for the next question
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 15
OEJTS questions require an answer between 1 and 5
How do we turn the user’s response into a number?
• Capture the answer to each question. If the first answer is
selected, weight as 2. If the second answer is selected,
weight as 4.
• For each question, have a follow-up question along the
lines of “are you sure”?
• Run the response to this second question through
sentiment analysis to determine if positive or negative.
• If positive, add 1 to first answer or subtract 1 from second
answer (So, 2 becomes 1, 4 becomes 5)
• If negative, subtract 1 from first answer or add 1 to
second answer (So, 2 becomes 3 and 4 becomes 3)
• If neutral, leave as-is
Provide a sentence, receive a positivity scale 0 (negative) to
1 (positive)
Text based – any vocal sentiment (sarcasm, pitch, volume,
tone) is lost
How does it work internally?
• Neural network?
Is this more accurate than 1 to 5?
Problem: Input to Alexa is one sentence Sentiment REST API – theysay.io
Add in some AI – Sentiment Analysis
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 16Presentation Title | Author | Date © 2018 Capgemini. All rights reserved.
01
02
03
Lessons
Learned When to use Voice Interfaces
 Slow - slower than reading or typing or touch screen
interaction
 No need to use your hands – can multi task
 Small input/output
 Alexa / Siri / Google / Cortana are all quite different
Voice Interface Development Skills
 Understanding of Conversation structure
 Language and Culture Specific
 Do not create open-ended questions!
 Use of Random to give a realistic feel
Golden Rules of IoT
 Address Security First – Alexa a good platform for this
 Always have a manual override!
 Be aware of GDPR
Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 17
Voice interfaces are suitably
advanced that they should
always be considered an option
Alexa skills are curiously limited
Click to insert text
People loved the OETJS –
analyzing themselves, the
human angle
sarah.saunders@capgemini.com
@sasaunde
Questions / Comments?
Conclusions

More Related Content

What's hot

What's hot (20)

ALX326_Applying Alexa’s Natural Language to Your Challenges
ALX326_Applying Alexa’s Natural Language to Your ChallengesALX326_Applying Alexa’s Natural Language to Your Challenges
ALX326_Applying Alexa’s Natural Language to Your Challenges
 
Build Intelligent Apps with Amazon ML - Language Services - BDA302 - Chicago ...
Build Intelligent Apps with Amazon ML - Language Services - BDA302 - Chicago ...Build Intelligent Apps with Amazon ML - Language Services - BDA302 - Chicago ...
Build Intelligent Apps with Amazon ML - Language Services - BDA302 - Chicago ...
 
AWS re:Invent 2016: Machine Learning State of the Union Mini Con (MAC206)
AWS re:Invent 2016: Machine Learning State of the Union Mini Con (MAC206)AWS re:Invent 2016: Machine Learning State of the Union Mini Con (MAC206)
AWS re:Invent 2016: Machine Learning State of the Union Mini Con (MAC206)
 
Add Intelligence to Applications with AWS ML Services
Add Intelligence to Applications with AWS ML ServicesAdd Intelligence to Applications with AWS ML Services
Add Intelligence to Applications with AWS ML Services
 
AWS Machine Learning Week SF: Build Intelligent Applications with AWS ML Serv...
AWS Machine Learning Week SF: Build Intelligent Applications with AWS ML Serv...AWS Machine Learning Week SF: Build Intelligent Applications with AWS ML Serv...
AWS Machine Learning Week SF: Build Intelligent Applications with AWS ML Serv...
 
Demystifying Machine Learning On AWS - AWS Summit Sydney 2018
Demystifying Machine Learning On AWS - AWS Summit Sydney 2018Demystifying Machine Learning On AWS - AWS Summit Sydney 2018
Demystifying Machine Learning On AWS - AWS Summit Sydney 2018
 
Build Text Analytics Solutions with AWS ML Services: Machine Learning Worksho...
Build Text Analytics Solutions with AWS ML Services: Machine Learning Worksho...Build Text Analytics Solutions with AWS ML Services: Machine Learning Worksho...
Build Text Analytics Solutions with AWS ML Services: Machine Learning Worksho...
 
Mike Gillespie - Build Intelligent Applications with AWS ML Services (200).pdf
Mike Gillespie - Build Intelligent Applications with AWS ML Services (200).pdfMike Gillespie - Build Intelligent Applications with AWS ML Services (200).pdf
Mike Gillespie - Build Intelligent Applications with AWS ML Services (200).pdf
 
Build Text Analytics Solutions with Amazon Comprehend and Amazon Translate
Build Text Analytics Solutions with Amazon Comprehend and Amazon TranslateBuild Text Analytics Solutions with Amazon Comprehend and Amazon Translate
Build Text Analytics Solutions with Amazon Comprehend and Amazon Translate
 
AWS STARTUP DAY 2018 I Enhancing Your Startup With Amazon Machine Learning
AWS STARTUP DAY 2018 I Enhancing Your Startup With Amazon Machine LearningAWS STARTUP DAY 2018 I Enhancing Your Startup With Amazon Machine Learning
AWS STARTUP DAY 2018 I Enhancing Your Startup With Amazon Machine Learning
 
Workshop: Build Deep Learning Applications with TensorFlow and SageMaker
Workshop: Build Deep Learning Applications with TensorFlow and SageMakerWorkshop: Build Deep Learning Applications with TensorFlow and SageMaker
Workshop: Build Deep Learning Applications with TensorFlow and SageMaker
 
WKS403 Build an Alexa Skill using AWS Lambda
WKS403 Build an Alexa Skill using AWS Lambda WKS403 Build an Alexa Skill using AWS Lambda
WKS403 Build an Alexa Skill using AWS Lambda
 
An Overview of AI on the AWS Platform - June 2017 AWS Online Tech Talks
An Overview of AI on the AWS Platform - June 2017 AWS Online Tech TalksAn Overview of AI on the AWS Platform - June 2017 AWS Online Tech Talks
An Overview of AI on the AWS Platform - June 2017 AWS Online Tech Talks
 
Introduction to Artificial Intelligence (AI) at Amazon
Introduction to Artificial Intelligence (AI) at Amazon Introduction to Artificial Intelligence (AI) at Amazon
Introduction to Artificial Intelligence (AI) at Amazon
 
Mike Gillespie - Automate for Efficiency with Amazon Transcribe & Amazon Tran...
Mike Gillespie - Automate for Efficiency with Amazon Transcribe & Amazon Tran...Mike Gillespie - Automate for Efficiency with Amazon Transcribe & Amazon Tran...
Mike Gillespie - Automate for Efficiency with Amazon Transcribe & Amazon Tran...
 
Workshop: Using Amazon ML Services for Video Transcription and Translation Wo...
Workshop: Using Amazon ML Services for Video Transcription and Translation Wo...Workshop: Using Amazon ML Services for Video Transcription and Translation Wo...
Workshop: Using Amazon ML Services for Video Transcription and Translation Wo...
 
An Overview of AI at AWS
An Overview of AI at AWSAn Overview of AI at AWS
An Overview of AI at AWS
 
ALX203-How Voice Technology Is Moving Higher Education to a New Era
ALX203-How Voice Technology Is Moving Higher Education to a New EraALX203-How Voice Technology Is Moving Higher Education to a New Era
ALX203-How Voice Technology Is Moving Higher Education to a New Era
 
Automate for Efficiency with Amazon Transcribe & Amazon Translate: Machine Le...
Automate for Efficiency with Amazon Transcribe & Amazon Translate: Machine Le...Automate for Efficiency with Amazon Transcribe & Amazon Translate: Machine Le...
Automate for Efficiency with Amazon Transcribe & Amazon Translate: Machine Le...
 
re:Invent re:Cap - An overview of Artificial Intelligence and Machine Learnin...
re:Invent re:Cap - An overview of Artificial Intelligence and Machine Learnin...re:Invent re:Cap - An overview of Artificial Intelligence and Machine Learnin...
re:Invent re:Cap - An overview of Artificial Intelligence and Machine Learnin...
 

Similar to Alexa skills at dev oxx sarah saunders.cwin18.telford

Similar to Alexa skills at dev oxx sarah saunders.cwin18.telford (20)

AI and Python: Developing a Conversational Interface using Python
AI and Python: Developing a Conversational Interface using PythonAI and Python: Developing a Conversational Interface using Python
AI and Python: Developing a Conversational Interface using Python
 
Everything You Wanted to Know about Developing for Voice Using Alexa (ALX306-...
Everything You Wanted to Know about Developing for Voice Using Alexa (ALX306-...Everything You Wanted to Know about Developing for Voice Using Alexa (ALX306-...
Everything You Wanted to Know about Developing for Voice Using Alexa (ALX306-...
 
Your First Amazon Alexa Skill
Your First Amazon Alexa SkillYour First Amazon Alexa Skill
Your First Amazon Alexa Skill
 
Demo day
Demo dayDemo day
Demo day
 
Sviluppare applicazioni voice-first con AWS e Amazon Alexa
Sviluppare applicazioni voice-first con AWS e Amazon AlexaSviluppare applicazioni voice-first con AWS e Amazon Alexa
Sviluppare applicazioni voice-first con AWS e Amazon Alexa
 
Alexa, Ask Jarvis to Create a Serverless App for Me (SRV315) - AWS re:Invent ...
Alexa, Ask Jarvis to Create a Serverless App for Me (SRV315) - AWS re:Invent ...Alexa, Ask Jarvis to Create a Serverless App for Me (SRV315) - AWS re:Invent ...
Alexa, Ask Jarvis to Create a Serverless App for Me (SRV315) - AWS re:Invent ...
 
Training Chatbots and Conversational Artificial Intelligence Agents with Amaz...
Training Chatbots and Conversational Artificial Intelligence Agents with Amaz...Training Chatbots and Conversational Artificial Intelligence Agents with Amaz...
Training Chatbots and Conversational Artificial Intelligence Agents with Amaz...
 
使用 Serverless 技術打造支援 Alexa 的物聯網服務
使用 Serverless 技術打造支援 Alexa 的物聯網服務使用 Serverless 技術打造支援 Alexa 的物聯網服務
使用 Serverless 技術打造支援 Alexa 的物聯網服務
 
Empowering Every Brain! How Brain Power is using AWS-Powered AI in their Miss...
Empowering Every Brain! How Brain Power is using AWS-Powered AI in their Miss...Empowering Every Brain! How Brain Power is using AWS-Powered AI in their Miss...
Empowering Every Brain! How Brain Power is using AWS-Powered AI in their Miss...
 
kornev.pdf
kornev.pdfkornev.pdf
kornev.pdf
 
Build Intelligent Apps Using AI Services.pdf
Build Intelligent Apps Using AI Services.pdfBuild Intelligent Apps Using AI Services.pdf
Build Intelligent Apps Using AI Services.pdf
 
Improving Customer Experience: Enhanced Customer Insights Using Natural Langu...
Improving Customer Experience: Enhanced Customer Insights Using Natural Langu...Improving Customer Experience: Enhanced Customer Insights Using Natural Langu...
Improving Customer Experience: Enhanced Customer Insights Using Natural Langu...
 
Build_Intelligent_Apps_Using_AI_Services.pdf
Build_Intelligent_Apps_Using_AI_Services.pdfBuild_Intelligent_Apps_Using_AI_Services.pdf
Build_Intelligent_Apps_Using_AI_Services.pdf
 
Build Smarter Enterprise Apps with AI, AR & VR on AWS
Build Smarter Enterprise Apps with AI, AR & VR on AWSBuild Smarter Enterprise Apps with AI, AR & VR on AWS
Build Smarter Enterprise Apps with AI, AR & VR on AWS
 
2022 APIsecure_API Security Testing: The Next Step in Modernizing AppSec
2022 APIsecure_API Security Testing: The Next Step in Modernizing AppSec2022 APIsecure_API Security Testing: The Next Step in Modernizing AppSec
2022 APIsecure_API Security Testing: The Next Step in Modernizing AppSec
 
Smart Web Apps with Azure and AI as a Service
Smart Web Apps with Azure and AI as a ServiceSmart Web Apps with Azure and AI as a Service
Smart Web Apps with Azure and AI as a Service
 
Solve Common Voice UI Challenges with Advanced Dialog Management Techniques (...
Solve Common Voice UI Challenges with Advanced Dialog Management Techniques (...Solve Common Voice UI Challenges with Advanced Dialog Management Techniques (...
Solve Common Voice UI Challenges with Advanced Dialog Management Techniques (...
 
Mistakes to-avoid-api-product
Mistakes to-avoid-api-productMistakes to-avoid-api-product
Mistakes to-avoid-api-product
 
Resume_Me (1)
Resume_Me (1)Resume_Me (1)
Resume_Me (1)
 
How to Enhance your Application using Amazon Comprehend for NLP - AWS Online ...
How to Enhance your Application using Amazon Comprehend for NLP - AWS Online ...How to Enhance your Application using Amazon Comprehend for NLP - AWS Online ...
How to Enhance your Application using Amazon Comprehend for NLP - AWS Online ...
 

More from Capgemini

Commercial Banking Trends book 2022
Commercial Banking Trends book 2022Commercial Banking Trends book 2022
Commercial Banking Trends book 2022
Capgemini
 
Top Trends in Payments 2022
Top Trends in Payments 2022Top Trends in Payments 2022
Top Trends in Payments 2022
Capgemini
 
Top Trends in Wealth Management 2022
Top Trends in Wealth Management 2022Top Trends in Wealth Management 2022
Top Trends in Wealth Management 2022
Capgemini
 
Retail Banking Trends book 2022
Retail Banking Trends book 2022Retail Banking Trends book 2022
Retail Banking Trends book 2022
Capgemini
 
Top Trends in Commercial Banking: 2021
Top Trends in Commercial Banking: 2021Top Trends in Commercial Banking: 2021
Top Trends in Commercial Banking: 2021
Capgemini
 
Top Trends in Retail Banking: 2021
Top Trends in Retail Banking: 2021Top Trends in Retail Banking: 2021
Top Trends in Retail Banking: 2021
Capgemini
 
Top Trends in Retail Banking: 2020
Top Trends in Retail Banking: 2020Top Trends in Retail Banking: 2020
Top Trends in Retail Banking: 2020
Capgemini
 

More from Capgemini (20)

Top Healthcare Trends 2022
Top Healthcare Trends 2022Top Healthcare Trends 2022
Top Healthcare Trends 2022
 
Top P&C Insurance Trends 2022
Top P&C Insurance Trends 2022Top P&C Insurance Trends 2022
Top P&C Insurance Trends 2022
 
Commercial Banking Trends book 2022
Commercial Banking Trends book 2022Commercial Banking Trends book 2022
Commercial Banking Trends book 2022
 
Top Trends in Payments 2022
Top Trends in Payments 2022Top Trends in Payments 2022
Top Trends in Payments 2022
 
Top Trends in Wealth Management 2022
Top Trends in Wealth Management 2022Top Trends in Wealth Management 2022
Top Trends in Wealth Management 2022
 
Retail Banking Trends book 2022
Retail Banking Trends book 2022Retail Banking Trends book 2022
Retail Banking Trends book 2022
 
Top Life Insurance Trends 2022
Top Life Insurance Trends 2022Top Life Insurance Trends 2022
Top Life Insurance Trends 2022
 
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーです
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーですキャップジェミニ、あなたの『RISE WITH SAP』のパートナーです
キャップジェミニ、あなたの『RISE WITH SAP』のパートナーです
 
Property & Casualty Insurance Top Trends 2021
Property & Casualty Insurance Top Trends 2021Property & Casualty Insurance Top Trends 2021
Property & Casualty Insurance Top Trends 2021
 
Life Insurance Top Trends 2021
Life Insurance Top Trends 2021Life Insurance Top Trends 2021
Life Insurance Top Trends 2021
 
Top Trends in Commercial Banking: 2021
Top Trends in Commercial Banking: 2021Top Trends in Commercial Banking: 2021
Top Trends in Commercial Banking: 2021
 
Top Trends in Wealth Management: 2021
Top Trends in Wealth Management: 2021Top Trends in Wealth Management: 2021
Top Trends in Wealth Management: 2021
 
Top Trends in Payments: 2021
Top Trends in Payments: 2021Top Trends in Payments: 2021
Top Trends in Payments: 2021
 
Health Insurance Top Trends 2021
Health Insurance Top Trends 2021Health Insurance Top Trends 2021
Health Insurance Top Trends 2021
 
Top Trends in Retail Banking: 2021
Top Trends in Retail Banking: 2021Top Trends in Retail Banking: 2021
Top Trends in Retail Banking: 2021
 
Capgemini’s Connected Autonomous Planning
Capgemini’s Connected Autonomous PlanningCapgemini’s Connected Autonomous Planning
Capgemini’s Connected Autonomous Planning
 
Top Trends in Retail Banking: 2020
Top Trends in Retail Banking: 2020Top Trends in Retail Banking: 2020
Top Trends in Retail Banking: 2020
 
Top Trends in Life Insurance: 2020
Top Trends in Life Insurance: 2020Top Trends in Life Insurance: 2020
Top Trends in Life Insurance: 2020
 
Top Trends in Health Insurance: 2020
Top Trends in Health Insurance: 2020Top Trends in Health Insurance: 2020
Top Trends in Health Insurance: 2020
 
Top Trends in Payments: 2020
Top Trends in Payments: 2020Top Trends in Payments: 2020
Top Trends in Payments: 2020
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Alexa skills at dev oxx sarah saunders.cwin18.telford

  • 2. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 2 Building an Alexa Skill • Why? • What does it do? • How does it work? Demo… Application Walk-through Conclusions and Opinions on Alexa Development Agenda
  • 3. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 3 Building an Alexa Skill • Why? • What does it do? • How does it work? Demo… Application Walk-through Conclusions and Opinions on Alexa Development Agenda
  • 4. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 4 Platinum Sponsor - recruitment and promotion Theme: “It takes all types to make a team” Techy demos, talking points, catch peoples’ attention and interest Fun as a core value Why: Capgemini at Devoxx UK
  • 5. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 5 Community version of Myers Briggs personality test 32 questions, in the format “Do you prefer A or B”, where A and B are opposites Each must be answered on a scale of 1 to 5 An algorithm allocates you one of 16 personality types, comprising of a combination of four “base” personality type pairs (see below), based on your answers Questions are open source; modified by the psychology community How to convert someone’s vocal answer into a 1 to 5 scale How to get Alexa to recognise your answers (more on that later) Convert the OEJTS answer to a technology “type” Shorten the questionnaire to make it completable Fun, not opinionated Don’t offend anybody! (FAIL) Questionnaire Challenges What: Open Extended Jungian Type Scales Personality Types Introverted / Extroverted (I / E) Sensing / iNtuiting (S / N) Feeling / Thinking (F / T) Perceiving / Judging (P / J) } 16 combinations (e.g.) INTJ, ENTJ…
  • 6. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 6 Software Engineering “Personality Types” Server Side Dev Front End Dev DevOps New Tech Agile Coach ESFP, ISFP, ENFP ESTJ, ENTJ, ESFJ, ISFJ ENFJ, INFJ, INFP ISTJ, INTJ, INTP, ISTP ESTP, ENTP
  • 7. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 7 #DiversiTeams 
  • 9. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 9Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. Alexa Voice Services (AVS) Lambda FunctionInvocation Model - ASK Security Client APIs (Echo, Java..) include: • Wake Word logic • When to start and stop recording • Create sound file and send to Amazon server Server API: • Converts sound to text • Triggers Invocation Model How: Alexa Skill Components Browser based IDE JSON file Slots Types – MANY predefined types (inc. Names, Places…!) Define every possible recognizable answer to your questions Passes slot values to server – lambda or other Event-driven Javascript (or Java, Python, C#) Contains states to manage flow Use APIs to hook in other logic (ie sentiment analysis) Available “Skills” are linked via your AWS account Client API uses OAuth to authenticate with your AWS account – you grant it permission to access the skills in your account Token based authentication between invocation model of skill and server-side logic (ie lambda function)
  • 10. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 10 Interaction Model Drill-down - Types {“interactionModel”:{ "languageModel": { "invocationName":"analyse me“, "types": [ { "name": “QUIZ_ANSWER", "values": [ { "name": { "value": "make lists", "synonyms": [] } }, "name": { "value": "rely on memory", "synonyms": [] } } ………………………… and on and on
  • 11. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 11 Interaction Model Drill-down - Intents {“interactionModel”:{ "languageModel": { … "intents": [ { "name": "AMAZON.CancelIntent", "samples": [] }, "name": “AnswerIntent", "slots" : [ "name" : "QuizAnswer", "type" : "QUIZ_ANSWER" ] "samples": [ “{QuizAnswer}” “I {QuizAnswer}”, “Probably {QuizAnswer}” …… ]
  • 12. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 12 Interaction Model Drill-down – Custom Types in Intents { “name”: “AskNameIntent”, “samples”:[ “{sarah|Name}”, “It’s {sarah|Name}”, “My name is {sarah|Name}”, “I’m {sarah|Name}” ], “slots”:[ { “name”: “Name”, “type”:”AMAZON.LITERAL” } ] }
  • 13. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 13 Server Side Drill Down – States const states = { START: "_START", QUIZ: "_QUIZ", ASSERT: "_ASSERT" };
  • 14. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 14 Server Side Drill Down – States const startHandlers = Alexa.CreateStateHandler(states.START,{ "Start": function() { this.response.speak(WELCOME_MESSAGE).listen(HELP_MESSAGE); this.emit(":responseReady"); }, "QuizIntent": function() { console.log("QuizIntent Intent"); this.handler.state = states.QUIZ; this.emitWithState("Quiz"); } }); const quizHandlers = Alexa.CreateStateHandler(states.QUIZ, { "Quiz": function() { this.emitWithState("AskQuestion"); }, "AskQuestion": function() { this.emit(":ask", questions[counter]);, }, "HelpIntent": function() { // message specific to answering psychometric query }, "AnswerIntent": function() { var answer = getSlot(this.event.request.intent.slots); // This would be the answer to the above question ..... this.handler.state = states.ASSERT; this.emit(":ask", "Are you sure?"); }); const assertHandlers = Alexa.CreateStateHandler(states.ASSERT, { "HelpIntent": function() { // message specific to answering the are-you-sure query }, "AnswerIntent" : function() { var answer = getSlot(this.event.request.intent.slots); // This would be the response to the "are you sure?" question .... this.handler.state = states.QUIZ; // ready for the next question
  • 15. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 15 OEJTS questions require an answer between 1 and 5 How do we turn the user’s response into a number? • Capture the answer to each question. If the first answer is selected, weight as 2. If the second answer is selected, weight as 4. • For each question, have a follow-up question along the lines of “are you sure”? • Run the response to this second question through sentiment analysis to determine if positive or negative. • If positive, add 1 to first answer or subtract 1 from second answer (So, 2 becomes 1, 4 becomes 5) • If negative, subtract 1 from first answer or add 1 to second answer (So, 2 becomes 3 and 4 becomes 3) • If neutral, leave as-is Provide a sentence, receive a positivity scale 0 (negative) to 1 (positive) Text based – any vocal sentiment (sarcasm, pitch, volume, tone) is lost How does it work internally? • Neural network? Is this more accurate than 1 to 5? Problem: Input to Alexa is one sentence Sentiment REST API – theysay.io Add in some AI – Sentiment Analysis
  • 16. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 16Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 01 02 03 Lessons Learned When to use Voice Interfaces  Slow - slower than reading or typing or touch screen interaction  No need to use your hands – can multi task  Small input/output  Alexa / Siri / Google / Cortana are all quite different Voice Interface Development Skills  Understanding of Conversation structure  Language and Culture Specific  Do not create open-ended questions!  Use of Random to give a realistic feel Golden Rules of IoT  Address Security First – Alexa a good platform for this  Always have a manual override!  Be aware of GDPR
  • 17. Presentation Title | Author | Date © 2018 Capgemini. All rights reserved. 17 Voice interfaces are suitably advanced that they should always be considered an option Alexa skills are curiously limited Click to insert text People loved the OETJS – analyzing themselves, the human angle sarah.saunders@capgemini.com @sasaunde Questions / Comments? Conclusions

Editor's Notes

  1. O Logo de espadas deve ter mais espaço das pontas abaixo. Sugerir outros tipos de imagens/ telefone, fones.
  2. O Logo de espadas deve ter mais espaço das pontas abaixo. Sugerir outros tipos de imagens/ telefone, fones.
  3. Now to take away the magic
  4. Every answer needs to be mapped out as a type value or it will not be picked up
  5. Amazon provides a number of built-in intents (Start, stop help, cancel and so on); you need to add your own intents
  6. This works fine if I say “My name is Ermintrude”, and it works fine if I say “Sarah”, but if I just say “Ermintrude”, the skill does not pick up the data. The reasons behind this appear to be fairly complex, to do with the way Alexa’s algorithm determines when a user has started and completed a sentence. Just noise which does not directly map data in the intent is apparently unacceptable. It does have the added by-product of making Alexa skills more data-safe and secure; it’s nigh on impossible for a custom skill to “spy” on you and submit your conversation into the cloud. There are further limits to the Literal/Custom Slot format which prevent skills being able to do things like store dictated notes. There is an 8 to 10 second hard cut-off when AVS listens for input, so even using the most carefully structured literal wildcard intent your musings will be cut off at the knees!
  7. States represented as variables passed between stateless calls
  8. This works fine if I say “My name is Ermintrude”, and it works fine if I say “Sarah”, but if I just say “Ermintrude”, the skill does not pick up the data. The reasons behind this appear to be fairly complex, to do with the way Alexa’s algorithm determines when a user has started and completed a sentence. Just noise which does not directly map data in the intent is apparently unacceptable. It does have the added by-product of making Alexa skills more data-safe and secure; it’s nigh on impossible for a custom skill to “spy” on you and submit your conversation into the cloud. There are further limits to the Literal/Custom Slot format which prevent skills being able to do things like store dictated notes. There is an 8 to 10 second hard cut-off when AVS listens for input, so even using the most carefully structured literal wildcard intent your musings will be cut off at the knees!
  9. Fixar a posicao do titulo – sempre do lado esquerdo. Sempre que tiver muito texto o coluna deve sempre ser “ narrowed” , se nao fica dificil de ler. Colocar paragrafos no texto. Linha vertical deve ser mais fina e as pontas NUNCA devem ser arredondadas.
  10. Este slide eles acham que esta muito apertado. Mudar o estilo do texto do lado esquerdo para diferencia-lo do texto do lado direito. Menos texto e mais impactante “short introduction”. Coloccar este texto do lado esquerdo da mesma cor da forma e o fundo do dlide claro.