#Event – Materials used in the session [Introduction to Microsoft AI and Amazon Alexa]

Hi!

As always it is a pleasure to talk about Microsoft’s Artificial Intelligence platform, and if I also add the ability to create an Amazon Alexa Skill live integrating these 2 worlds, because the event is fun if or yes.

Now the classics, slides

And GitHub source code link

Happy Coding!

Greetings @ Toronto

El Bruno

Advertisements

#Event – Materiales utilizados en el evento [Introducción a Microsoft AI y Amazon Alexa]

Buenas!

Como siempre es un placer hablar sobre la plataforma de Inteligencia Artificial de Microsoft, y si además le sumo la capacidad de crear en vivo un Amazon Alexa Skill integrando estos 2 mundos, pues el evento es divertido si o si.

Ahora los clásicos, slides

Y source code en GitHub link

Happy Coding!

Saludos @ Toronto

El Bruno

#Event – Introduction to Microsoft AI and Amazon Alexa

cropped-cropped-holobruno.jpg

Hi!

This week I will be lucky enough to participate in several sessions where I will share some experiences and contents related to the Microsoft Artificial Intelligence platform.  It’s been more than 3 years when I started yo write and use Project Oxford (now knows as Cognitive Services). Today we have at our hands over than 30 services in the Cognitive Services Suite and even some as impressive as the brand new Custom Vision.

Note: I have to write a post commenting how to create a Compact Domain in Custom Vision and export it to use it from an Android or iOS App in offline mode.

So, next Tuesday night I will be giving a session at McMaster University, where I will show how to create Alexa Skills integrated with some Microsoft AI services.

Then on Thursday, January 25, I will be with Margaryta (@ in4Margaret) for Mississauga .Net User Group also talking about Microsoft AI. More details below

Margaryta and Bruno as duo will walk through the Microsoft AI platform and capabilities to allow any developer to infuse intelligence into their applications and target entirely new scenarios enabled by the latest innovations in AI. You’ll learn about API’s that provide object recognition, face detection and identification, emotion recognition, OCR, computer vision, video services, language understanding, sentiment analysis and more. They will also demonstrate how you can add customized intelligence to your solution or leverage AI services in conjunction with the Microsoft Bot Service.

Greetings @ Toronto

El Bruno

Events

#Event – Introducción a Microsoft AI y Amazon Alexa

cropped-cropped-holobruno.jpg

Buenas!

Esta semana tendré la suerte de participar en varias sesiones donde compartiré algunas experiencias y contenidos relacionados a la plataforma de Inteligencia Artificial de Microsoft. Hace mas de 3 años cuando comencé a escribir y utilizar sobre Project Oxford. Hoy tenemos a nuestra disposición mas de 30 servicios en Cognitive Services e inclusive algunos tan impresionantes como Custom Vision.

Nota: Tengo que escribir un post comentando como crear un Compact Domain y exportarlo para utilizarlo desde Android o iOS en entornos sin conexión.

Pues bien, el próximo martes por la noche estaré dando una sesión en McMaster University, donde mostrare como crear Alexa Skills integrados con algunos servicios de Microsoft AI.

Luego el jueves 25 de enero estaré junto a Margaryta (@in4Margaret) para Mississauga .Net User Group también hablando sobre Microsoft AI. Mas detalles a continuación

Margaryta and Bruno as duo will walk through the Microsoft AI platform and capabilities to allow any developer to infuse intelligence into their applications and target entirely new scenarios enabled by the latest innovations in AI. You’ll learn about API’s that provide object recognition, face detection and identification, emotion recognition, OCR, computer vision, video services, language understanding, sentiment analysis and more. They will also demonstrate how you can add customized intelligence to your solution or leverage AI services in conjunction with the Microsoft Bot Service.

Saludos @ Toronto

El Bruno

Events

Registro: Facebook Events

Registro: https://www.meetup.com/MississaugaNETUG/events/246767415/

#VS2017– Azure WebApi App, Amazon Alexa Skills and the error “I’m not sure what went wrong” (you get tired of listening!)

Hi!

Just over a month ago Amazon officially launched its Amazon Echo line in Canada. In Avanade we will host an event specially dedicated to Artificial Intelligence and Voice Interfaces. And now that the holiday season has finished, it’s time to share some of the lessons learned over the last few months working with Alexa Skills.

Using simple words to describe how an Alexa Skill works, we could say that the Skill allows us to connect the audio processing of Amazon Echo with an HTTP service. By default, Amazon proposes us to use an AWS Lambda. If we switch to the Azure world, we have several options, for example, Use a Azure Function or a website in a AppService.

I1

I choose the 2nd option and then it was time to configure my controllers to be compatible with the POST requests made by my Amazon Skill.

Note: If you work with .net there is a NuGet package for this, AlexaSkillsKit.Net

After configuring my Intents, Slots and the operation of my Skill, it’s time to test it. In the most minimalist tester in the history of the Internet, everything worked OK.

I2

The HTTP requests my Alexa skills performed communicated correctly with my App Service in Azure. Even in the new Test Simulator (Beta) everything worked properly.

I3

Note: The 2nd one is a really good Test environment. The default test interface is, like saying it without offending anyone, “very simple”.

Well, everything is working perfectly until the time to try it on the Amazon Echo. Every time I tested it, Alexa told me the following phrase:

“I’m not sure what went wrong”

I4

I spent a lot of time trying to find the error. I enabled all kinds of traces, both in Azure and in the Alexa Skills, and I could not find anything that works bad. At those moments I usually take advantage to go running and to clear my mind a little bit, but with the weather these days, I had to relax in other ways.

I5

The solution arrived to me when I was showing my girl and my children, how to program an Alexa Skill. I was thinking of creating something with Scratch so that my children can create their own conversations/skills with Alexa, when I realized that:

I had configured my device with Language English (Canada) and when you create a Skill, by default it is created in English (U. S).

I6

Note: It is still English, but you see that Amazon friends are sensitive about it 😀 Really, there are very clear reasons why skills have to be identified by country, legal issues, copyright and more.

Well, right now I have 2 solutions for my skills to work

  • Change the location of the device to United States
  • Add a new Language to my Alexa Skill

I7

Obviously the best is the 2nd option. And, while it is not as trivial as it seems, once my skill supports the new language, I no longer have to deal with the beautiful phrase

“I’m not sure what went wrong”

And finally I was able to continue testing my skills in the device!

In next posts I will comment on the quick way in which I have learned to have a Skill with multiple languages.

Happy Coding!

Greetings @ Toronto

El Bruno

References

#VS2017– Azure WebApi App, Amazon Alexa Skills y el error “I’m not sure what went wrong” (te cansas de escucharlo!)

Buenas!

Hace poco mas de un mes Amazon lanzo oficialmente su línea de Amazon Echo en Canada. En Avanade tendremos un evento especialmente dedicado a temas de Artificial Intelligence y Voice Interfaces. Y, ahora que ya ha pasado la época de fiestas, creo que es momento para compartir algunas de las lecciones aprendidas durante los últimos meses trabajando con Alexa Skills.

Simplificando mucho el funcionamiento de una Skill, podríamos decir que la misma es la que nos permite conectar el procesamiento de audio de Amazon Echo con un servicio HTTP. Por defecto Amazon nos propone utilizar una AWS Lambda. Si cambiamos al mundo de Azure, tenemos varias opciones, por ejemplo, utilizar una Azure Function o un website en una AppService.

I1

Yo opte por esta 2da opción y luego llegó el momento de configurar mis Controllers para que sean compatibles con las peticiones POST que realiza mi Amazon Skill.

Nota: Si trabajas con .Net hay un NuGet package para esto, AlexaSkillsKit.Net

Luego de configurar mis Intents, Slots y cerrar el funcionamiento de mi Skill, llego el momento de probarlo. En el tester mas minimalista de la historia de internet todo funcionaba OK.

I2

Las peticiones que realizaba mi Alexa Skills se comunicaban correctamente con mi App Service en Azure. Inclusive en el nuevo Test Simulator (Beta) todo funcionaba correctamente.

I3

Nota: El 2do es un simulador de test serio. La interfaz por defecto de test es, como decirlo sin ofender a nadie, “muy simple”.

Pues bien, todo funcionando perfectamente hasta el momento de probarlo en el Amazon Echo. Cada vez que lo probaba, Alexa me decía la siguiente frase:

“I’m not sure what went wrong”

I4

Estuve bastante tiempo intentando encontrar el error. Habilite todo tipo de trazas, tanto en Azure como en las Skills, y no pude encontrar nada que funcione mal. En esos momentos suelo aprovechar para salir a correr y despejarme un poco, aunque con el frio que hizo en estos días, tuve que relajarme de otras formas.

I5

La solución llego cuando estaba mostrándole a mi chica y a mis enanos, como programar una Skill. Estuve pensado crear algo con Scratch para que mis enanos puedan crear sus propias conversaciones / Skills con Alexa, cuando me di cuenta que:

Tenía configurado mi device con Language English (Canada) y que cuando se crea una Skill, por defecto la misma se crea en English (U.S).

I6

Nota: Sigue siendo English, pero se ve que los amigos de Amazon, son delicados al respecto 😀 Hay motivos muy claros del porque las Skills tienen que estar identificadas por país, cuestiones legales, de copyright y otros.

Pues bien, en este momento tengo 2 soluciones para que mis Skills funcionen

  • Cambiar la ubicación del device a United States
  • Agregar un nuevo Language a mi Alexa Skill

I7

Obviamente lo mejor es la 2da opción. Y, si bien no es tan trivial como parece, una vez que mi Skill soporta el nuevo lenguaje, ya no tengo que lidiar mas con la hermosa frase

“I’m not sure what went wrong”

¡Y por fin pude seguir probando mis Skills en el device!

En próximos posts comentare la forma rápida en la que he aprendido a tener una Skill con múltiples lenguajes.

Happy Coding!

Saludos @ Burlington

El Bruno

References