Cómo crear un bot de forma sencilla (2 y fin)
En el post anterior "Cómo crear un bot de forma sencilla (...)" explicamos qué es un bot, y para qué se suelen utilizar. También propusimos crear un Chatbot tipo FAQ basándonos en nuestro Diccionario Tecnológico LUCA. Para ello, comenzamos creando una base de conocimientos en forma de preguntas y respuestas con QnA Maker. En este segundo post, veremos cómo pasar de esa KB a un chatbot publicado en Skype. Paso a paso.
En el primer post, creamos el servicio Datapedia_LUCA sobre la KB de preguntas y respuestas de nuestro diccionario tecnológico generada en QnA Maker. Ahora vamos a dar los siguientes pasos:
- Publicaremos la KB en Azure, conectada con el servicio
- Crearemos un Bot en Azure, y lo probaremos
- Conectaremos el Bot con la KB de la que tendrá que obtener sus respuestas
- Lo publicaremos en Skype
Publicar la KB en Azure
Desde el portal de QnA Maker, vemos las bases de datos que tenemos configuradas. En este caso, sólo una.
Al abrirla, vemos el formato de preguntas y respuestas que ya vimos en el post anterior.
Ahora vamos a publicar esta KB en Azure mediante el comando Publish.

Crear el servicio Chatbot
Ha llegado el momento de crear el Chatbot. Para ello, nos vamos al portal de Azure, donde, si recordamos, ya habíamos creado el servicio Datapedia_LUCA desde QnA Maker.
Figura 5: Vista en Azure de los servicios creados desde QnA Maker.Para agregar un nuevo recurso, seleccionamos la opción de menú "+ Crear un recurso", y en el buscador ponemos por ejemplo web app, o bot:
Figura 6: Buscamos recursos en Azure MarketplaceDe entre la lista de disponibles, el que nos interesa es
Web App Bot,así que lo seleccionamos:
Figura 7: Lista de rescursos tipo Web app.El servicio Web App Bot está diseñado especialmente para facilitar el desarrollo de bots, a los que podrán conectarse los usuarios por medio de distintos canales.
Figura 8: Servicio web app bot,El formulario para crear el servicio es muy similar al que usamos en la primera parte para el servicio Datapedia_LUCA. En este formulario le damos nombre al bot, indicamos los datos de suscripción, grupo de recursos, ubicación, tarifa etc
Figura 9: Formulario de creación del bot en Azure.Un poco más abajo indicamos qué plantilla de bot nos interesa. En nuestro caso, elegimos "Question and Answer" y el lenguaje Node.js
Figura 10: Parte inferior del formulario.A continuación hay que crear un identificador y contraseña para la aplicación- Podemos hacerlo de forma automática o conectándonos al portal de registro de aplicaciones mediante el enlace azul de la tercera columna y copiando y pegando el ID y la contraseña generados en el portal en los campos que aparecen bajo el enlace.
Figura 11: Configuración del Id y contraseña de la aplicación.Una vez incorporada esta información, sólo nos queda dar al botón "Crear" y vemos cómo se envía la implementación para el Web App Bot.
Figura 12: Enviando la implementación del servicio.Probar el servicio y conectarlo a la KB
El servicio ya está creado y podemos verlo en el panel de Azure, junto con el creado para la KB. Hacemos click sobre el icono del nuevo servicio y vamos a probar a "chatear" con el bot. Para ello, seleccionamos la opción "Probar el chat en web". Si preguntamos, como hicimos para probar la KB en QnA Maker ¿Qué es algoritmo?, por ejemplo, obtenemos:
Figura 13: Prueba del chatbot. Todavía no está conectado a la KB.El mensaje nos indica que el bot está escuchando, pero todavía no está conectado a nuestro servicio Datapedia. ¿Os acordáis de las claves que nos guardamos antes?. Ahora es el momento de recuperarlas.
- QnAKnowledgebaseId
- QnAEndpointHostName
- QnAAuthKey
Vamos a Configuración de App Services/Configuración de la aplicación, vemos que los valores están en blanco. Editamos el campo simplemente haciendo click sobre él con el ratón, añadimos los valores que guardamos antes, teniendo cuidado con el orden, ya que no se llaman exactamente igual. Guardamos y volvemos a probar el bot que ahora sí que va a funcionar.
Figura 14: Conexión del bot a la KB.Efectivamente, cuando volvemos a preguntar al bot qué es un algoritmo, ya sabe darnos una respuesta adecuada.
Figura 15: Probamos de nuevo el chatbot y ahora sí que funciona.Antes de conectarlo a algún canal, si queremos personalizarlo, podemos agregar una imagen para el perfil del bot.
Figura 16: Añadimos el icono al perfil del bot.Publicar el servicio en Skype
Y ya sólo nos queda publicarlo en Skype. Para ello, dentro del mismo menú de configuración del servicio, elegimos la opción "Canales". Por defecto, aparece el canal "Web Chat".
Figura 20: Seleccionamos Obtener los códigos...
Figura 21: Código para insertar el bot en Skype.
Buscamos por el nombre de nuestro bot:
Figura 25: Buscamos por el nombre del bot.
Figura 26: Consultamos nuestro Diccionario Tecnológico a través de Skype por medio de un bot.
Los dos post de esta miniserie son:
- Cómo crear un Bot de forma sencilla: Probamos con nuestra Datapedia
- Cómo crear un bot de forma sencilla (2 y fin)