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.
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.
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.
Posteriormente, tenemos que obtener las claves de Cognitive Services para poder conectarnos cuando realicemos las llamadas a la api Computer Vision
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!