#Tutorial – Como crear un #Amazon #AlexaSkill con Visual Studio 2017, C# y #Azure (1 de N)

Buenas!

Después de un par de semanas de eventos donde Artificial Intelligence fue uno de los temas en los que mas me enfoque, me toca sacar tiempo para escribir el paso a paso sobre:

Como crear un Alexa Skill para Amazon Echo y conectarla con un WebSite en Azure.

La gente de Amazon es mas maja que el pan caliente y nos da todas las herramientas para crear estos elementos dentro del ecosistema de Amazon. Yo que soy mas bien simple, lo hare con un mix entre Amazon y Azure.

Lo primero que debemos hacer es darnos de alta en el Amazon Developer Portal.

I1

Y entrar a la sección Amazon Alexa para crear nuestra 1ra Skill. Una vez que tengamos nuestra cuenta de Developer podremos ver las opciones de Alexa

  • Alexa Skills Kit
  • Alexa Voice Service

Seleccionamos la 1ra opción y luego la opción [Add a new Skill]

I2

La idea de este tutorial es aprender como crear y conectar una Skill con un servicio en Azure. Si quieres comprender mas a fondo como funcionan las Skills, te recomiendo revisar las referencias.

Pues bien, la definición de una Skill consta de 7 secciones. Comenzamos por la sección de información de la Skill. En la misma debemos definir el tipo de Skill, que será [Custom Interaction Model], el lenguaje, nombre e [Invocation name] de la Skill.

En este caso, la Skill que creare será una que permita conocer un poco de información de los eventos que los que he participado. [bruno events] parece un buen Invocation Name para utilizar.

I3

En este caso no necesitamos que nuestra Skill interactuar con el Audio Player ni con el visor de Videos, con lo que dejamos las Global Fields sin modificar.

El siguiente paso es definir nuestro lenguaje de interacción con la Skill. Si eres mas del mundo de Microsoft, esta sección es lo que en Cognitive Services conocemos como LUIS: Language Understanding Intelligent Service.

La definición del Schema se define en formato JSON basado en una definición que cuesta leer. Hasta hace poco tiempo, esto era editar texto a mano. Por suerte, podemos utilizar un Skill Builder que nos presenta una interfaz mucho más amigable para esta tarea.

I4

Importante: Aquí mi consejo es ver los 3 videos que hay en el Skill Builder para comprender como utilizar el mismo.

Además de los 3 Intents que se agregan en un Skill por defecto, crearemos un nuevo Intent llamado [GetEventInformationIntent]

I5

Antes de completar información del Intent, he decidido crear un nuevo Slot Type con los diferentes temas que trato en mis eventos. El mismo se llamará [EventTopic]

I6

Estos son los valores que agregare a [EventTopic]. Me centrare en los últimos 5 o 10 eventos y estos temas serán suficientes para tener una búsqueda coherente

I7

Ahora es momento de volver al Intent [GetEventInformationIntent] y agregar un par de utterances. En este caso cada una de mis sample utterances utilizara el Slot Type que hemos creado para dar sentido a la pregunta que le haremos a Alexa

I8

Los siguientes pasos son un clásico para los developers, Save Model & Build Model.

I9

Y hasta aquí llega este post, en los siguientes posts veremos como crear un website en Azure y como conectar al mismo con este Skill.

Happy Coding!

Saludos @ Burlington

El Bruno

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s