Facebook ha dado a conocer su proyecto BlenderBot, un chatbot o «robot conversacional» de tipo general cuyas respuestas resultan sumamente humanas y realistas. ¿El truco? En buena parte es que está entrenado con inteligencia artificial y el gigantesco «big data» procedente de fragmentos de 1.500 millones conversaciones humanas recogidas de internet. Con esto, el sistema puede encontrar patrones y dar respuestas a casi cualquier pregunta o comentario.
LA LLEGADA DE LOS ROBOTS CONVERSACIONALES
Los chatbots son cada vez más comunes en muchas apps, tiendas de comercio electrónico y sistemas de mensajería como un sistema de respuestas rápido y eficiente, al menos para el nivel más básico, sin llegar a la complejidad de los asistentes digitales de Amazon, Google o Apple. Suelen mostrarse con un icono de Ayuda o Soporte y responden al lenguaje natural. Pueden responder a preguntas del estilo de:¿Cómo puedo cambiar mi contraseña? ¿Qué significa el error 5001? o ¿Dónde puedo consultar mi factura?, ahorrando tiempo a los operadores humanos, que pueden dedicarse a otras cosas.
Es relativamente fácil volcar en un chatbot algunos miles de páginas sobre un tema y que puedan responder las preguntas más habituales sin gran esfuerzo. Sin embargo, enfrascarse en una buena conversación en lenguaje natural y,además, resultar útil no es fácil. Los expertos dicen que un chatbot puede llegar a hacerlo tan bien como las personas locuaces utilizando algunas técnicas que los humanos damos por supuestas:
- Dar ideas sobre temas interesantes
- Escuchar lo que dice la persona
- Mostrar conocimiento de los temas
- Mostrar empatía
- Dar muestras de una personalidad consistente
Algunas de estas características, como la empatía o la demostración de una personalidad consistente, son muy humanas, pero pueden simularse con el entrenamiento adecuado. Y es que estos sistemas de inteligencia artificial tienen detrás una preparación muy cuidadosa, además se basan en redes neuronales lo cual ayuda a su funcionamiento.
ALGORITMOS ENTRENADOS CON MILLONES DE DATOS Y CONVERSACIONES
Los modelos matemáticos de los algoritmos del BlenderBot de Facebook se han probado en varias versiones, utilizando entre 90 a 9.400 millones de parámetros. Este gigantesco volumen de contenidos proviene de los vastos repositorios de textos digitales disponibles en internet, de archivos enciclopédicos y temáticos, y de las redes sociales. Gracias a ello, BlenderBot sabe«un poco de todo» y sabe cuáles son las respuestas típicas a casi cualquier tema.
Todo esto funciona tanto para preguntas concretas como para simples conversaciones intrascendentes. Los algoritmos de BlenderBot evalúan cada palabra de una frase para predecir y generar las siguientes palabras más probables (supuestamente, adecuadas y correctas), minimizando lo que denominan la «perplejidad» o las respuestas extrañas o inapropiadas.
Pero para que no se repita demasiado, se añaden algunos toques ingeniosos. Por ejemplo, si se detecta que la persona cambia de tono, el chatbot puede intentar hacer un chiste. Por otra parte, las frases se limitan en longitud para que la charla no parezca un monólogo de robot en el que no se hace caso a la persona. También se busca la consistencia intentando que un comentario como «Me gusta la comida vegetariana» no se contradiga con una frase posterior «Me encantan las hamburguesas».
La forma de entrenar y evaluar el funcionamiento del BlenderBot es mediante cuatro apartados distintos:
- Uso de la personalidad (PersonaChat)
- Uso del conocimiento (Mago de la Wikipedia)
- Uso de la empatía (Diálogos empáticos)
- Una combinación de todo lo anterior: BlendedSkillTask (BST)
Facebook se ha concentrado sobre todo en hacer que la evaluación sea fruto de esa combinación final: personalidad + conocimiento + empatía. Además de esto utilizan frases de conversaciones estándar que evalúan personas en un test normalizado, en el que deben explicar qué conversación les parece más «humana», «empática», etc. Esto permite asignar valoresnuméricos a los resultados y comprobar qué tal lo hace el chatbot.
Actualmente el 50% de los evaluadores ya prefieren las conversaciones de BlenderBot a las de un interlocutor humano, una cifra que había variado solo entre el 20% y 40% hasta ahora con otros métodos. Puliendo algunos detalles como los relacionados con las palabrotas y el lenguaje no sexista –en los que dicen que todavía están trabajando– BlenderBot será una herramienta sumamente interesante, sobre todo porque la han puesto como código libre a disposición de cualquier equipo que quiera desarrollar aplicaciones con ella.
Álvaro Ibánez
Microsiervos
Álvaro es editor de Microsiervos, uno de los más conocidos blogs de divulgación sobre ciencia, tecnología e Internet en castellano. Participó en el nacimiento de proyectos españoles de internet como Ya.com/Jazztel y Terra/Telefónica y anteriormente trabajó en el mundo editorial de revistas técnicas.