Blog

MICROSOFT BOT FRAMEWORK: INTEGRACIÓN CON COSMOSBD, LUIS Y QNA MAKER

Esta es una nueva tecnología que nos ofrece una infinidad de posibilidades tanto como para las empresas como para los desarrolladores ya que gracias a esto podremos automatizar tareas tales como la atención al cliente ya que esta será capaz de interactuar con distintos canales como chat web, Slack, Skype, Telegram, etc.

En este blog vamos a ver todo lo referente a este tema y vamos a ver como Microsoft bot framework es capaz de integrarse con CosmosDB, LUIS Y QnA Maker. ¡Empecemos!

¿QUÉ ES UN BOT?

Los bots, no son más que pequeños programas, diseñados para realizar tareas de forma autónoma. En ocasiones imitan el comportamiento humano y suponen una herramienta muy útil para automatizar procesos.

Un modelo muy conocido (ya extinto) de esta herramienta fue Clippy, la mascota de Microsoft Word que ayudaba al incauto usuario a manejar la interfaz; hoy en día la evolución de estas herramientas es más que notable, y se han adaptado a ecosistemas donde son especialmente eficaces, como la mensajería instantánea.

¿PARA QUE SIRVEN LOS BOTS?

Estos pequeños asistentes han sido programados para llevar a cabo multitud de acciones a fin de ayudar a los internautas en sus tareas cotidianas. Estas son algunas de las cosas que pueden llevar a cabo:

INTEGRACIONES DE MICROSOFT BOT FRAMEWORK

COSMOSDB

De forma predeterminada, Bot Framework usa el estado de Bot Framework para almacenar datos de conversación. Está diseñado para la creación de prototipos y es útil para entornos de desarrollo y prueba. 

Para entornos de producción, se recomienda encarecidamente usar una base de datos NoSQL para almacenar datos como documentos, como Azure Cosmos DB . Es una base de datos de varios modelos (como modelos de documentos, gráficos, valores clave, tablas y familias de columnas) que puede ofrecer algunos beneficios clave, que incluyen:

  • Distribución global: Es posible distribuir sus datos en diferentes regiones de Azure , lo que garantiza una baja latencia para los usuarios.
  • Escalabilidad horizontal: Puede escalar fácilmente su base de datos a una granularidad por segundo y escalar el tamaño de almacenamiento hacia arriba y hacia abajo automáticamente según sus necesidades.

  • Disponibilidad: Puede asegurarse de que su base de datos tendrá al menos un 99,99% de disponibilidad en una sola región.

Para los modelos de documentos, existen opciones como Azure DocumentDB y MongoDB. En este artículo vamos a utilizar la API de DocumentDB.

LUIS

Utilice LUIS cuando necesite conocer la intención del enunciado como parte de un proceso en el bot de chat. Una vez que sepa que la intención del usuario es encontrar una ubicación, puede pasar detalles sobre el enunciado (extraído con entidades) a otro servicio, como un servidor de transporte, para obtener la respuesta.

No es necesario combinar LUIS y QnA Maker para determinar la intención.

Puede combinar los dos servicios para esta expresión, si el bot de chat necesita procesar el texto en función de las intenciones y las entidades (usando LUIS), así como encontrar la respuesta de texto estático específico (usando QnA Maker).

QNA MAKER

Utilice QnA Maker cuando tenga una base de conocimientos estática de respuestas. Esta base de conocimientos se adapta a sus necesidades, que ha creado con documentos como PDF y URL.

Envíe el texto, como una consulta, a su servicio QnA Maker publicado y reciba la mejor respuesta.

No es necesario combinar LUIS y QnA Maker para determinar la respuesta a la pregunta.

Puede combinar los dos servicios para esta expresión, si el bot de chat necesita procesar el texto en función de las intenciones y las entidades (usando LUIS), así como encontrar la respuesta (usando QnA Maker).

CUÁNDO USAR CADA SERVICIO

Language Understanding (LUIS) y QnA Maker resuelven diferentes problemas. LUIS determina la intención del texto de un usuario (conocido como enunciado), mientras que QnA Maker determina la respuesta al texto de un usuario (conocido como consulta).

Para elegir el servicio correcto, debe comprender el texto del usuario que proviene de la aplicación cliente y qué información la aplicación cliente necesita obtener del Servicio cognitivo.

Utilice ambos servicios cuando su base de conocimientos esté incompleta

Si está creando su base de conocimientos de QnA Maker, pero sabe que el dominio del tema está cambiando (como información oportuna), puede combinar los servicios de LUIS y QnA Maker. Esto le permite utilizar la información de su base de conocimientos, pero también utilizar LUIS para determinar la intención de un usuario. Una vez que la aplicación cliente tiene la intención, puede solicitar información relevante de otra fuente.

Su aplicación cliente necesitaría monitorear las respuestas de LUIS y QnA Maker para las puntuaciones. Si la puntuación de QnA Maker está por debajo de algún umbral arbitrario, utilice la información de entidad e intención devuelta por LUIS para pasar la información a un servicio de terceros.

Si su bot de chat necesita más información de la que proporciona cualquiera de los servicios, para continuar a través de un árbol de decisiones, use ambos servicios y procese ambas respuestas en la aplicación cliente.

¿CONOCES OTRAS INTEGRACIONES DE MICROSOFT BOT FRAMEWORK?

No olvides dejarnos tus comentarios en la sección de abajo.

Comparte esta publicación

Share on facebook
Share on whatsapp
Share on telegram
Share on twitter