Las ventajas que te ofrece Microsoft Azure y el mundo.NET

Los bots pueden ser más inteligentes (Parte I)

Desde hace ya algunos años, los bots conversacionales están presentes en prácticamente todos los ambientes imaginables para ayudarnos con tareas más o menos simples en las que pueden aliviar el trabajo de operadores humanos.

La última revolución de estos bots ha sido otorgarles inteligencia, pero no sólo a nivel conversacional, donde diferentes agentes de inteligencia lingüística como LUIS permiten que la conversación con el bot sea más natural, sino que además se ha podido integrar inteligencia a otros niveles, aplicando servicios cognitivos como Azure Cognitive Services o Azure Machine Learning.

En ENCAMINA disponemos de diversos productos basados en Bots conversaciones integrados con servicios cognitivos y machine learning y, todos ellos, aportan al usuario  mayor valor a la hora de interactuar ya que, gracias a esta inteligencia que les otorgamos, son capaces de detectar necesidades de los usuarios o identificarlos y categorizarlos para una mejor atención.

Primeros pasos

Lo primero es crear nuestro primer Bot Conversacional siguiendo las instrucciones de este artículo de la documentación oficial y comprobar que todo funciona correctamente usando el Bot Framework Emulator.

Creación de un proyecto usando la plantilla de Bot Framework v4

Creación de un proyecto usando la plantilla de Bot Framework v4

Probando el bot en local usando el Bot Framework Emulator

Probando el bot en local usando el Bot Framework Emulator

En GitHub, Microsoft dispone de un repositorio con una amplia gama de ejemplos de los que podemos sacar muchas ideas para comenzar con nuestro proyecto.

Agregando Servicios Cognitivos

En este artículo quiero explicaros cómo conectar vuestro bot con Azure Cognitive Services, en concreto con la api Computer Vision, para obtener información acerca de las imágenes que le enviemos al bot.

Creando el servicio de Azure Cognitive Services

En primer lugar debemos ir al portal de Azure con nuestras credenciales y agregar un servicio de Cognitive Services tal y como se muestra en las siguientes imágenes.

Buscar Cognitive Services

Buscar Cognitive Services

Aceptar condiciones y crear

Establecer la configuración inicial de Cognitive Services

Información general

Conectando Cognitive Services con el bot

Hasta el momento sólo hemos realizado la configuración previa de las piezas necesarias para nuestra solución, pero ahora procederemos a realizar los primeros cambios del código del proyecto, comenzando por agregar el sdk de Computer Vision Api mediante Nuget.

Agregar sdk de Computer Vision

Posteriormente, tenemos que obtener las claves de Cognitive Services para poder conectarnos cuando realicemos las llamadas a la api Computer Vision

Obtener Key para los servicios cognitivos

Continuamos configurando nuestra solución, añadiendo los parámetros al archivo de configuración appsettings.json y lo haremos en una sección propia tal y como se muestra a continuación:

"CognitiveServices": {
  "Name": "MySmartBotCognitiveServices",
  "Key": "MYALPHANUMERICKEY"
}

Por último, tendremos que indicarle al bot que pre-cargue la configuración de Cognitive Services y que así pueda usarla cuando sea necesario. Para ello, en el fichero Startup.cs, dentro del método ConfigureServices añadiremos una línea para realizar la carga

services.Configure<CognitiveServicesSettings>(Configuration.GetSection("CognitiveServices"));

Con esto ya estamos en disposición de usar los servicios cognitivos dentro de nuestro bot (no sólo la api Computer Vision), otorgándole así algo de inteligencia que lo hará más funcional y con ello, aportando muchísimo más valor a los usuarios.

Hasta aquí esta primera parte del artículo. En el próximo veremos cómo realizar las llamadas a la api Computer Vision, obtener la información resultante y mostrársela a los usuarios.

See you coding!

mm

Sobre Santiago Porras Rodríguez

Innovation Team Leader at ENCAMINA | MVP in Developer Technologies. Apasionado por las nuevas tecnologías. Colaboro con la comunidad de desarrolladores escribiendo artículos en mi blog personal y ocasionalmente en CompartiMOSS.com. Además, soy uno de los coordinadores de TenerifeDev, grupo de usuarios de .NET de Tenerife y de otros grupos como Comunidad Office 365. Puedes encontrarme en la red microparticipando en Twitter con el usuario @saintwukong
Esta entrada ha sido publicada en Microsoft Azure, Microsoft Bot Framework, Microsoft Cognitive Services, Vision y etiquetada como , , . Enlace permanente .
Suscríbete a Piensa en Sofware desarrolla en Colores

Suscríbete a Piensa en Sofware desarrolla en Colores

Recibe todas las actualizaciones semanalmente de nuestro blog

You have Successfully Subscribed!

ENCAMINA, piensa en colores