Uno de los desafíos actuales en la mejora de los chatbots es conseguir que, más allá de poder tener conversaciones fluidas con humanos, puedan ayudar a satisfacer necesidades de operatividad inmediata.
Pues si incorporamos el orquestador, es posible.
En este artículo hablaremos de qué es un orquestador y cómo puede ayudarnos a conseguir mayor eficiencia operativa inmediata en los chatbots.
Es probable que usuarios sin experiencia en el desarrollo de chatbots queden admirados con las respuestas precisas y la coherencia que tener una conversación con ellos. Desde el punto de vista tecnológico, esa conversación natural puede lograrse sin demasiada complejidad: basta con hacer un buen uso de las soluciones presentes en el mercado como Watson Assistant, Google dialogflow o Microsoft – LUIS.
Sin embargo, nos encontramos en un momento en el que cada vez estamos más conectados a canales de chat o redes sociales y necesitamos más inmediatez para realizar nuestras operaciones digitales.
¿Sería posible, entonces, utilizar esos mismos canales de comunicación no solo para tener una conversación fluida con chatbots, sino para que estos nos ayuden a satisfacer la necesidad creciente de operatividad inmediata?
La respuesta a esta pregunta está en la incorporación de una nueva pieza que pueda manejar el flujo de datos interno de nuestro chatbot, y además, sea capaz de interactuar con sistemas externos a él. Esta pieza es lo que llamamos orquestador, y es una solución conveniente y viable que ha demostrado su eficacia para potenciar la utilidad de los chatbots.
Como su propio nombre indica, el orquestador es un middleware o software de backend que puede ser desarrollado en cualquiera de los lenguajes de programación más conocidos. Se encarga del flujo de información en ambos sentidos entre el frontend y el motor conversacional: lo intercepta, analiza y procesa.
Pero no se limita solo a esto: además puede interactuar con diferentes sistemas de terceros, ya sea para actuar sobre ellos o para obtener datos necesarios de este sistema externo. En líneas generales, podemos decir que el orquestador aporta interoperabilidad, flexibilidad, escalabilidad y control.
Un chatbot con un middleware incorporado presenta las siguientes características:
Es el canal de comunicación mediante el cual el chatbot intercambia información con el usuario, como puede ser WhatsApp, un canal de mensajería, o una llamada telefónica, un canal de voz.
Se encarga de añadir información adicional relacionada con el usuario que se comunica y la conversación, como el contexto, las relaciones con otros sistemas empresariales, bases de datos, APIs o servicios de terceros.
Suele ser un servicio en la nube como IBM Watson Assistant, Dialogflow o Amazon Lex, por ejemplo. Este bloque dispone de las respuestas ante determinadas preguntas (intenciones) del usuario, además de la lógica de negocio ante determinadas situaciones.
Es incuestionable que las soluciones de motores conversacionales han evolucionado incorporando nuevas funciones, integraciones o características como el multicanal, pero tampoco es posible que puedan cubrir todas las posibles interacciones con todos los sistemas existentes o creados por nosotros. Al ser el orquestador un componente hecho a medida para nuestras propias necesidades y no un producto preconcebido, sí podemos lograr esas interacciones con infinidad de sistemas que las soluciones clásicas no contemplaron.
El orquestador, aunque es una pieza “opcional” teóricamente, en la práctica, no tenerlo limitaría muchísimo las posibilidades del chatbot en su conjunto.
Analicemos las contribuciones del orquestador analizando los bloques que lo componen:
Consiste en el tratamiento inicial de la información que llega desde el frontend, que permite estandarizar los datos para posteriormente procesarlos de forma única independientemente del canal de entrada. Esto hace que el chatbot sea multicanal (y hasta omnicanal).
En este bloque también se pueden leer determinados comandos definidos para realizar acciones concretas. Estos no constituyen un mensaje de usuario con una intención que deba ser interpretada por el NLP (Natural Language Processing) del motor conversacional, sino que indican una orden predefinida. Ejemplo: pedir que se muestre la versión del orquestador, del motor conversacional o reiniciar el árbol de diálogos.
Además, el NLP permite que el chatbot sea multiidioma. Sin embargo, puede que el NLP usado no tenga un idioma concreto que se necesite o que mantener todos los diálogos de un nuevo idioma sea costoso; en este caso, se puede utilizar el preprocesamiento en conjunto con traducciones de un tercero como alternativa.
Durante el procesamiento se suelen incorporar el mayor número de desarrollos para extender las funcionalidades del chatbot. Uno de los mayores potenciales son las integraciones, dado que se puede interactuar con innumerables sistemas externos al chatbot que estarán en la nube o localmente como base de datos, gestor documental, API, CRM, ERP, RPA, filesystems, FTP, etc. Algunos ejemplos de aplicación de estas integraciones son:
También se pueden explotar otras opciones para establecer comunicación con el usuario, si el caso lo requiere como, por ejemplo, el envío de correos.
Hay que tener presente que no solo el usuario a través del chatbot es quien siempre inciaría una comunicación o nuevas acciones. Si en el orquestador se implementan webhooks o endpoints, estos estarían escuchando una llamada para realizar alguna acción para que sea el chatbot quien desencadene la conversación con el usuario o bien le avise que algún acontecimiento que él espera ha ocurrido.
En esta fase, contrario al preprocesamiento, es fundamental adaptar la respuesta estándar (que ha llegado aquí) al canal de salida. Cada canal, como Facebook, WhatsApp o un cliente web, tiene sus propias limitaciones o posibilidades, y es ahora cuando se las debe considerar para adecuar la salida para brindarle al usuario la mejor experiencia. Un ejemplo de esto sería que un cliente web posibilita utilizar “Quick Replies” (el usuario hace clic directamente sobre una de las posibles respuestas), pero, en cambio, en WhatsApp esto sería una limitación.
Además, algunos canales permiten contenidos multimedia embebidos en respuestas: el sistema puede contestar no solo texto plano, sino incluir contenido multimedia como imágenes, vídeos o ficheros adjuntos genéricos (PDF, Word, Zip). También es posible aplicar formato sencillo al texto (negrita o emoticonos, por ejemplo).
El orquestador, a pesar de ser un componente opcional, es el centro de todas las interacciones internas o externas y, paradójicamente, es un elemento difícilmente prescindible en el desarrollo de soluciones de chatbots.
Si quieres mejorar el chatbot de tu empresa incorporando un middleware eficiente, contáctanos, que contamos con un grupo de expertos en implementación de orquestadores y mejoras de chatbots.
Creamos nuevos productos y servicios superiores hibridando la tecnología con los modelos de negocio
¿En que estás interesado?
¡Ya has completado el formulario!
¡Ya has completado el formulario! Revisaremos tu solicitud y nos pondremos en contacto contigo lo antes posible.
Gracias por confiar en nosotros.