Cualquiera puede construir un chatterbot. La mayoría de las bibliotecas de chatbots tienen documentación razonable, y el omnipresente bot "hola mundo" es fácil de desarrollar. Sin embargo, como ocurre con la mayoría de las cosas, la creación de un chatbot de nivel empresarial está lejos de ser trivial. En esta publicación voy a compartir contigo 10 consejos que hemos aprendido a través de nuestra propia experiencia.
Esta no es una publicación sobre Google Dialogflow, Rasa o cualquier otro chatterbot marco de referencia. Se trata de la aplicación de tecnología, el proceso de desarrollo y la medición del éxito. Como tal, es más adecuado para propietarios de productos, arquitectos y gerentes de proyectos que tienen la tarea de implementar un chatbot.
Estoy diciendo lo obvio aquí, pero es realmente importante saber lo que quiere lograr y cómo se puede medir. Muchos de sus KPI serán específicos de un sector o dominio, pero le daré algunos KPI específicos de chatbot en los que pensar. Enumerados en orden de importancia:
Comentarios de los usuarios - Pregunte a sus usuarios si están satisfechos. Esto se puede hacer durante el flujo de diálogo o al final. Pedir comentarios le dará dos KPI:
- Tasa de retroalimentación - el porcentaje de usuarios que proporcionaron comentarios.
- Tasa de satisfacción - el porcentaje de usuarios satisfechos. En general, recomiendo ofrecer una opción binaria "satisfecho" frente a "no satisfecho" en lugar de una calificación de 1 a 5, pero la elección es suya.
El porcentaje de abandonos - El porcentaje de usuarios que abandonan conversaciones a mitad de camino.
Tarifa de autoservicio - El porcentaje de usuarios que pudieron lograr su objetivo sin necesidad de chatear, telefonear o enviar un correo electrónico a un agente humano.
Tasa de retorno - El porcentaje de usuarios que vuelven a utilizar el chatterbot de nuevo.
Distribución de uso por horas - ¿Cuándo la gente usa tu bot? Un bot que atiende a los clientes las 24 horas del día, los 7 días de la semana, es especialmente valioso, ya que generalmente es prohibitivamente caro proporcionar cobertura humana las 24 horas del día, los 7 días de la semana.
También hay un par de KPI técnicos en los que pensar:
Precisión del modelo - Si está usando comprensión del lenguaje natural para comprender los mensajes, deberá medir la precisión de sus modelos. Este es un tema complejo y es mejor dejarlo en manos de los científicos de datos y desarrolladores experimentados. Una palabra de advertencia: no se obsesione demasiado con las medidas técnicas de precisión. En última instancia, lo que importan son los KPI empresariales. Un modelo con una precisión del 98% no sirve de nada si los usuarios no están satisfechos con el servicio.
Tiempos de respuesta - La velocidad no es tan importante para un chatbot. Puede evitar el rendimiento lento agregando un mensaje de tipo "bot está escribiendo" en los cuadros de diálogo. A veces, incluso fingimos una demora para hacer que el bot parezca más humano. No obstante, conviene vigilar el rendimiento para mantener tiempos de respuesta aceptables.
Por último, es importante saber qué canal prefieren sus usuarios si implementa un chatbot omnicanal. Depender de un canal de terceros, por ejemplo, Facebook Messenger, lo pone en una posición vulnerable.
Como la mayoría de la tecnología, un bot está diseñado para automatizar tareas que de otro modo serían realizadas por un operador humano. Antes de embarcarse en un chatbot, es fundamental que sepa exactamente lo que intentas automatizar. La mejor manera de hacer esto es emplear primero agentes humanos para responder a los mensajes de sus usuarios. ¿Por qué hacer esto?
Para validar supuestos - usted (o el propietario de su producto) puede haber establecido sus casos de uso o historias de usuario, pero ¿qué tan válidos son? ¿Cuántos usuarios eligen el chat en vivo para verificar el estado de su pedido?
La regla del 80/20 - los usuarios harán todo tipo de solicitudes. Incluso para un caso de uso particular, algunas solicitudes serán tan esotéricas que no tiene mucho sentido automatizarlas. Por ejemplo, lo más probable es que desee manejar consultas de tipo de envío y envío, pero ¿su bot realmente necesita manejar consultas sobre el IVA en los envíos BFPO? probablemente no.
Entender el tono de las conversaciones. - ¿Cómo interactúan sus usuarios a través del chat en vivo? ¿Son amables o profesionales, utilizan coloquialismos? ¿Usan emojis y texto hablado? Comprender el tono de las conversaciones le permitirá desarrollar un chatbot con el que sus usuarios se sientan cómodos.
Para obtener datos de entrenamiento - Ésta es probablemente la razón más importante por la que debería utilizar a los humanos primero. Incluso si no planeas usar comprensión del lenguaje natural aún necesitará datos para la concordancia de palabras clave. Si está utilizando NLU / NLP, sin duda necesita buenos datos de entrenamiento. Por lo que hemos visto, el 80% de los chatbots no cumplen con las expectativas porque utilizaron datos de entrenamiento sintéticos o una muestra limitada de datos del mundo real.
Es posible que ya emplee agentes humanos para atender a sus clientes. Si es así, probablemente necesite modificar los datos que registra y la forma en que están estructurados (ver más abajo). Si aún no emplea agentes humanos, puede hacerlo en una escala (relativamente) pequeña.
No es necesario que atienda a todos sus clientes manualmente antes de cambiar a un chatbot. Lo que busca es una muestra representativa. Por ejemplo, puede mostrar un botón de "chat en vivo ahora" para uno de cada 10 visitantes.
1. Informe de tendencias de chatbot 2021
2. 4 HACER y 3 NO HACER para entrenar un modelo de PNL Chatbot
3. Bot Concierge: Maneja múltiples chatbots desde una pantalla de chat
De acuerdo, debe tener en cuenta el RGPD, por lo que no puede registrar todo. Para sus fines, en realidad no necesitamos información de identificación personal. Lo que buscas son las frases que usan los usuarios. En particular, te interesa:
- intenciones - "Quiero comprobar mi estado del pedido ". Puede asignar intenciones a casos de uso / historias de usuario.
- entidades - "sí un chaqueta". Las entidades (sustantivos relevantes) forman la base de reconocimiento de entidad nombrada
- partes de la oración - "quiero un blanco o negro vestir". Los adjetivos, preposiciones y conjunciones. Los usará para entrenar a su parte del etiquetado del discurso .
- sentimiento - "No estoy feliz" or "Gracias por tu ayuda". Puede utilizar la clasificación de texto y análisis sentimental para detectar cuando los usuarios están satisfechos o insatisfechos.
Idealmente, registrará las conversaciones en una base de datos de formato libre, algo como elasticsearch sería genial. Es importante registrar no solo los mensajes, sino el contexto más amplio. es decir, desea unir mensajes en hilos de conversación e identificar a los participantes (usuario vs agente). Registre las conversaciones durante la fase piloto humana inicial y también durante la implementación completa. Querrá evaluar, perfeccionar y mejorar continuamente.
También debe iniciar sesión eventos clave como clics y conversiones y junto con metadatos como marcas de tiempo, dispositivo utilizado, dirección IP, etc. Solo tenga cuidado de no infringir el RGPD a través de identificación de rompecabezas
Si ha seguido nuestro primer consejo, debería tener algunos datos de entrenamiento decentes. Ahora es el momento de ponerlo en práctica.
Es posible que desee dividir las conversaciones en 3 partes:
- intro - el primer par de mensajes, p. ej. "Quiero comprobar el estado de mi pedido". Útil para intención y entidad análisis
- cuerpo - p.ej "El lunes pasado". TEstos mensajes pueden contener más entidades
- cerrar sesión - último par de mensajes, por ejemplo "Gracias por tu ayuda". Útil para análisis sentimental
A continuación, solicite clustering en los mensajes de introducción para identificar intenciones y entidades comunes. Siguiendo la regla 80/20, esto le dirá dónde concentrar sus esfuerzos.
Finalmente, use los datos para entrenar y probar sus modelos de NLU o algoritmos de concordancia de palabras clave. Tenga cuidado al dividir los conjuntos de datos de entrenamiento y prueba.
Como se mencionó en la primera sección, es posible que también desee analizar los datos para comprender el tono de las conversaciones. Esto será útil cuando piense en cómo redactar las preguntas que hará su bot.
Los profesionales de TI experimentados piensan detenidamente en la validación y el manejo de errores al crear aplicaciones o sitios web. Por lo general, puede confiar en la interfaz de usuario para ayudar a hacer cumplir las restricciones. Por ejemplo, utilizando un cuadro de selección desplegable con las opciones válidas. El desafío surge cuando se intenta hacer cumplir las mismas restricciones en un chatbot.
Respuestas rápidas
Algunos canales ofrecen respuestas rápidas- respuestas prellenadas que pueden actuar como un reemplazo para selectos menús desplegables, botones de radio y casillas de verificación. Las respuestas rápidas pueden usarse como un medio para restringir el comportamiento del usuario, pero deben usarse con cuidado. A diferencia de los cuadros desplegables, las opciones generalmente se muestran horizontal o verticalmente y ocupan un espacio valioso en la pantalla, especialmente en dispositivos móviles. Esto los hace adecuados para respuestas con pocas opciones.
En la mayoría de los casos, no podrá utilizar respuestas rápidas. Incluso si son una opción factible, un chatbot con muchas respuestas rápidas no es más que una aplicación con una mala interfaz de usuario. Como su nombre lo indica, las respuestas rápidas deben usarse para ayudar a los usuarios a responder rápidamente. Existen para hacer la vida más fácil a los usuarios, no a los desarrolladores.
Validación de mensajes
La entrada de texto libre es el corazón de un chatbot. No tiene restricciones, por lo que una buena validación y manejo de errores es especialmente importante. Recuerde: si bien su modelo de NLU puede identificar correctamente una entidad, esto no significa que sus sistemas posteriores puedan manejarla. 100 libras o el lunes pasado son ejemplos de entidades que un modelo NER probablemente reconocerá, pero que necesitan transformarse para el consumo posterior.
Aquí está el flujo típico de chatbot:
- Hacer una pregunta
- Respuesta de proceso
El problema surge cuando sus usuarios no envían un solo mensaje en respuesta a la pregunta, sino varios. Tomemos este sencillo ejemplo de diálogo entre un cliente y un agente humano:
Agente: hola como puedo ayudar?
Usuario: Hola
Usuario: quiero comprobar el estado de mi pedido
Usuario: orden A123
Ahora veamos como esto podría mira con un bot ingenuo:
Bot: hola como puedo ayudar?
Usuario: Hola
Bot: Lo siento, no entiendo
Usuario: quiero comprobar el estado de mi pedido
Usuario: orden A123
El bot le hace una pregunta al usuario y luego intenta inferir la intención de la respuesta. "Hola". Esto no puede tener sentido, por lo que genera un error. Hay algunas soluciones alternativas:
Soporte chit chat
Básicamente, entrena al chatbot para que reconozca los mensajes de tipo "chit chat", a los que puede responder o simplemente ignorar. Tomando el ejemplo anterior, el bot ignoraría la "Hola" o responde con "Hola". De cualquier manera, no generaría un error.
Almacenar en búfer los mensajes entrantes
Almacene en búfer todos los mensajes entrantes. Espere hasta que hayan transcurrido N segundos desde el último mensaje. En este punto, concatenar todos los mensajes almacenados en búfer juntos en un solo mensaje y procesarlo. Tomando el ejemplo anterior, se vería así:
Bot: hola como puedo ayudar?
Usuario: Hola
Usuario: quiero comprobar el estado de mi pedido
Usuario: orden A123
(espera N segundos)
Bot: OK …
Si el canal lo permite, es posible que pueda monitorear la notificación "el usuario está escribiendo" en su lugar, estableciendo N en un valor más bajo. La desventaja de este enfoque es que el usuario siempre tiene que esperar N segundos para obtener una respuesta que hace que el bot parezca no responder.
Buffer pero cortocircuito
El mismo enfoque que se describe anteriormente, pero en lugar de esperar siempre N segundos, intenta procesar el búfer de mensajes cada vez que se recibe un mensaje. Si usted podemos procesarlo, lo hace de inmediato, evitando retrasos. Volviendo al diálogo artificial, se vería así:
Bot: hola como puedo ayudar?
Usuario: Hola
(no se puede procesar - espera)
Usuario: quiero comprobar el estado de mi pedido
(Bingo)
Bot: Ok, ¿cuál es su número de pedido?
Además de validar la respuesta de cada usuario, querrá configurar varios "puntos de control". Esto significa decirle al usuario lo que el bot ha entendido y pedirle que lo confirme. Por ejemplo, diciendo algo como:
"Tengo entendido que desea comprobar el estado del número de pedido A123"
Por supuesto, debe pensar detenidamente cómo manejará una respuesta negativa. Es poco probable que funcione simplemente repetir las mismas preguntas y ejecutar las respuestas a través del mismo modelo o algoritmo de NLU. Muchos chatbots le piden al usuario que reformule su solicitud con la esperanza de que funcione por segunda vez. Creemos que esta es una mala estrategia, no hay garantía de que funcione y es una mala experiencia de usuario.
Creemos que hay dos enfoques que producirán mejores resultados:
Profundizar
A la primera estrategia la llamamos enfoque de "desglose". Empiece por hacer preguntas abiertas a los usuarios, p. Ej. "¿Cómo puedo ayudar?" or "¿qué estás buscando?". Ejecute las respuestas a través de los modelos y algoritmos de NLU y controle la conversación.
Si todo está bien, ¡genial! Si no, pasa a hacer preguntas cerradas más específicas, probablemente con alguna orientación. Por ejemplo "¿Tiene alguna consulta sobre una devolución?" Probablemente utilizará un conjunto diferente de modelos o algoritmos de NLU para analizar estas preguntas cerradas.
No querrá comenzar haciendo este tipo de preguntas, porque las preguntas cerradas resultan en un diálogo largo. Es mucho mejor que un usuario diga "Quiero un vestido blanco de la talla 12" que responder a múltiples preguntas sobre el producto, el color y el tamaño. El objetivo aquí es manejar con gracia los valores atípicos que no se pueden cumplir a través del camino feliz.
Rescate
Llamamos al segundo enfoque el "rescate". En pocas palabras, si no puede comprender las necesidades del usuario, recurre a la intervención humana. Consulte a continuación para obtener más detalles.
¿Qué puede hacer con los valores atípicos? En primer lugar, es importante que el sistema reconozca cuándo no está cumpliendo con las expectativas del usuario. Para sus usuarios, no hay nada peor que hablar con una pared de ladrillos. Una forma de detectar esto es contar el número de "Lo siento, no entiendo" escriba las respuestas generadas para cada diálogo. Como se mencionó anteriormente, los puntos de control también son muy importantes.
No puede esperar que su chatbot sea perfecto, y no tiene por qué serlo. Habrá casos en los que el chatbot no comprenda al usuario debido a un modelo o algoritmo de NLU imperfecto. Habrá casos en los que el bot simplemente carece de la lógica empresarial para cumplir con la solicitud de los usuarios.
Proporcionar una reserva o un "rescate" a los agentes humanos es una excelente manera de manejar estos casos extremos. No está tratando de crear el chatbot perfecto, incluso si tal cosa fuera posible. Su objetivo es obtener el mejor rendimiento de su inversión. Estos casos extremos esotéricos pueden ser manejados por un grupo relativamente pequeño de agentes humanos. Además, las conversaciones entre los usuarios y los agentes deben registrarse y se incorporarán a su plan de mejora continua.
Tampoco es necesario que ofrezcas soporte de estilo de chat en vivo. Puede ser suficiente pedirle al usuario que envíe un correo electrónico a su equipo de ventas o servicio al cliente con su solicitud.
La razón por la que está registrando las conversaciones es para acumular datos de entrenamiento, lo que le permite crear modelos precisos. Para tomar prestado un cliché, este es un proceso, no un evento. Si bien los datos capturados durante la etapa inicial "humana" lo ayudan a comenzar, debe volver a capacitar a los modelos a medida que recopila más datos.
Puede descubrir que sus usuarios interactúan de manera bastante diferente con su bot frente a los agentes humanos. Décadas de búsqueda en Google han condicionado a las personas a usar una forma de lenguaje concisa. Lenguaje destinado a ayudar al sistema a comprender su consulta. Por ejemplo, un usuario puede decirle a un agente humano "Una camisa de algodón blanca o crema" pero dile al bot simplemente "Camisa de algodón blanca".
También es importante estar atento a los KPI y las métricas.
Los chatbots son de forma libre, los usuarios pueden decir lo que quieran. Esto presenta desafíos pero también oportunidades. Los chatbots son excelentes para la investigación de mercado.
Tomemos, por ejemplo, un sitio de comercio electrónico para un comerciante de ropa. Mientras mira un vestido, el usuario puede elegir el color: rojo o blanco. ¿Cómo puede el usuario darnos su opinión de que le gustaría el mismo vestido en negro? Podrían completar un formulario de comentarios o enviar un correo electrónico, pero es poco probable que lo hagan. Es más probable que busquen otro vestido o elijan a otro comerciante.
Por el contrario, un bot de comercio electrónico podría preguntar "¿que color?" a lo que el usuario responderá "negro". El bot le diría al usuario que el vestido solo está disponible en rojo y blanco. Sin embargo, puede sugerir un vestido similar que esté disponible en negro. Crucialmente el bot tiene capturó la demanda para una versión negra del vestido. Si suficientes usuarios piden negro, los compradores pueden decidir si vale la pena ofrecerlo la próxima temporada.
La implementación de un chatbot de nivel empresarial requiere una planificación cuidadosa. Es importante comprender los KPI y los impulsores comerciales antes de embarcarse en el proyecto. Tener un medio para medir el éxito también es realmente importante.
Obtener datos de entrenamiento adecuados es esencial y una de las mejores formas de hacerlo es utilizar primero agentes humanos. El registro y la supervisión cuidadosos le permitirán mejorar la precisión de su chatbot con el tiempo. Como ocurre con todas las aplicaciones de software, la validación y el manejo de errores son muy importantes. Los chatbots tienen el potencial de malinterpretar a los usuarios, por lo que los puntos de control son un doble control útil.
Esté preparado para adaptarse y evolucionar rápidamente, especialmente durante los primeros días. Utilice las pruebas A / B para encontrar los flujos de diálogo que funcionan mejor. Vuelva a entrenar los modelos NLU a medida que recopila más datos de entrenamiento. Busque oportunidades: ¿los usuarios están solicitando casos de uso que se ha perdido? ¿Existe demanda de un producto o variante que aún no está vendiendo?
Coinsmart. Mejor Bitcoin-Börse en Europa
Source: https://chatbotslife.com/chatbot-best-practices-b7c7d4bb0086?source=rss—-a49517e4c30b—4