¿Qué es un orquestador? ¿Por qué es necesario en los chatbots?

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.

Contexto: el uso actual de 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. 

Conoce lo último sobre chatbots  descargando el eBook aquí

¿Qué es un orquestador?

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. 

Componentes de un chatbot con orquestador incorporado

Un chatbot con un middleware incorporado presenta las siguientes características:

Bloque de entrada y salida de información (o cliente de chat)

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.

Bloque de gestión del mensaje u orquestador (opcional)

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.

Bloque de gestión de la conversación y de la inteligencia del chatbot

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.

 

¿Por qué es necesario incorporar un orquestador al chatbot?

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:

Preprocesamiento

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.

Procesamiento

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:

  • Crear un tique en un helpdesk.
  • Reservar un hotel o una sala de reuniones.
  • Hacer una compra utilizando una pasarela de pago.
  • Firmar digitalmente un documento (si quieres saber más sobre los dos últimos puntos mencionados, puedes revisar el webinar gratuito sobre sistemas de pago y firma digital).
  • Consultar una base de datos para obtener información adicional del usuario para brindarle recomendaciones y asesoramiento personalizados, como saludar al usuario por su nombre o conocer si tiene algún proceso activo.
  • Crear, u obtener mediante consultas externas, enlaces a productos, servicios y otras webs, y luego, como parte del diálogo, entregarlos para que el usuario se dirija hacia ellos.

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.

Posprocesamiento

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). 

Conoce lo último sobre chatbots  descargando el eBook aquí

¿Qué es un orquestador? Conclusiones

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.

Más noticias

¿Cómo se ejecuta un proyecto de automatización de procesos con RPA?

La automatización de procesos con RPA es una de las tendencias en la transformación digital. La posibilidad de automatizar tareas, para que las personas puedan dedicar su tiempo y esfuerzo a tareas...

Leer másArrow 41

Explainability AI: cómo hacer nuestro modelo legible

A la hora de tomar decisiones, la inteligencia artificial se ha convertido en una herramienta muy útil en el día a día. Lo curioso es que esto es así tanto en el ámbito personal como en el laboral....

Leer másArrow 41

Inversión en tecnología: clave para hacer frente a la crisis económica

La crisis económica es una realidad palpable en la actualidad. La inflación de los precios, la poca disponibilidad de los combustibles, así como la lenta recuperación de la Covid-19, han hecho que...

Leer másArrow 41

Supply chain: tendencias y retos tecnológicos

En el mundo empresarial contemporáneo, la gestión efectiva de la cadena de suministro es fundamental para el éxito y la competitividad de las organizaciones. La cadena de suministro, o supply chain...

Leer másArrow 41

Cómo diseñar una estrategia de IA para incrementar el éxito de los proyectos de Machine Learning

En el Webinar “AI Strategy: Cómo diseñar una estrategia de IA para incrementar el éxito de los proyectos”, hemos compartido una visión acerca de aquellos problemas generales que hacen que proyectos...

Leer másArrow 41