Elementos esenciales del diseño conversacional: consejos para construir un chatbot
Publicado: 2022-03-10Las interacciones humanas son increíblemente fascinantes si las observa de cerca: la incomodidad social, los estilos de comunicación, la forma en que se transfiere el conocimiento, la forma en que se cuentan las historias y se genera confianza.
Pero, ¿qué sucede cuando una máquina evoca la misma respuesta?
Las interfaces conversacionales se han convertido en el nuevo atractivo del diseño UX. Google está a punto de lanzar un nuevo chatbot asistente virtual; Facebook ya lanzó la plataforma Messenger actualizada con chatbots; y Microsoft llegó a afirmar que el sistema operativo del futuro no es Windows, sino “la conversación como plataforma”.
Lectura adicional en SmashingMag:
- Interfaces conversacionales: ¿dónde estamos hoy? ¿A donde nos dirigimos?
- ¿La conversación perjudica o ayuda a Chatbot UX?
- Cómo desarrollar un bot de chat con Node.js
Lo que todos los grandes actores de la industria ya han descubierto es que los avances en inteligencia artificial (IA) pueden resolver un problema de UX muy importante: hacer que los sitios web y las aplicaciones de marca sin rostro se sientan realmente personales.
Los chatbots pueden crear una experiencia más genuina y personalizada, que podría compararse con la experiencia en una tienda: obtiene una sonrisa del vendedor, un poco de charla y un guiño amistoso, lo que hace que toda la experiencia de compra sea más personal y agradable. . Para las marcas, esto representa una oportunidad para ampliar y gestionar las relaciones con sus clientes e ir más allá de ser “solo un producto”.
Sin embargo, construir un chatbot realmente útil y atractivo sigue siendo un desafío desde el punto de vista de UX. Aunque ahora tenemos un aprendizaje automático brillante, que avanza en las tecnologías de procesamiento de lenguaje natural (NLP) y IA, todavía estamos algo limitados en el tipo de ayudante que podemos crear, y necesitamos aprovechar al máximo lo que tenemos. Matt Schlicht, fundador de Chatbots Magazine, ha creado una guía muy completa que resume el estado actual del ecosistema de chatbots y las oportunidades para los diseñadores.
Recientemente, trabajé en el proyecto de chatbot para Alty: un bot de mensajería de Facebook para charlar con clientes potenciales, presentarles la empresa y los servicios ofrecidos y enviar consultas por correo electrónico.
La experiencia fue relativamente nueva y desafiante. A diferencia de la interfaz gráfica de usuario (GUI) estándar, la aplicación necesitaba funcionar a la perfección con poca participación del usuario, proporcionar un nuevo valor aprovechando la información almacenada y anticiparse a las necesidades de los usuarios. Los patrones y flujos estándar no funcionan realmente en el diseño conversacional, o necesitan un reajuste significativo. Consulte el kit de interfaz de usuario de Bot para la plataforma Messenger, cortesía de Mockuuups y Botframe: una herramienta de creación de prototipos simple para emular conversaciones desarrollada por Alsadir Monk para tener una mejor idea de los flujos comunes en esta plataforma.
1. Elija un conjunto de herramientas
Como ya se indicó, el primer desafío que probablemente encontrará es que tiene poco control sobre la apariencia de la aplicación. No es necesario preocuparse demasiado por la tipografía, los diseños o el estilo. Si está construyendo un chatbot de control de voz, ¡ni siquiera tendrá un lado visual! Por lo tanto, deshágase de la mayoría de las herramientas estándar y encienda su conjunto de herramientas con otras nuevas y útiles.
Para nuestro proyecto, optamos por la herramienta más simple: Chatfuel, un generador de bots intuitivo y gratuito para Facebook Manager con una interfaz de arrastrar y soltar y que apenas requiere codificación.
Sin embargo, si planea construir un bot más avanzado, vale la pena buscar las siguientes herramientas:
- Twine Este editor de texto no lineal crea guiones de texto y secuencias de mensajes para sus diálogos.
- Wit Esta indispensable herramienta te ayudará a convertir comandos de voz y texto en acciones. La comunidad ha creado docenas de comandos útiles y usted puede agregar comandos personalizados.
- Botkit El Botkit de Howdy ofrece un práctico conjunto de comandos y un código listo para usar para que pueda crear su primer chatbot de Slack.
- Api.ai Adquirida recientemente por Google, esta plataforma sólida y completa lo ayudará a crear cualquier tipo de interfaz UX conversacional.
- Botwiki Este wiki responde a todas las preguntas comunes de los chatbots.
Pocos de los controles o estilos estándar que usamos en las aplicaciones estándar se aplican al diseño conversacional.
2. Sugerencia para el usuario sobre cómo comenzar
El diseño conversacional cambia por completo la forma en que los usuarios interactúan con una aplicación. Por lo general, cuando un usuario abre una nueva aplicación de iOS, verá algunos elementos familiares, como un menú, un panel para iniciar sesión o crear una cuenta, botones, etc., los elementos con los que ya sabe cómo interactuar en función de sus necesidades comunes. esquemas
Sin embargo, el primer encuentro con un chatbot es menos convencional. El usuario estará mirando una pantalla en blanco, perdido en suposiciones sobre qué hacer a continuación o cómo interactuar con la aplicación. Se enfrentan a dos problemas simples:
- "No tengo idea de lo que se supone que debo hacer".
- "¿Qué puede hacer exactamente esta cosa por mí?"
Los chatbots aún no parecen intuitivos para la mayoría de los usuarios. Por lo tanto, su primera tarea es informar al usuario sobre lo que sucederá a continuación. Comience con una introducción rápida y una llamada a la acción directa, algo como:
Manténlo corto y simple. Invite a los usuarios a experimentar un beneficio rápido de su aplicación y a disfrutar el resultado de inmediato.
En el caso del bot de Alty, optamos por incluir botones dentro de la conversación por algunas razones clave:
- Escribir sobre la marcha puede ser engorroso para algunos usuarios, y los chatbots no siempre son lo suficientemente inteligentes como para detectar errores tipográficos (aunque hablaremos sobre cómo lidiar con eso más adelante).
- Los botones pueden indicar a los usuarios qué tipo de preguntas puede responder el bot y qué acciones puede realizar.
3. Crea el flujo de conversación adecuado
Quieres que tu robot parezca un mago, en lugar de un obstáculo, ¿verdad?
Una de las partes más desafiantes de diseñar un chatbot es hacer que la conversación fluya de la manera más natural y eficiente posible. Sin embargo, la interacción humana suele ser desordenada y no lineal. Estos son algunos consejos para optimizar el rendimiento de la aplicación.
Enseñe a su bot a distinguir entre diferentes tipos de preguntas
Cree el alcance inicial de preguntas que su bot será capaz de procesar y responder de manera eficiente. Puede usar una gran biblioteca llamada qTypes, que tiene más de 40 subclasificaciones sobre cómo se deben responder las preguntas. qType indica el tipo de respuesta que espera el usuario y qSubType indica el formato de la pregunta:
- CH . Con la pregunta de elección alternativa, se le pide al bot que elija entre dos alternativas (por ejemplo, "¿Esta camisa es roja o verde?").
- WH Estas son preguntas que comienzan con quién, qué, cuándo, dónde o por qué.
- SN Estas son preguntas de sí o no (por ejemplo, "¿Tienes un perro?").
- TG Una pregunta de etiqueta no es una pregunta real, sino una opción para mantener fluida la conversación (por ejemplo, "Esta playa es hermosa, ¿no?").
Cuando su bot recibe una de las preguntas estándar, puede producir respuestas más precisas basadas en los datos de la biblioteca:
Evite hacer preguntas retóricas, porque la mayoría de los usuarios tienden a responderlas de todos modos, incluso si el chatbot solo está siendo cortés.
Ahora que su bot es capaz de comprender las preguntas, el próximo desafío es enseñarle a la aplicación a devolver los comandos apropiados.
Valide los datos de entrada de forma más eficaz
Una GUI estándar le permite refinar los datos ingresados fácilmente al procesarlos. ¿Es válida esta dirección de correo electrónico? ¿Está disponible este nombre de usuario? ¿Este número de teléfono es válido? Puede restringir y refinar fácilmente los datos ingresados antes de procesarlos.
Sin embargo, en el diseño conversacional, las cosas se complican un poco más. El usuario es libre de decir o escribir lo que quiera; por lo tanto, debe ser inteligente al construir sus preguntas y procesar las respuestas.
Ofrecer sugerencias . Evite las preguntas abiertas siempre que sea posible porque generalmente generan más confusión. En su lugar, pida el tipo de respuesta que espera. Por ejemplo:
¿Qué tipo de estudio de caso le gustaría ver? Tenemos aplicaciones para viajes, redes sociales, diseño y finanzas personales.
O podría presentar la información de acuerdo con el formato de la plataforma en la que está construyendo, por ejemplo, listas en el caso de Facebook Messenger:
Además, confirme . Si la respuesta es válida, repítela para asegurarte de que todo es correcto y luego pasa a la siguiente pregunta:
Entiendo. Aplicaciones de viaje. ¿Y tú qué presupuesto tienes en mente?
O sugerir lo que salió mal . Si los datos ingresados no son válidos, explique nuevamente qué tipo de respuesta necesita. Idealmente, distinga entre las respuestas que no entiende y las respuestas que están bien pero que no puede aceptar:
No olvide que los usuarios están hablando con su aplicación. Pueden usar diferentes palabras para describir lo mismo, por ejemplo, "jueves", "jueves", "mañana" o una palabra con un error tipográfico. Puede pedirles que confirmen su entrada o concentrarse en crear secuencias de mensajes más avanzadas para su chatbot.
Puede refinar los datos ingresados ejecutándolos a través de Normalizer, una biblioteca que convierte la ortografía del Reino Unido y Canadá al inglés estadounidense, explica las abreviaturas comunes y corrige más de 4000 palabras mal escritas.
Espere las entradas críticas. En algunos casos, necesitará que el usuario ingrese cierta información esencial sin la cual no puede continuar. En las GUI estándar, el problema generalmente se resuelve con una ventana modal emergente que bloquea el acceso a todo hasta que el usuario complete la tarea: "¿Validaste tu dirección de correo electrónico?", y la ventana dice "Sí" o "No".
Sin embargo, en el diseño conversacional, debe abordar este problema de una manera ligeramente diferente. Este tipo de bucle puede volverse bastante molesto con un robot, así que asegúrese de explicar la acción exacta que necesita y por qué la necesita con tanta urgencia. Prepare algunos fragmentos de conversación para este propósito para evitar que el chatbot se vuelva repetitivo:
En general, piense dos veces si cierta información es crítica para continuar. Siempre que sea posible, haga una conjetura fundamentada o solicite la misma información nuevamente durante un paso posterior.
Otra opción es utilizar botones y textos presugeridos que el usuario pueda elegir tanto a la hora de hacer preguntas como de dar las respuestas. Los botones deberían mejorar la calidad general de las entradas de los usuarios, sin embargo, pueden reducir ligeramente el factor de participación. Por lo tanto, es mejor usarlos solo cuando necesite recibir los datos esenciales para continuar.
A medida que avanza la tecnología de inteligencia artificial, puede resultar más fácil entrenar a los bots para que realicen ciertas respuestas y enseñarles a adivinar la intención del usuario en función de las interacciones anteriores almacenadas en la base de datos. Sin embargo, la mayoría de los chatbots de hoy en día no tienen cerebros de inteligencia artificial sofisticados para responder a los usuarios; por lo tanto, para una mejor UX, deberá abordar este trabajo usted mismo.
4. Concéntrese en la microcopia
El diseñador debe pensar como un redactor cuando desarrolla un chatbot. El contenido y el diálogo definirán el estilo de su producto. Las mejores aplicaciones suelen ser aquellas que presentan una forma de hablar divertida y conversacional. Por lo tanto, concéntrese en lo siguiente:
- Siga el mismo flujo de usuario que seguiría si estuviera hablando con una persona.
- El bot no debería sonar demasiado inteligente, usando estructuras gramaticales o de lenguaje complicadas. Manténgalo simple y sea conciso.
- No uses pronombres específicos de género, porque nunca sabes quién está del otro lado de la conversación.
- Prepare un conjunto de respuestas enlatadas ligeramente diferentes para que la conversación sea más humana.
- Agregue mensajes de ayuda y sugerencias para cuando el usuario se sienta perdido.
- Escriba respuestas ingeniosas para temas no admitidos, para que el bot no parezca tonto.
5. Revela características gradualmente
Las GUI estándar generalmente muestran todas las funciones disponibles en la pantalla a la vez. El usuario puede pasar el cursor sobre los iconos, hacer clic en los botones y acceder al menú para ver lo que la aplicación es capaz de hacer.
Sin embargo, interactuar con un chatbot puede parecer que el usuario está hablando al vacío. Por lo tanto, insinúe cada paso siguiente y resalte gradualmente las características desconocidas. Exploremos lo que esto significa.
Después de recibir el comando inicial del usuario, explique qué sucederá a continuación y qué hará el robot para completar la tarea. Sugiera los próximos pasos posibles y/o enlace a la página de preguntas frecuentes o al manual del usuario.
Desbloquee funciones adicionales después de la primera interacción exitosa. Deshabilite el "modo de entrenamiento" y comience a sugerir funciones adicionales y consejos más avanzados. Base esas funciones y sugerencias en el historial del usuario y en los datos ingresados previamente.
Informar al usuario sobre cosas nuevas que hacer. Por ejemplo, sugiera de manera proactiva algunas otras características interesantes de su robot:
¡Oye, tienes una fiesta próximamente! ¿Quieres que pida 5 pizzas grandes?
La agilidad conversacional es una de las fortalezas clave de Taco bot, por ejemplo. La empresa usó Wit.ai para impulsar diferentes escenarios de conversación e incluso hacer algunos chistes. La tecnología de procesamiento de lenguaje natural de la plataforma, que ahora también se usa para potenciar el Asistente virtual M de Facebook, permite que el bot represente diferentes estilos de pedido. Por ejemplo, "¿Puedo tener un burrito?", "Buritto, por favor", e incluso responder de manera hilarante a la solicitud "Estoy borracho", lo que activa el "Ok. Una taza de agua añadida a tu pedido”, responde. Además, los usuarios pueden escribir un comentario de una línea como "sin queso" y el bot entenderá que la información se refiere al burrito pedido previamente.
Sin embargo, si el chatbot inicia la conversación, asegúrese de que le brinde sugerencias relevantes porque no quiere parecer un spammer desagradable, ¿verdad?
Chatbots y reconocimiento de voz
Los comandos de voz se están convirtiendo en una cosa con Siri y Google Now, pero desarrollar tales bots obviamente requiere recursos humanos y materiales. Incluso las redes neuronales más poderosas que son responsables del reconocimiento de voz son bastante difíciles de entrenar en este momento. El desafío más común es que, si bien los errores pequeños son lo suficientemente simples como para eliminarlos, los errores recurrentes más grandes pueden volverse aún más grandes debido a la multiplicación, como señala Andrew Gibiansky.
Por ejemplo, si un usuario con acento pronuncia Apple como Eupple , la red podría recordar el comando de esta manera. Los homófonos son otro desafío importante para el reconocimiento de voz; palabras como "flor" y "harina" suenan idénticas, y entender el contexto correcto puede ser difícil.
Por lo tanto, si su objetivo es construir un chatbot simple, optar por los comandos de voz podría no ser su mejor opción en este momento, a menos que esté listo para invertir mucho en la arquitectura y la pila de tecnología avanzada de aprendizaje automático.
Notas finales
Si bien los chatbots pueden ser una gran herramienta para crear una experiencia de cliente más personalizada, el diseño conversacional aún tiene ciertas limitaciones. Como señaló Mariya Yao, hay casos claros en los que una conversación puede ayudar o dañar la UX.
Antes de crear un chatbot para su negocio, debe definir claramente su propósito y el valor exacto que podría aportar al usuario. Enséñele al bot a hacer algo extremadamente bueno, como entregar pronósticos del tiempo o presentar el alcance del servicio de la empresa antes de experimentar más con funciones más avanzadas. Esa es la lección clave que aprendimos al desarrollar el bot de abril en función de los comentarios de los usuarios.