Cómo usar Deep Learning para mejorar el servicio a tus clientes

La semana pasada mi compañero Maldini (@maldonjo) y yo tuvimos la gran oportunidad de acompañar a Pilar López (@pillopez), presidenta de Microsoft España, en la keynote del Microsoft Summit 2016, uno de los eventos más importantes sobre transformación digital del año. Durante la misma se presentaron dos demos: La pérdida de mi maleta durante un viaje y cómo mi compañero y yo nos poníamos de acuerdo en la reserva de un segundo. En este post me voy a centrar en el primer escenario y aquí te dejo el vídeo de la puesta en escena.

Mi maleta se habría extraviado y había puesto una reclamación en el aeropuerto. Lo raro es que todavía no había llegado a destino y ya estaba en la keynote con Pilar, por lo que comenzaba mi entrada en escena contándole la situación. Gracias al bot de MS Airlines podía interactuar con la compañía, a través de mi iPhone y Facebook, para saber qué había ocurrido, sin necesidad de tener que llamar a un call center, permanecer a la espera, contar mi situación, que localizaran mis datos, mi maleta y procedieran a gestionar la situación que me tenía tan preocupada y descontenta.

El bot se apoya en Microsoft Bot Framework, plataforma que te permite desarrollar un único bot y que éste sea accesible a través de diferentes canales, como pueden ser Skype, Facebook, Slack, Telegram, entre otros.

Microsoft Bot Framework - Canales
Microsoft Bot Framework – Canales

El primer punto interesante de la demo es que no era necesario preocuparse por la forma en la que hablaba al bot, ya que el mismo es capaz de comprender el lenguaje natural que utilizamos en el día a día. Esto es así gracias a los servicios cognitivos de Microsoft, entre los cuales se encuentra LUIS (Language Understanding Intelligent Service) del que ya te hablé tiempo atrás.

MS Airlines - Lenguaje natural gracias a LUIS
MS Airlines – Lenguaje natural gracias a LUIS

Cuando integras un bot con los diferentes canales, este es capaz de recuperar cierta información sobre el usuario. Además, en esta demostración se presupone que previamente he asociado mi perfil como cliente de Microsoft Airlines y la red social, por lo que puedo ponerme en contacto con el bot y que este ya tenga enlazada mi cuenta con la información que la compañía tiene sobre mí. Pero no sólo eso, el bot además me pregunta cómo estoy, con la intención de saberlo 😉 Si somos capaces de detectar el sentimiento de un cliente, podremos redirigir el flujo de la conversación en función de si el usuario está contento, y sólo necesita información, o está cabreado/preocupado y lo que necesita es que le resolvamos la incidencia lo antes posible.

MS Airlines - Text Analytics - Detección del sentimiento
MS Airlines – Text Analytics – Detección del sentimiento

Aunque parezca ciencia ficción, esto también es posible gracias a otro de los servicios cognitivos llamado Text Analytics, del que te hablé ayer, el cual es capaz de puntuar el sentimiento, de 0 a 1, de las frases enviadas a esta API. En este caso nos encontrábamos con mi preocupación de que acababa de volver de mi viaje a Seattle, mi maleta se había extraviado y no tenía ni idea de por qué todavía no la había recibido.

MS Airlines - Obteniendo el contexto
MS Airlines – Obteniendo el contexto

Con esta información, el bot ya era capaz de entender mi intención. Gracias a la integración con el CRM de la compañía se podía revisar mi ficha de cliente y cuál era el último viaje que había realizado. Para este punto, tenemos varias alternativas, que podían ser Microsoft Dynamics CRM, conectarnos a través de las APIs de Saleforce.com o bien que el bot estuviera conectado a través de una VPN a la información almacenada on premise desde Microsoft Azure, que es donde está alojado el bot, de la misma manera en la que se hablaba en el artículo Microsoft Bot Framework, .NET y Microsoft Azure App Service, aunque en este caso estaba desarrollado con Node.js.

Al confirmar esta información, el bot ya tiene el contexto completo de la conversación y podía comprobar que había llevado a cabo una reclamación asociada a dicho vuelo y toda la información relativa a la incidencia: a qué hora se había dado de alta, en qué estado se encontraba e incluso quién era el repartidor encargado de hacérmela llegar. Pero no quisimos parar ahí, ya que todo cobraba más sentido aún si además los vehículos que se encargaban del reparto de las maletas estaban dotados de un sistema GPS que, integrado con los servicios de IoT de Microsoft Azure, enviaban su localización a la central, con el objetivo de saber dónde estaban en todo momento, además de que el repartidor fuera capaz de actualizar en remoto el estado de la orden de trabajo.

MS Airlines - Microsoft Azure IoT
MS Airlines – Microsoft Azure IoT

Llegados a este punto, nos damos cuenta de que la maleta no ha llegado debido a que la dirección de destino no era la correcta. En lugar de ser el Palacio Municipal de Congresos de Madrid se había establecido como destino el Palacio de Congresos, situado a varios kilómetros de donde nos encontrábamos.

MS Airlines - Dirección incorrecta
MS Airlines – Dirección incorrecta

Lo ideal en esta situación era lo que se mostró durante la demo: ser capaz de modificar la dirección de destino a través del bot proporcionando una dirección o bien la ubicación actual del usuario, que en este caso era yo misma durante la keynote.

MS Airlines - Cambiar la dirección de entrega a través de la ubicación
MS Airlines – Cambiar la dirección de entrega a través de la ubicación

Al elegir la ubicación, el siguiente paso era utilizar las capacidades del propio cliente de Facebook que permite de manera sencilla y familiar, para los usuarios de la red social, compartir dónde estás ubicado.

MS Airlines - Compartiendo la ubicación actual
MS Airlines – Compartiendo la ubicación actual

En este caso, el bot lo que recibe son las coordenadas (latitud y longitud) compartidas por el usuario, por lo que es más que posible que en un escenario real sea necesario algún dato adicional, como puede ser el portal, el piso, letra, etcétera.

MS Airline - Dato adicional en el cambio de dirección
MS Airline - Dato adicional en el cambio de dirección MS Airline – Dato adicional en el cambio de dirección

Una vez compartida la ubicación, solo faltaba confirmar los cambios. Con ello modificaríamos la orden de trabajo del transportista y a la vez informaría al mismo de que el destino de la maleta extraviada había sido modificado. Para este punto delegabamos en Microsoft Azure Logic Apps, que te permite conectar diferentes sistemas y acciones, como por ejemplo el envío de un SMS al transportista debido a que el registro del cliente en el CRM ha sido modificado.

MS Airline - Confirmación en el cambio de dirección
MS Airline – Confirmación en el cambio de dirección

Confirmado el cambio ya quedaba el problema resuelto. Como toque final, desde un primer momento la compañía, MS Airlines, era consciente del sentimiento de la conversación y que la resolución del problema pasaba por modificar la dirección de entrega, por lo que era de esperar que el grado de satisfacción del cliente no fuera muy positivo. Por ello, la compañía me obsequiaba con un código QR que me permitiría acceder a la sala VIP del aeropuerto en mi próximo viaje y pasaríamos a la siguiente demo que mi compañero Maldini y yo os contábamos después.

MS Airlines - Confirmación del cambio y QR de fidelización
MS Airlines – Confirmación del cambio y QR de fidelización

Este último punto se apoyaba en el servicio Microsoft Azure Machine Learning que, en base a una serie de acontecimientos como un estado de ánimo, una orden de trabajo incorrecta y un tiempo de espera superior al aceptable, permitía a la compañía detectar y recompensar a un posible cliente descontento.

¡Saludos!