SlideShare una empresa de Scribd logo
1 de 7
Descargar para leer sin conexión
Ing. Vicente Guzmán
@LucioMSP
Conceptos Generales [Construyendo mi Alexa Skill]
En mi artículo anterior (Hi Alexa [Skills]) vimos una introducción sobre el servicio de voz de Amazon y las
“aplicaciones (habilidades)” que se le pueden integrar, estas mejormente conocidas como Skills.
Si bien ya sabemos que podemos hacer que Alexa pueda ejecutar cualquier tipo de tarea a través de
comandos de voz, hay que saber como es que funciona dicho proceso.
Para poder desarrollar una Skill es necesario el Alexa Skill Kit (ASK), el cual recordemos que es una
colección de APIs y herramientas, que incluye el reconocimiento de voz, la codificación de texto a voz y el
procesamiento del lenguaje natural.
Ahora bien, ¿cómo está compuesto una Alexa Skill?
Los skills de Alexa constan de dos componentes principales: Skill Interface y el Skill Service.
En este articulo nos centraremos en el primero, la cual se define como la interfaz de la habilidad o como
me gusta definirlo, la parte del “cliente”, esto usando la Alexa Developer Console.
Ing. Vicente Guzmán
@LucioMSP
Una vez que accedemos con nuestra cuenta podemos iniciar a crear nuestras skills. Si ya hemos generado
una que otra, podremos ver el listado de estas con cierta información, así como con acciones directas
sobre algunas secciones como las analíticas o el poder editar la misma o eliminarla. Cabe mencionar que
cuando publiquemos una skill, esta aparecerá por partida doble, pero con distinto estado, la de desarrollo
(In Development) y la que está publicada (Live), en la "tienda de Alexa skills" de Amazon.
Manos a la obra
Al comenzar a crear nuestro skill se nos solicitan tres cosas: el nombre, idioma y el tipo.
Puedes consultar los distintos tipos aquí.
Los tipos disponibles dependen del idioma por defecto que seleccionemos. El idioma como bien saben
será el “Spanish (MX)” y el tipo que elegiremos para este tutorial será "Custom". Una vez generado, se
nos mostrará una ventana que nos dará acceso a todo lo necesario para el desarrollo de la skill.
Siendo sincero, la mayoría del tiempo nos centraremos en la pestaña "Build" de la consola.
Ing. Vicente Guzmán
@LucioMSP
Siguiendo el "Skill builder checklist" del lado derecho completaremos de manera rápida lo mínimo
necesario para tener un skill listo. Para esto, enfoquémonos en el lado izquierdo, aquí existen dos partes
básicas pero relevantes: el interaction model del skill y el endpoint, el que indica el server que gestionará
las peticiones al skill.
Recordemos, en este articulo trabajaremos solo en la primera parte, así como de todos sus descendientes.
Interaction Model
El interaction model consta de 4 partes, pero dos “obligatorias”:
• El nombre de invocación de la Skill.
• El conjunto de Intents (acciones) que deben corresponder con las peticiones de los clientes.
Nombre de Invocación
Este es de suma importancia, puesto que es el cual el usuario use para comenzar a interactuar con nuestra
skill y aunque parezca sencillo, debe cumplir una serie de requisitos. Por eso antes de querer tirar código
se recomienda demasiado el hacer una buena elección del nombre del skill que se quiere desarrollar,
debido a que referente a esto es que el usuario podrá invocarlo, el cual como sabemos ejecuta un intent
de una sola vez, por ejemplo, "Alexa, abre frases de películas".
Ing. Vicente Guzmán
@LucioMSP
Intents
Un intent es en pocas palabras “lo que el usuario quiere que haga la skill cuando se activa por una
determinada petición”. Ejemplo: Dime una frase de película.
Si nos adentramos más detalladamente, un intent está compuesto de dos partes: los utterances
(sentencias) que van a servir para invocarlo y los slots (argumentos) que puede tener, estos últimos son
opcionales.
A tener en cuenta:
• Un mismo intent no puede contener dos utterances repetidos.
• Los utterance los usa Alexa para inferir que intent corresponde a lo que desea hacer el usuario.
Nota: Cuando se manda a revisión, el proceso de certificación es una de las cosas que validan, en caso de
tener errores, nos harán saber a través de un correo y tendremos que corregirlo (experiencia propia).
Intents obligatorios
Al crear un nuevo skill, este conlleva 4 Intents obligatorios y predefinidos ya por Alexa, los cuales hay que
considerar puesto que son de suma importancia, estos se encuentran debajo de "Built-in Intents".
La verdad es fácil de comprender, debido a que no cuentan con slots, estos se pueden interpretar de la
siguiente manera:
• CancelIntent – se usa para cancelar alguna interacción en proceso
• HelpIntent – es utilizado para solicitar ayuda al skill en proceso
• StopIntent – normalmente se centra en detener por completo el skill
• NavigateHomeIntent – este se podría entender como un "regresa al inicio"
Ing. Vicente Guzmán
@LucioMSP
Para cada uno de estos, es necesario declararle un/os utterances para su invocación.
Custom Intents
Estos intents serán los que definan realmente los casos de uso que queremos cubrir en nuestro skill. Para
este ejemplo solo se necesita uno: solicitar las frases de las películas.
Al crear un intent tenemos la opción de hacer uso uno existente de la librería de Alexa, como los built-in
intent que eran obligatorios, o uno custom. Para este tutorial no hay uno existente que nos sirva.
El nombre del intent debe ser explicativo de la acción correspondiente que se quiere cubrir. Llamémosle
"FraseIntent", el cual servirá para cubrir la petición de las frases. Una vez creado, lo único que tenemos
que añadir son los utterance para ser invocado.
Ing. Vicente Guzmán
@LucioMSP
Hay que pensar bien los utterances para el intent que se agregaran, puesto que entre más se añadan
mejor será la identificación. Aquí les dejo una guía de buenas prácticas por idioma.
Build Model
En la parte superior se encuentra el botón que nos permitirá construir nuestro modelo, presionémoslo.
Cabe destacar que el modelo que se genera es un JSON con toda la información que hemos ido
construyendo con la consola. Susodicho se puede modificar una vez generado.
Ing. Vicente Guzmán
@LucioMSP
De momento es todo en esta primera entrega, en el siguiente articulo veremos como hacer la parte server
utilizando AWS Lambda y el cómo vincular este con nuestro skill para poder hacer una primera prueba
completa de su funcionamiento.
Mas información: Amazon Developer | Alexa Skills Kit

Más contenido relacionado

La actualidad más candente

La actualidad más candente (15)

Actionscript
ActionscriptActionscript
Actionscript
 
Colegio Venecia Trabajo #2 Gina Franco
Colegio Venecia Trabajo #2 Gina FrancoColegio Venecia Trabajo #2 Gina Franco
Colegio Venecia Trabajo #2 Gina Franco
 
Alejandra vargas
Alejandra vargasAlejandra vargas
Alejandra vargas
 
Actionscrip 30
Actionscrip 30Actionscrip 30
Actionscrip 30
 
Action scrips
 Action scrips Action scrips
Action scrips
 
Sandra 1101
Sandra  1101Sandra  1101
Sandra 1101
 
Complemento
ComplementoComplemento
Complemento
 
Natalia camargo sanchez 1102 j.t
Natalia camargo sanchez 1102 j.tNatalia camargo sanchez 1102 j.t
Natalia camargo sanchez 1102 j.t
 
Jeison bello Trabajo n° 2
Jeison bello Trabajo  n° 2 Jeison bello Trabajo  n° 2
Jeison bello Trabajo n° 2
 
Action script 3
Action script 3Action script 3
Action script 3
 
Trabajo de multimedia 2
Trabajo de multimedia 2Trabajo de multimedia 2
Trabajo de multimedia 2
 
Andres alexis canizales (1)
Andres alexis canizales (1)Andres alexis canizales (1)
Andres alexis canizales (1)
 
Action script
Action scriptAction script
Action script
 
Colegio venecia . maria antonio 11 02
Colegio venecia . maria antonio 11 02Colegio venecia . maria antonio 11 02
Colegio venecia . maria antonio 11 02
 
Flash
FlashFlash
Flash
 

Similar a Conceptos generales [construyendo mi Alexa Skill]

Similar a Conceptos generales [construyendo mi Alexa Skill] (20)

Monik
MonikMonik
Monik
 
Action script 3.0
Action script 3.0Action script 3.0
Action script 3.0
 
Action script 3.0
Action script 3.0Action script 3.0
Action script 3.0
 
Gragiel aragon Action Scrip 3
Gragiel aragon Action Scrip 3Gragiel aragon Action Scrip 3
Gragiel aragon Action Scrip 3
 
Hi Alexa [Skills]
Hi Alexa [Skills]Hi Alexa [Skills]
Hi Alexa [Skills]
 
Actionscript
ActionscriptActionscript
Actionscript
 
Action Script
Action ScriptAction Script
Action Script
 
Action script
Action scriptAction script
Action script
 
Action script
Action scriptAction script
Action script
 
Action script
Action scriptAction script
Action script
 
Trabajo de gestión de proyecto (1)
Trabajo de gestión de proyecto (1)Trabajo de gestión de proyecto (1)
Trabajo de gestión de proyecto (1)
 
Vale 11
Vale 11Vale 11
Vale 11
 
Marcela montoya
Marcela montoyaMarcela montoya
Marcela montoya
 
Marcela montoya
Marcela montoyaMarcela montoya
Marcela montoya
 
Francy velandia
Francy velandiaFrancy velandia
Francy velandia
 
ActionScript 3.0 GERMAN MIELES11-2
ActionScript 3.0 GERMAN MIELES11-2ActionScript 3.0 GERMAN MIELES11-2
ActionScript 3.0 GERMAN MIELES11-2
 
Aldair martinez.2
Aldair martinez.2Aldair martinez.2
Aldair martinez.2
 
Jowin Rojas Venecia IED
Jowin Rojas Venecia IEDJowin Rojas Venecia IED
Jowin Rojas Venecia IED
 
Angie tovar (1)
Angie tovar (1)Angie tovar (1)
Angie tovar (1)
 
Actionscrip linakrdona n2
Actionscrip linakrdona n2Actionscrip linakrdona n2
Actionscrip linakrdona n2
 

Más de Vicente Gerardo Guzman Lucio

Bienvenido .Net MAUI - la evolución de Xamarin.Forms
Bienvenido .Net MAUI - la evolución de Xamarin.FormsBienvenido .Net MAUI - la evolución de Xamarin.Forms
Bienvenido .Net MAUI - la evolución de Xamarin.FormsVicente Gerardo Guzman Lucio
 
Consumiendo un servicio externo con Axios en Alexa
Consumiendo un servicio externo con Axios en AlexaConsumiendo un servicio externo con Axios en Alexa
Consumiendo un servicio externo con Axios en AlexaVicente Gerardo Guzman Lucio
 

Más de Vicente Gerardo Guzman Lucio (20)

GPPB2024 - Integrando ChatGPT en Power Automate
GPPB2024 - Integrando ChatGPT en Power AutomateGPPB2024 - Integrando ChatGPT en Power Automate
GPPB2024 - Integrando ChatGPT en Power Automate
 
Introducción a Amazon Alexa.pptx
Introducción a Amazon Alexa.pptxIntroducción a Amazon Alexa.pptx
Introducción a Amazon Alexa.pptx
 
Creando un Chatbot en C# con ChatGPT.pdf
Creando un Chatbot en C# con ChatGPT.pdfCreando un Chatbot en C# con ChatGPT.pdf
Creando un Chatbot en C# con ChatGPT.pdf
 
ChatGPT & Alexa.pptx
ChatGPT & Alexa.pptxChatGPT & Alexa.pptx
ChatGPT & Alexa.pptx
 
Bienvenido .Net MAUI - la evolución de Xamarin.Forms
Bienvenido .Net MAUI - la evolución de Xamarin.FormsBienvenido .Net MAUI - la evolución de Xamarin.Forms
Bienvenido .Net MAUI - la evolución de Xamarin.Forms
 
Conectando un Azure Bot con una Alexa Skill
Conectando un Azure Bot con una Alexa SkillConectando un Azure Bot con una Alexa Skill
Conectando un Azure Bot con una Alexa Skill
 
Azure DevOps y Blazor Web Assembly
Azure DevOps y Blazor Web AssemblyAzure DevOps y Blazor Web Assembly
Azure DevOps y Blazor Web Assembly
 
Desarrollo de Interfaces de Voz: Alexa Skills
Desarrollo de Interfaces de Voz: Alexa SkillsDesarrollo de Interfaces de Voz: Alexa Skills
Desarrollo de Interfaces de Voz: Alexa Skills
 
Blazor vs VUE
Blazor vs VUEBlazor vs VUE
Blazor vs VUE
 
Introducción a Blazor
Introducción a BlazorIntroducción a Blazor
Introducción a Blazor
 
Infraestructura como Código en Azure
Infraestructura como Código en AzureInfraestructura como Código en Azure
Infraestructura como Código en Azure
 
Diseño de Experiencias de Voz con Amazon Alexa
Diseño de Experiencias de Voz con Amazon AlexaDiseño de Experiencias de Voz con Amazon Alexa
Diseño de Experiencias de Voz con Amazon Alexa
 
Alexa Skill con .NETCore & AWS Lambda
Alexa Skill con .NETCore & AWS LambdaAlexa Skill con .NETCore & AWS Lambda
Alexa Skill con .NETCore & AWS Lambda
 
Skills Nights - Vol.III - Primeros Pasos
Skills Nights - Vol.III - Primeros PasosSkills Nights - Vol.III - Primeros Pasos
Skills Nights - Vol.III - Primeros Pasos
 
¿Qué es la Nube?
¿Qué es la Nube?¿Qué es la Nube?
¿Qué es la Nube?
 
Consumiendo un servicio externo con Axios en Alexa
Consumiendo un servicio externo con Axios en AlexaConsumiendo un servicio externo con Axios en Alexa
Consumiendo un servicio externo con Axios en Alexa
 
La era de los Chatbots
La era de los ChatbotsLa era de los Chatbots
La era de los Chatbots
 
Android 64x con Xamarin.Forms
Android 64x con Xamarin.FormsAndroid 64x con Xamarin.Forms
Android 64x con Xamarin.Forms
 
Creando nuestra propia Skill de YouTube
Creando nuestra propia Skill de YouTubeCreando nuestra propia Skill de YouTube
Creando nuestra propia Skill de YouTube
 
Alexa Skill en 5 pasos
Alexa Skill en 5 pasosAlexa Skill en 5 pasos
Alexa Skill en 5 pasos
 

Conceptos generales [construyendo mi Alexa Skill]

  • 1. Ing. Vicente Guzmán @LucioMSP Conceptos Generales [Construyendo mi Alexa Skill] En mi artículo anterior (Hi Alexa [Skills]) vimos una introducción sobre el servicio de voz de Amazon y las “aplicaciones (habilidades)” que se le pueden integrar, estas mejormente conocidas como Skills. Si bien ya sabemos que podemos hacer que Alexa pueda ejecutar cualquier tipo de tarea a través de comandos de voz, hay que saber como es que funciona dicho proceso. Para poder desarrollar una Skill es necesario el Alexa Skill Kit (ASK), el cual recordemos que es una colección de APIs y herramientas, que incluye el reconocimiento de voz, la codificación de texto a voz y el procesamiento del lenguaje natural. Ahora bien, ¿cómo está compuesto una Alexa Skill? Los skills de Alexa constan de dos componentes principales: Skill Interface y el Skill Service. En este articulo nos centraremos en el primero, la cual se define como la interfaz de la habilidad o como me gusta definirlo, la parte del “cliente”, esto usando la Alexa Developer Console.
  • 2. Ing. Vicente Guzmán @LucioMSP Una vez que accedemos con nuestra cuenta podemos iniciar a crear nuestras skills. Si ya hemos generado una que otra, podremos ver el listado de estas con cierta información, así como con acciones directas sobre algunas secciones como las analíticas o el poder editar la misma o eliminarla. Cabe mencionar que cuando publiquemos una skill, esta aparecerá por partida doble, pero con distinto estado, la de desarrollo (In Development) y la que está publicada (Live), en la "tienda de Alexa skills" de Amazon. Manos a la obra Al comenzar a crear nuestro skill se nos solicitan tres cosas: el nombre, idioma y el tipo. Puedes consultar los distintos tipos aquí. Los tipos disponibles dependen del idioma por defecto que seleccionemos. El idioma como bien saben será el “Spanish (MX)” y el tipo que elegiremos para este tutorial será "Custom". Una vez generado, se nos mostrará una ventana que nos dará acceso a todo lo necesario para el desarrollo de la skill. Siendo sincero, la mayoría del tiempo nos centraremos en la pestaña "Build" de la consola.
  • 3. Ing. Vicente Guzmán @LucioMSP Siguiendo el "Skill builder checklist" del lado derecho completaremos de manera rápida lo mínimo necesario para tener un skill listo. Para esto, enfoquémonos en el lado izquierdo, aquí existen dos partes básicas pero relevantes: el interaction model del skill y el endpoint, el que indica el server que gestionará las peticiones al skill. Recordemos, en este articulo trabajaremos solo en la primera parte, así como de todos sus descendientes. Interaction Model El interaction model consta de 4 partes, pero dos “obligatorias”: • El nombre de invocación de la Skill. • El conjunto de Intents (acciones) que deben corresponder con las peticiones de los clientes. Nombre de Invocación Este es de suma importancia, puesto que es el cual el usuario use para comenzar a interactuar con nuestra skill y aunque parezca sencillo, debe cumplir una serie de requisitos. Por eso antes de querer tirar código se recomienda demasiado el hacer una buena elección del nombre del skill que se quiere desarrollar, debido a que referente a esto es que el usuario podrá invocarlo, el cual como sabemos ejecuta un intent de una sola vez, por ejemplo, "Alexa, abre frases de películas".
  • 4. Ing. Vicente Guzmán @LucioMSP Intents Un intent es en pocas palabras “lo que el usuario quiere que haga la skill cuando se activa por una determinada petición”. Ejemplo: Dime una frase de película. Si nos adentramos más detalladamente, un intent está compuesto de dos partes: los utterances (sentencias) que van a servir para invocarlo y los slots (argumentos) que puede tener, estos últimos son opcionales. A tener en cuenta: • Un mismo intent no puede contener dos utterances repetidos. • Los utterance los usa Alexa para inferir que intent corresponde a lo que desea hacer el usuario. Nota: Cuando se manda a revisión, el proceso de certificación es una de las cosas que validan, en caso de tener errores, nos harán saber a través de un correo y tendremos que corregirlo (experiencia propia). Intents obligatorios Al crear un nuevo skill, este conlleva 4 Intents obligatorios y predefinidos ya por Alexa, los cuales hay que considerar puesto que son de suma importancia, estos se encuentran debajo de "Built-in Intents". La verdad es fácil de comprender, debido a que no cuentan con slots, estos se pueden interpretar de la siguiente manera: • CancelIntent – se usa para cancelar alguna interacción en proceso • HelpIntent – es utilizado para solicitar ayuda al skill en proceso • StopIntent – normalmente se centra en detener por completo el skill • NavigateHomeIntent – este se podría entender como un "regresa al inicio"
  • 5. Ing. Vicente Guzmán @LucioMSP Para cada uno de estos, es necesario declararle un/os utterances para su invocación. Custom Intents Estos intents serán los que definan realmente los casos de uso que queremos cubrir en nuestro skill. Para este ejemplo solo se necesita uno: solicitar las frases de las películas. Al crear un intent tenemos la opción de hacer uso uno existente de la librería de Alexa, como los built-in intent que eran obligatorios, o uno custom. Para este tutorial no hay uno existente que nos sirva. El nombre del intent debe ser explicativo de la acción correspondiente que se quiere cubrir. Llamémosle "FraseIntent", el cual servirá para cubrir la petición de las frases. Una vez creado, lo único que tenemos que añadir son los utterance para ser invocado.
  • 6. Ing. Vicente Guzmán @LucioMSP Hay que pensar bien los utterances para el intent que se agregaran, puesto que entre más se añadan mejor será la identificación. Aquí les dejo una guía de buenas prácticas por idioma. Build Model En la parte superior se encuentra el botón que nos permitirá construir nuestro modelo, presionémoslo. Cabe destacar que el modelo que se genera es un JSON con toda la información que hemos ido construyendo con la consola. Susodicho se puede modificar una vez generado.
  • 7. Ing. Vicente Guzmán @LucioMSP De momento es todo en esta primera entrega, en el siguiente articulo veremos como hacer la parte server utilizando AWS Lambda y el cómo vincular este con nuestro skill para poder hacer una primera prueba completa de su funcionamiento. Mas información: Amazon Developer | Alexa Skills Kit