Cuando estaba en la universidad cursando la asignatura de matemáticas, tenía un profesor que era terrible para comunicarse. Si le pedía que explicara algo, hacía una pausa de unos segundos y luego decía exactamente lo que acababa de decir, palabra por palabra. En los días más ocupados, podría simplemente decir: «Ve a buscar un tutor después de clase«. Estas conversaciones no llegaron a ninguna parte. Más de la mitad de sus alumnos suspendieron ese año.
Avanzo rápido hasta hoy. Actualmente, diseño y construyo bots conversacionales, y pienso en cómo mantener las conversaciones cuando fallan. Pero en lugar de hacer bucles interminables o pasar las cosas a la primera vista de problemas, la clave, según descubrí, es guiar al usuario de vuelta a lo que quiere, de una manera socialmente apropiada, sin mencionar ningún error.
El camino que tomé para decidirme por este enfoque es algo que quiero compartir con todos vosotros en este artículo. Mi objetivo es acortar la curva de aprendizaje sobre las estrategias de reparación de conversaciones, crear diseñadores de conversaciones más ambiciosos y mostrar rutas de reparación, no como una ocurrencia tardía, sino como una característica central de los bots conversacionales.
Tabla de contenidos
Hay una manera correcta de fallar
Comencemos con un diálogo que armé de varios bots de horóscopo de Google Action para resaltar formas no tan efectivas en que los bots responden a respuestas inesperadas de los usuarios:
- Bot: ¿Cuál es tu signo zodiacal?
- Usuario: #$&@!
- Bot: Lo siento, no entendí. ¿Puedes decir eso de nuevo?
- Usuario: #$&@!
- Bot: Lo siento, no entendí bien eso. ¿Qué fue eso?
- Usuario: #$&@!
- Bot: Lo siento, no puedo ayudar.
Tal vez te estés preguntando en este punto como lo hice yo: ¿por qué el bot dice tanto «lo siento»? ¿Es necesario decir esto? ¿No es esto derrotista? Cuando escucho a un bot decir «lo siento», con demasiada frecuencia o demasiado rápido, tiendo a pensar «este bot apesta».
Y luego está la estrategia de admitir un error cuando las cosas van mal, como decir “no entendí”. Esto parece un paso en la dirección correcta, pero tampoco es útil si no sabes realmente qué salió mal. Entonces sería presuntuoso. Por ejemplo, ¿y si murmuro? ¿O qué pasa si el dispositivo no recogió lo que dije? ¿O qué sucede si la grabación de mi audio se realizó, pero sucedió algo más en el backend que escapa a mi control?
Es posible que también hayas notado algunos matices en el tono del bot. Seguramente, suavizar el golpe hace algo bueno. Ciertamente no quieres alienar al usuario. Pero una confesión más amable como «No entendí bien eso» por sí sola, sin ningún intento de hacer las cosas bien, suena insípida.
Incluso he visto algunas aplicaciones de voz tomar una ruta más neutral y decir «algo sucedió». Pero eso parece vago, incluso siniestro.
Independientemente de si ofrece un millón de disculpas o no se disculpa en absoluto, aún necesita ayudar a los usuarios a hacer lo que estaban realmente buscando en tu aplicación. Y eso significa tener posibles arreglos delante de ellos cuando las cosas van mal.
Por ejemplo, un escenario de falta de comunicación con una skill de Alexa que diseñé, llamada Práctica de entrevista, sería así:
- Bot: ¿Por qué crees que encajas bien en el papel? ¿Estás listo para practicar esta pregunta?
- Usuario: #$&@!
- Bot: Una vez más, la pregunta es: ¿Por qué crees que encajas bien en el papel? ¿Listo? También puede solicitar una nueva pregunta.
He observado que lo único que importa es hacer avanzar la conversación. Primero, repite la pregunta de la entrevista en juego en caso de que no la hayas escuchado. Luego, vuelve a preguntar el mensaje original en forma condensada («¿Listo?»).
Finalmente, si eso no es suficiente, obtienes otra opción que aborda una dificultad que podrías tener. Lo he diseñado para que el usuario escuche correcciones sencillas como «también puede repetir la pregunta» la primera vez que dice algo que no se registra.
Los menos obvios como «también puedes pedirme que espere» aparecen más tarde si se activan. Estas correcciones secundarias giran interminablemente en una sucesión de más a menos obvias. Idealmente, cualquier opción sugerida se basaría en expresiones específicas del usuario (no al azar).
De hecho, un estudio de reparación de chatbots de 2019 realizado por investigadores de IBM llegó exactamente a esta conclusión: cuando las cosas van mal, la estrategia de entrenamiento preferida es brindar al usuario opciones basadas en lo que el usuario acaba de decir.
Incluso los «problemas», como las solicitudes de intervención inesperadas y fuera de contexto, cuando se prevén y se diseñan para ellas, pueden abrir nuevas perspectivas de participación. Por ejemplo, en las primeras pruebas de mi aplicación, noté que algunos usuarios necesitaban más tiempo para pensar, incluso unos segundos, antes de comenzar a responder. Así que incluí este desvío:
- Bot: ¿Cuáles son tus expectativas salariales? ¿Estás listo para responder esto?
- Usuario: ¡Espera!
- Bot: No hay problema, vuelvo en un momento” (pasan 10 segundos de silencio). Volví. Una vez más, la pregunta es: ¿cuáles son sus expectativas salariales? ¿Listo? ¿O necesitas ayuda?
Si hacer una pausa no funciona, siempre puedes pedir ayuda, lo que abre otras posibles soluciones. Por ejemplo, es posible que desee volver a practicar la pregunta anterior. O tal vez desee hacer una pregunta relacionada y profundizar en una categoría específica. O tal vez solo quiera generar nuevas preguntas al azar hasta que encuentre una buena. Estas y otras opciones se sugieren cuando dices ayuda.
El objetivo es redirigir con gracia al usuario de regreso a una de las varias soluciones posibles, para que vuelvan al «camino feliz», para que el usuario pueda hacer lo que buscó en su aplicación.
Por cierto, en mi ejemplo utilicé la intuición humana y las buenas adivinanzas para generar posibles soluciones. En un sistema más perfecto, las soluciones serían conjeturas informadas (predictivas) y aprovecharían no solo las reglas basadas en la intuición de expertos humanos, sino también los modelos de aprendizaje automático que imitan la memoria y el conocimiento contextual (ver GPT-3 de OpenAI y BlenderBot 2.0 de Facebook).
El uso de nuevas indicaciones socialmente apropiadas y centradas en el entrenamiento, como recordar, parafrasear y dar opciones, cuando las intenciones no se reconocen o faltan, es un enfoque al que llegué a través de prueba y error, y está inspirado en James Giangola, un experto de diseño conversacional de Google.
Steve Jobs también tiene un dicho sobre el diseño que me encanta, que se puede adaptar aquí:
“La mayoría de la gente comete el error de pensar que el diseño (de la conversación) es lo que parece (y suena). Pero no se trata solo de cómo se ve (suena) y se siente. El diseño (de conversación) es cómo funciona”.
Lo que importa no es solo lo que significan las palabras, es lo que hacen.
Estas citas, me recuerdan a mis días como gestor de cuentas hace unos años, cuando tenía un cliente con un acento muy fuerte. También hablaba muy rápido. Nunca entendí lo que estaba diciendo. Un día me di cuenta: preguntarle qué quería decir solo empeoraba las cosas cuando él no era capaz de ser entendido fácilmente. Momento en el que solo podía disculparme.
Así que, en lugar de eso, parafraseé lo que pensé que dijo, basándome en fragmentos que pude descifrar (suposiciones en realidad) y luego le pedí confirmación. Cuando esto funcionaba, por lo general me respondía: «¡ESO ES LO QUE HE ESTADO DICIENDO TODO EL TIEMPO!»
Redirigir como táctica es algo que hacen los padres hábiles. Tengo una amiga que hace esto con maestría. Su hijo empezaba a subirse a la mesa o a recoger un cuenco para tirarlo, y luego mi amiga, en lugar de perder la calma, de repente señalaba la ventana y decía: «¡Guau, mira ese pájaro con el pico enorme!»
Esto detenía a su hijo en seco. Miraba hacia la ventana, se volvía hacia su madre y decía: “¿En serio? y olvidarse de cualquier daño que estaba a punto de causar. Los budistas y los terapeutas de relaciones llaman a esto “medios hábiles”.
Las estrategias de reparación son fundamentales para hacer que los bots (y los humanos) estén mejor y más enfocados. ¿Por qué? Porque la reparación es un aspecto universal del propio lenguaje. Como dice la investigadora lingüística Emma Hoffstetter:
“Eso es reparación. Omnipresente y necesario. El dispositivo de fijación del lenguaje humano. Cuanto más empiezas a pensar en la reparación, más empiezas a notarlo. Sin ella, estaríamos perdidos en un océano de fallas intersubjetivas. Menos mal que el lenguaje lo inventó”.
Cuantos más caminos felices, mejor.
El diseño de conversaciones se trata de construir una red de caminos más transitados y menos transitados que conducen a grandes destinos.
De esta forma, los bots conversacionales efectivos y los buenos conversadores hacen y quieren las mismas cosas. Mantienen las cosas en movimiento. Ellos arreglan las cosas. Te llevan a lugares. Sobre todo, no se centran en sí mismos. Lo hacen por ti.
Otras referencias
- Video de presentación del experto en diseño de conversaciones de Google, James Giangol, titulado «Aplicación de trucos de conversación incorporados a la interfaz de usuario de su voz» (comienza a las 15:16 para la discusión de reparación)
- La videoconferencia de la investigadora lingüística Emma Hoffstetter sobre «Reparar» como una característica central de la conversación humana
- Presentación de video y artículo de un grupo de investigadores de IBM titulado «Bots de chat resistentes: preferencias de estrategia de reparación para interrupciones conversacionales»
- Sobre el autor: linktr.ee/terryjlee
- Acerca de Prepfit: linktr.ee/prepfit
- Gracias a Elaine Anzaldo, Nicolás Arcay Bermejo, Don Irwin y Sara Pion por leer los borradores de este.