Share
Embed
Transcript
19 slides
-
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA Chatbot Kezako ? 2 “Un
chatbot (ou agent conversationnel) est un programme informatique capable de simuler une conversation naturelle (écrite ou orale) avec un humain” -
Architecture 4 Chatbot Moteur conversationnel Utilisateur Question de l’utilisateur Texte
brut Intention / entités Réponse Moteur de langage naturel (NLU) Interprétation Formulation de la réponse SI Métier Calcul de la meilleure réponse Moteur de règles Action ou recherche d’informations API / base de données -
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA 7 Ecosystème Alexa Software Source
: https://fr.slideshare.net/AmazonWebServices/session-7-byilding-voice-enabled-alexa -
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA Vocabulaire Alexa 8 ¤ Skill
: « compétence » de l’assistant (avec son lot de “fonctionnalités”) ¤ 1 skill ~ 1 application ¤ Intent : intention de l’utilisateur, ce qu’il souhaite obtenir de l’assistant • 1 intent ~ 1 “fonctionnalité” § Il existe des intents prédéfinis (HelpIntent, YesIntent, CancelIntent, RepeatIntent, …) § Il est possible d’en écrire des customs § Ex : “Quelle sera la météo demain à Lausanne ?” ¤ Slot / Slot type : équivalent de l’entité, sous-ensemble de l’intent donnant des éléments de contexte § 1 slot ~ 1 paramètre § Il existe des slot types prédéfinis (Artist, Color, Country, Date, Food, Movie, Sport, …) § Il est possible d’en écrire des customs ou d’en étendre des prédéfinis § Ex : “demain” (AMAZON.DATE), “Lausanne” (AMAZON.EUROPE_CITY) ¤ Sample Utterance : exemples d’énoncé d’un intent. À décliner autant que possible ! § Ex : “Quel temps fera il demain à Lausanne ?” / “Donne moi la météo pour demain à Lausanne” / “Fera- il beau demain à Lausanne ?” / “Va-t-il pleuvoir demain à Lausanne ?” / … Interaction Model -
Skill « Game Of Thrones » Architecture 11 user Alexa
skill Lambda function Node.js Moteur de langage naturel (NLU) Moteur conversationnel CloudWatch Monitoring Availability Zone us-east-1 API JSON JSON Voice / Text https://anapioficeandfire.com/ -
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA Skill « Game Of Thrones
» Intent Schema 12 : [ { : "WhoIsIntent", : [ { : "characterslot", : "CHARACTER" } ], /* utterances */ : [ "give me information about {characterslot}", "who is {characterslot}", "tell me more about {characterslot}", "{characterslot}" ] } ] : [ { : "CHARACTER", : [ { : { : "daenerys targaryen", : [] }, {, : { : "jon snow", : [] } }, // ... } ] Moteur de langage naturel (NLU) Alexa skill -
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA Skill « Game Of Thrones
» Event (JSON) 13 { "session": { "sessionId": "SessionId.Session1", "application": { "applicationId": "amzn1.ask.skill.xyz" }, "user": { "userId": "amzn1.ask.account.testaccount1" }, "new": true }, "request": { "type": "IntentRequest", "requestId": "615dbc98-b1a6-11e7-b212-e3c588b98480", "timestamp": "2016-05-19T01:07:55Z", "intent": { "name": "WhoIsIntent", "slots": { "characterslot": { "name": "characterslot", "value": "Jon Snow" } } }, "locale": "en-US" }, "version": "1.0" } Alexa skill Lambda function JSON -
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA Skill « Game Of Thrones
» Event Handler 14 Lambda function Node.js Moteur conversationnel exports.handler = function (event, context) { var alexa = Alexa.handler(event, context); alexa.registerHandlers(handlers); alexa.execute(); }; var handlers = { 'WhoIsIntent' : function () { var characterSlot = this.event.request.intent.slots.characterslot; this.attributes['character'] = characterSlot.value; this.response.speak(' Hello '+ characterSlot.value) .listen('Do you want more information?'); this.emit(':responseReady'); } } -
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA Skill « Game Of Thrones
» Response (JSON) 15 Alexa skill Lambda function JSON { "version": "1.0", "response": { "shouldEndSession": false, "outputSpeech": { "type": "SSML", "ssml": "<speak> Hello Jon Snow </speak>" }, "reprompt": { "outputSpeech": { "type": "SSML", "ssml": "<speak> Do you want more information? </speak>" } } }, "sessionAttributes": { "character": "Jon Snow" } } -
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA 16 Skill « Game Of
Thrones » Live Code / Demo -
SOFTSHAKE> CREATION D’UN CHATBOT ALEXA 17 Skill « Game Of
Thrones » Tests avec Echosim.io -
OCTO © 2017 - Reproduction interdite sans autorisation écrite préalable
THERE IS A BETTER WAY OCTO RECRUTE WE NEED Y U Expertise Tribes Trust Honesty Sharing Employee First Curiosity #1