Saltar a contenido

Construyendo las bases para un chatbot

Lo primero que haremos será una serie de talleres con objetivos específicos. Para esto recomendamos reunir a todos los miembros vinculados al proyecto en su empresa.

Tómese todo el tiempo que necesite para completar estas tareas antes de continuar al lado técnico. Se estima un tiempo promedio de 1 o 2 horas para cada taller, según la complejidad de su bot.

Taller 1 - Las funcionalidades del bot

El primer paso es definir qué hará su bot y qué respuestas debería proporcionar. Para hacer esto, proponemos dos actividades:

La primera es escribir ejemplos de conversación desde el punto de vista del usuario final. De esa forma verá si su bot tiene múltiples conversaciones sobre diferentes temas. Piense en cualquier forma en que los usuarios puedan responder una pregunta.

Quizás el cliente esté satisfecho, tal vez tenga preguntas de seguimiento o incluso no tomen bien el hecho de encontrar a un robot realizando la atención. También es bueno explicar cómo desea que los usuarios obtengan información: ir directo al grano o siga una conversación más fluida, apoyado por el bot.

El segundo ejercicio implica dar un paso atrás y dibujar un boceto que representa el uso del bot completo. Intente responder estas preguntas:

  • ¿Cuál es el objetivo principal del usuario?
  • ¿Cómo definimos si una conversación es exitosa?
  • ¿Cuáles son todas relevantes las características del bot?
  • ¿Cuál de ellas es la más importante?

Cuando tenga las respuestas a estas preguntas, redacte una sola oración que describa lo que hace su bot.

Lo anterior suele ser utilizarse para construir la primera frase que su bot dirá para presentarse a los clientes. Es el mismo ejercicio que uno realiza cuando prepara un “pitch” de negocios para un inversionista o al escribir un tweet viral en 280 caracteres.

Algunos ejemplos pueden ser:

1
2
3
¡Hola! Gusto en verte nuevamente.
Soy Pokébot, tu propio Pokédex!
Me puedes preguntar lo que quieras sobre cualquier Pokémon.
1
2
3
4
Hola Carla! 😄
Soy Fiestatrón 🎉!
Estoy aquí para ayudarte a encontrar bares y restaurantes.
Dime qué te gustaría buscar 😇

Es clave identificar a su bot como un chatbot y no como una persona. La tecnología actual aún no nos permite pasar el Test de Turing, por lo que los clientes rápidamente se darán cuenta que no hablan con un agente y se frustrarán si el chatbot no es inteligente en sus respuestas.

Adicionalmente, cuando la persona entiende que habla con un chatbot, ajustamos sus exspectativas. Por ende, si este no responde correctamente, los clientes suelen intentar más formas de plantear su problemática. En general tendrán mejor disposición.

Teniendo claro los puntos anteriores, es el momento de resumir la investigación para identificar claramente el alcance de su bot antes de saltar a la construcción del flujo conversacional.

En estas etapas es muy relevante definir si su bot será un chatbot con participación humana o no. En general sugerimos que siempre se acompañe de apoyo humano dado el estado del arte de la tecnología. Usted puede integrar desk para resolver este problema fácilmente.

Un bot inteligente tiene un alcance claro y definido. El caso más amplio se puede diagramar de la siguiente manera:

Screenshot

Las etapas que se ven en la imagen van desde la más pequeña (funcionalidad principal) hasta la más grande y que debe manejar más contenidos (trivialidades). Un chatbot completamente autónomo, por ejemplo Siri o Cortana, debe contar con todos los círculos implementados.

Funcionalidad principal

El círculo pequeño corresponde a la funcionalidad principal. En este se nombra cada característica e intención del usuario que queremos que nuestro chatbot maneje perfectamente. Recomendamos de 1 a 4 intenciones diferentes. Ejemplos:

  • Realizar un pedido de comida.
  • Realizar una consulta de saldo.

Como ya mencionamos, este caso siempre debe ir, tanto para chatbots con apoyo humano o no. Cuando contamos con agentes humanos es posible convivir perfectamente. Lo que el bot no se encuentre preparado para responder se lo pasará a un agente humano directamente, pero por el contrario, si compete al bot, entonces este tomará la conversación.

Casos de uso extendidos

A raíz de la funcionalidad principal suelen aparecer preguntas secundarias directamente relacionadas que tienen un alcance un poco más amplio y también están en el marco de la automatización.

Pueden ser intenciones distintas pero siempre deben estar relacionadas a la idea principal de conversación. Por ejemplo:

  • ¿Dónde viene mi pedido?
  • ¿En cuánto tiempo llegará?
  • ¿Cómo puedo hacer depósitos de saldo?

Al igual que la intención principal el chatbot puede manejar estas conversaciones, previo entrenamiento, y liberar a los agentes de resolver las preguntas frecuentes y al mismo tiempo operar en paralelo, personas y chatbots.

Preguntas por defecto

El tercer círculo incluye preguntas predeterminadas. Son intenciones que no son referentes al caso de uso principal. En este marco, existen preguntas referentes:

  • La empresa
  • Al creador del bot

Trivialidades

El último círculo es el más grande y contiene “trivialidades”. Es deseable que el bot pueda comprender: cumplidos, saludos, despedidas, insultos, clima, etc.

Al igual que las preguntas por defecto, las trivialidades son relevantes solo si el chatbot no cuenta con apoyo humano.

Al finalizar esta sesión, debe definir si su bot tendrá apoyo o no y en función de esto debe tener una lista de todas las intenciones / funcionalidades de su bot desde lo principal hasta las cosas triviales en caso de aplicar.

Taller 2 - Diseñando el flujo de conversación

Ahora centrémonos en el corazón de su conversación. Todas las preguntas pequeñas y las preguntas predeterminadas pueden dejarse de lado por ahora, centrémonos en la característica principal.

Pregúntese esto:

  • ¿Cuáles son las preguntas que el robot debe responder al usuario final?
  • ¿Cuáles son los pasos para alcanzar los objetivos?

Dibuje un diagrama en formato de flujo conversacional. Hay muchas herramientas disponibles para ayudarlo, como Draw.io. Pero para comenzar recomendamos hacerlo primero con papel y lápiz o en una pizarra.

Puede iniciar realizando flujos separados por cada intención para evitar hacer un diagrama muy grande. Por ejemplo: Realizar una venta. Utilice los primeros ejemplos de conversación que escribió en la Taller 1 - Las funcionalidades del bot.

Una buena conversación no contiene más de 2-3 interacciones. Es similar a la experiencia de un sitio web. Los diseñadores de UX dirán que el usuario debe realizar la menor cantidad de pasos posibles: el mismo principio se aplica dentro de una conversación. El número de interacciones que el usuario debe realizar para obtener una respuesta robot es crítico.

Aquí hay un ejemplo de un flujo:

Screenshot

Este ejemplo lo puede encontrar acá.

Separando responsabilidades

Ahora bien, estratégicamente es deseable que nuestro flujo pueda ser definido sin la necesidad de contar con las expresiones definitivas que tendrá el bot y su personalidad para poder trabajar en paralelo y con diferentes grupos de personas.

Para ello, definiremos un nombre de variable a cada una de las expresiones a modo de identificarlas y que nos permitan tener una idea sobre cuál es el mensaje. A continuación veamos un ejemplo:

1
Hola, bienvenido al sistema, mi nombre es Cargobot.

El mensaje anterior puede ser el saludo inicial definido al comienzo del proyecto, pero luego el equipo de marketing puede definir que ahora contendrá emojis y será más cercano, cambiándolo por:

1
2
Hola Carlos!, Te doy la bienvenida a nuestra plataforma, 
mi nombre es Cargobot 😄.

Esto representa un problema si queremos tener nuestro diagrama de flujo al día. Para ello separaremos la lógica del flujo de los mensajes.

En lugar de colocar en el diagrama el texto completo del saludo, podemos definir una planilla Excel con el texto definido por marketing y, en conjunto, un código que represente el contenido del mensaje, por ejemplo SALUDO_CARGOBOT:

Código Texto
SALUDO_CARGOBOT Hola Carlos!, Te doy la bienvenida a nuestra plataforma, mi nombre es Cargobot 😄
INTRO_SERVICIOS ¡Te puedo ayudar en las siguientes consultas!

En el diagrama utilizaremos entonces SALUDO_CARGOBOT o INTRO_SERVICIOS lo que nos permite entender el flujo y al mismo tiempo evitar que los cambios en los textos impliquen cambiar el diagrama. Es importante que el código sea lo más breve y descriptivo posible.

Es una inversión pensar detenidamente cómo describir cada mensaje para que el diagrama de flujo sea comprensible por cualquier persona que lo revise sin la necesidad de saber exactamente qué dice el robot.

Definiendo la experiencia de usuario

Es hora de trabajar con la experiencia de usuario en la conversación.

Dependiendo del canal donde se decide trabajar, es posible incluir distintas componentes como botones, tarjetas, carruseles, etc. Actualmente Facebook Messenger es de los medios más completos para ofrecer experiencias de chat. Adicionalmente, en el chat de Desk también es posible crear experiencias similares en la web y aplicaciones.

Dada la plataforma que se tenga en mente y el flujo diseñado previamente, hay que elegir qué componente es la más adecuada para la interacción con el cliente. ¿Un botón? ¿texto plano? ¿tarjetas? Para cada elemento en el flujo creado es importante especificar qué componente de UX es deseable para representar dicho contenido.

Una vez que tenga su diagrama de flujo principal, piense en toda la información que necesita para completar las acciones. ¿Ha olvidado algo? Piense en las limitaciones de los ejemplos propuestos.

En cada paso, piense en todos los errores posibles que puede cometer el cliente y dudas que pueda tener y anótelas para ir iterando mejor el flujo de conversación previamente definido.

Al final de esta actividad usted debe contar con los diagramas de flujo, con sus respectivos códigos y las componentes de UX (botones, carruseles) para entregar al equipo de BotCenter con lo que se comenzará la implementación lógica del bot.

Taller 3 - Personalidad

Ahora es el momento de pensar en la parte más importante de su bot, la experiencia del usuario a través de la personalidad.

Recuerde que las únicas interacciones que sus usuarios podrán realizar será mediante conversaciones, por lo tanto, construir una personalidad rica y detallada hará que su chatbot empresarial sea confiable, relevante y divertido para los usuarios. Imagine al chatbot como un personaje, esto le ayudará a crear la personalidad y cómo se verá en un caso de uso real.

El primer ejercicio para crear este personaje se basa en entender y perfilar a sus usuarios y el propósito que buscan alcanzar. Si por ejemplo estamos construyendo un bot para ayudar a encontrar un bares, estaremos apuntando a público objetivo más bien joven. Dado lo anterior, será bueno crear un chatbot cuya personalidad use modismos amistosos, emojis y posiblemente haga algunas bromas.

Dado lo anterior, describa a su personaje y enfóquese en el tono, qué tan amistoso será y la imagen que queremos representar. Revisar este artículo de Prototypr: A guide to developing bot personalities le puede ayudar en los aspectos más específicos de lo que debe incluir en el diseño de la personalidad, donde se indica cómo definir algunos aspectos concretos como:

  • Definir la audiencia objetivo.
  • Cual es la misión de su bot.
  • Tipo de personalidad.
  • Diversidad y género.
  • Tono de voz.

Ahora que ha creado un personaje, es posible definir los diálogos concretos que utilizaremos en el diagrama de flujo.

Taller 4 - Test de Aceptación

Para desarrollar un bot es muy importante definir un test de aceptación (TdA). ¿Qué es esto? Es un conjunto de diálogos que representan el flujo de conversación.

Debe escribir tres o cuatro escenarios distintos:

  • Uno que realice un camino de éxito, otro donde el bot maneje información falsa o errónea.
  • Otro donde el usuario no converse sobre el motivo principal, etc.

Asegúrese de que todas las conversaciones sean posibles.

Ahora continuaremos a la fase de Entrenamiento de nuestro chatbot.