# Bot conversacional

Los bot de charla o bot conversacional (en inglés: chatbot ) son aplicaciones software que surgen en los años 60, y que simulan mantener una conversación con una persona al proveer respuestas automáticas, las cuales son previamente establecidas por un conjunto de expertos a entradas realizadas por el usuario. Estos bot, también conocidos como sistemas expertos, utilizan el razonamiento basado en casos (CBR: case base reasoning).
Habitualmente, la conversación se establece mediante texto, aunque también hay modelos que disponen de una interfaz de usuario multimedia que permiten la entrada auditiva. Más recientemente, algunos comienzan a utilizar programas conversores de texto a sonido (CTV), dotando de mayor realismo a la interacción con el usuario y ayudando a reducir el tiempo de respuesta.
Para establecer una conversación, han de utilizarse frases fácilmente comprensibles y que sean coherentes, aunque la mayoría de los bot conversacionales no consiguen comprender del todo. En su lugar, tienen en cuenta las palabras o frases del interlocutor, que les permitirán usar una serie de respuestas preparadas de antemano. Estos son capaces de reconocer la manera en la que una frase está formulada gracias a una serie de patrones comparativos preestablecidos, y de este modo, basándose en las diferentes variables de dicha frase, presentan una respuesta correspondiente. De esta manera, el bot es capaz de seguir una conversación con más o menos lógica, pero sin saber realmente de qué está hablando.
El objetivo principal de los chatbots es mejorar la atención a los clientes (en el ámbito del marketing) , es decir, generar respuestas rápidas y concisas a cuestiones habituales de los usuarios. Además, de enviar información/novedad y publicidad de forma automática de la empresa. En el ámbito educativo su objetivo principal es mantener una comunicación fluida entre alumnado-familia- centro.
En relación con el control de calidad existe la prueba de Turing para determinar el nivel de comprensión del bot. La prueba de Turing es el estándar de la industria que permite identificar si el bot tiene la capacidad para generar un comportamiento inteligente con el usuario. Por lo tanto, el desarrollo de la prueba permite que la industria de los bot conversacionales sea de calidad y se enmarquen como asistentes inteligentes.

## Historia

Los chatbots tienen su origen en 1966, cuando el profesor Joseph Weizenbaum creó el primer chatbot basado en inteligencia artificial llamado ELIZA, el cual actuaba como terapeuta. La función de este chatbot consiste en descifrar la información introducida por un usuario para presentar una respuesta adecuada.
A lo largo de los años han ido apareciendo diferentes tipos de chatbots, los cuales han experimentado modificaciones para ser aplicados en un ámbito diferente a la investigación académica. Estos, utilizan un lenguaje de marcas creado para el desarrollo de bots conversacionales, también conocido como AIML.
Quizás todos ellos comenzaron como un juego, pero con el tiempo se han extendido para realizar muchas tareas. Muchos tienen su razón de ser e incluso esa razón es de bastante utilidad para todos. Los bots más clásicos y tempranos, además de ELIZA, son SmarterChild, Parry y SHRDLU; entre los más recientes se encuentran Racter, A.L.I.C.E o Jabberwacky, Dr. Abuse (de Barres&Boronat), muy parecido a ELIZA y Semantycs (de Full on Net) que ya puede interactuar con diversos canales y extraer información de ERP. Existen dos chatbots que utilizan las características de ELIZA y AIML, e implementan algunas mejoras, estos son: Ultra Hal y Jabberwacky. Sin embargo, no se posee más que transcripciones de sus conversaciones.
Los más avanzados son programas capaces de mantener una conversación lógica y pseudo inteligente en un determinado idioma. Algunos de los más complejos están programados en C++, Delphi o similares, y otros más sencillos en ActionScript, PHP, VBScript, etc. Pueden ser consultados además de mediante software instalado en un ordenador personal, vía web y vía aplicaciones instaladas en teléfonos inteligentes (entre las mismas, cabe mencionar a Siri y SimSimi, entre otros muchos). Existen muchos otros con amplia presencia en redes de IRC, donde son conocidos como bots de charla o bots de chat.
Dentro del contexto de la competición de los chatbots, la prueba de Turing es el medio para otorgar el premio a los chatbots considerados por los jueces como la inteligencia artificial que más se acerca a la respuesta humana. Una de las competiciones anuales más importantes es el Premio Loebner, el cual desde el año 2019 se implementó la metodología de evaluación con base a la valoración del público. Los chatbots en la competición del Premio Loebner nunca han alcanzado o superado una puntuación de 70 sobre 100 bajo las reglas de la prueba de Turing, lo que significa que ninguno es suficientemente humano.

## Desarrollo

Antes la creación de un chatbot decente suponía una gran inversión en recursos para su dificultosa programación. Sin embargo, la mejora en el desarrollo y modulación de las librerías de vocabulario y los algoritmos de inteligencia artificial, están simplificando su elaboración.
Hoy en día, existen páginas como collect.chat, flowXO, chatfuel, entre otros, que ofrecen plantillas con tecnología de procesamiento de lenguaje natural (PLN), la parte más compleja a la hora de desarrollarlo, ya que requiere conocimiento de programación.
Actualmente, la producción de estos bots se ha elevado notablemente. Cada persona o empresa puede contar con un bot personalizado según sus necesidades. Éste puede asumir distintas personalidades, así como aprender de las interacciones con su usuario, para poder ofrecerle una experiencia totalmente personalizada.
No olvidemos que tienen muchísima utilidad a la hora de dar información rápida acerca de un sistema o zona, y que se pueden convertir en auténticos especialistas en materias muy concretas, debido a la capacidad de aprendizaje que incorporan algunos de ellos. Por ejemplo, ELIZA y algunos chatbots no llevan a cabo una evaluación del contexto, sino que por el contrario, trabajan a través de las palabras claves en la frase captada (o frase de entrada). . Así pues, en lo referente a ALICE, podemos afirmar que se trata de un robot conversacional, el cual usa la inteligencia artificial y el PLN, basándose en un conocido experimento realizado por Alan M. Turing (1950).
ALICE y AIML han sido considerados como una extensión sencilla de ELIZA. Sin embargo, ALICEbot incluye actualmente más de 40.000 categorías de conocimientos en comparación a las 200 de ELIZA. Se debe destacar que ALICE cuenta con un modelo de aprendizaje supervisado. De este aprendizaje se encarga el botmaster, quien rastrea las conversaciones y construye nueva información AIML con el objetivo de conseguir respuestas más naturales y “humanas”.
En 2015 se estrena la plataforma de bots de Telegram. En 2016 se desarrollaron cada vez más chatbots para funcionar en Facebook Messenger. Por ejemplo en la industria de viajes, el de Aeroméxico vende boletos y responde a preguntas, mientras el de KLM's provee el estatus de vuelos y envía los pases de abordar móviles. Estos servicios por chatbot ya existían por varios años en la app WeChat.
Las mismas técnicas de interacción conversacional se pueden aplicar a los asistentes virtuales por voz, por ejemplo desde 2016 se puede pedir un Uber desde el dispositivo Google Home, que contiene la inteligencia artificial del asistente virtual Google Assistant, por voz, por medio de una conversación natural.
Pero, a la hora de interactuar con el chatbot no se toma en cuenta la recopilación que suministran los usuarios. Para evitar compartir los datos relacionados con información personal, se creó el Reglamento General de Protección de Datos (General Data Protection Regulation) que entró en vigor el 25 de mayo de 2018.

## Uso en sistemas de diálogo

Algunos bots conversacionales son integrados en sistemas de diálogo como asistentes virtuales automatizados y compañías están usándolos en vez de call centers. Los bots pueden responder al usuario y asistirlo en múltiples actividades; entre ellas están aprender, buscar, recordar, conectar con otros sistemas o integrar servicios. Actualmente, los bots de charla pueden operar basados completamente en inteligencias artificiales pero hay un creciente interés en usar computación basada en humanos para proveer un servicio más eficiente.
Esta técnica, también conocida como computación con humanos en el bucle, o human-in-the-loop computing, puede llegar a convertirse en la forma más efectiva para entrenar los bots de charla y lograr que puedan comunicarse independientemente con el usuario. También hace más relevante su capacidad para beneficiarse de un continuo bucle de retroalimentación. Al tener una mayor cantidad de personas interactuando con ellos y enseñándoles como resolver problemas, su algoritmo de aprendizaje automático mejora. De esta manera asistentes personales que utilicen una combinación de inteligencia artificial y humanos tienen la capacidad de proveer una experiencia más productiva y agradable para el usuario.
Las mismas técnicas de interacción conversacional se pueden aplicar a los asistentes virtuales por voz, por ejemplo desde 2016 se puede pedir un Uber desde el dispositivo Google Home, que contiene la inteligencia artificial del asistente virtual Google Assistant, por voz, por medio de una conversación natural.

### Clasificación

En la práctica, el mercado empieza a diferenciar entre aquellos bots que siguen unas reglas básicas (y que por tanto no son muy inteligentes) de los bots inteligentes. Por lo tanto, se determinan varias clasificaciones referentes a los tipos de chatbots. Los primeros, los chatbots basados en recuperación, son sencillos de desarrollar, ya que dan respuestas delimitadas a entradas específicas del usuario, solo responden a lo que ya tienen predefinido por el desarrollador y suelen estar enfocados a dar respuestas cortas. Estos no disponen de espacio para almacenar conversaciones, pero son capaces de combinar normas y reglas gramaticales; mientras que los segundos, los chatbots basados en generación, suelen enfocarse a conversaciones largas. Su desarrollo es más complejo y necesitan almacenar gran cantidad de información a través de la interacción con el usuario, para así dar respuestas correctas. Son más abiertos (en cuanto permiten que el usuario interaccione libremente con el bot), se utilizan sistemas de inteligencia artificial (motores de NLP) con los que procesar la información (el input) del usuario que escribe al bot, para proponerle una respuesta. La tercera generación de chatbots que encontramos usa un lenguaje de marcado basado en XML, conocido como AIML.
Del mismo modo, existen chatbots de dominio abierto y cerrado. Los chatbots de dominio abierto, no tienen ningún propósito específico, ya que generan respuestas de todo tipo, como los enfocados al servicio de atención al cliente, a diferencia de los chatbots de dominio cerrado, que están enfocados a utilizarse para tratar solo temas específicos.
En el ámbito de los sistemas de inteligencia artificial, la industria tecnológica es la primera que ha empezado a apostar por ellos (sistemas como Watson de IBM, LUIS de Microsoft o DialogFlow de Google son claros ejemplos) donde la clave de la inteligencia del bot reside en el entrenamiento que se haga del mismo, para lo que se definen conceptos como Intenciones (qué quiere decir el usuario, cuál es su intención), Entidades y Diálogos.
A continuación, se ofrece diferentes ejemplos de chatbots/ asistentes inteligentes muy presentes en nuestra vida cotidiana. Estos ejemplo tienen funciones similares los cuales son capaces de controlar cualquier espacio a tu disposición (activar alarmas, subir/bajar persianas, poner música, enviar mensajes, realizar llamadas, etc.)
* Siri de Apple.
* Amazon Alexa.
* Cortana de Microsoft.
* Google Now de Google.

## Contextos en los que se utilizan

Los chatbots pueden utilizarse en multitud de contextos distintos y según la finalidad deseada. Algunos de ellos son: el educativo y el científico, como asistentes virtules en empresas, o en el ámbito del ocio y entretenimiento. En contextos empresariales, son varias las funciones que pueden desarrollar los chatbots, ya sea en webs o en empresas físicas. Son capaces de ejercer la función de atención al cliente de manera rápida y sencilla, ayudándoles a acceder a la información que necesitan. A su vez, también son capaces de proporcionar novedades pertinentes diariamente de manera automática y de gestionar los procesos de compra y pago en línea, acompañando al cliente a agilizar el proceso y contestando a preguntas recurrentes. Pero, en esta área el manejo de los bots conversacionales no se limita exclusivamente a atender a los clientes, también ayuda a facilitar y agilizar procesos para las empresas y sus empleados.
En redes sociales y aplicaciones de mensajería, son bots normalmente orientados al branding y pueden ofrecer contenidos personalizados a sus usuarios en forma de conversaciones. Respecto a las conversaciones a través de internet, los bots pueden llevar a cabo acciones, como componer frases y responder distintas cuestiones en diferentes lenguas. Para ello, realizan una traducción que permite al usuario adquirir respuestas en su lengua materna.

### Ámbito educativo

Los bots conversacionales educativos tienen un potencial importante por su capacidad comunicativa mediante el procesamiento de lenguajes naturales. Se basan en la interacción estudiante-máquina y utilizan inteligencia artificial (IA); aspecto que también posee los sistemas de tutorías inteligentes. No obstante, estos últimos son sistemas para enseñar conocimientos más concretos. Los bots conversacionales son más abiertos y no están tan limitados a una cantidad de información.
Como roles y el tipo de relación que existe entre docentes-bots conversacionales-estudiantes, se deduce que el profesor diseña y configura este programa con la finalidad de que lo complemente y ayude en tareas sencillas. La figura del docente asume una tutorización personalizada, interviene en situaciones de conflicto o de alegaciones de evaluación y dedica el tiempo a cuestiones más creativas y de nivel cognitivo alto.
Los bots conversacionales actúan como mediadores interactivos que proporcionan atención ininterrumpida, resuelven preguntas frecuentes y guían tareas mecánicas y repetitivas de nivel cognitivo bajo. Con ellos, el estudiante accede fácilmente a contenidos. Para las familias, es una herramienta cómoda y productiva que les ayuda a obtener respuestas fáciles sobre el centro y el plan docente y proporcionan información sobre diferentes procesos como el de admisión..
Otro de los aspectos que engloban los chatbots en el apartado de educación, es la enseñanza de diferentes idiomas. Un ejemplo de ello, sería el chatbot "Soy Diego" o su versión femenina "Soy María", profesores en línea con los que se puede mantener una conversación en el idioma que queremos aprender, en este caso, español. Estos son capaces de señalar errores de ortografía o gramaticales .
Su incorporación educativa debe ir precedida de una reflexión previa que garantice organización, funcionalidad y viabilidad dentro de la institución; además, atiende a la finalidad educativa y la no educativa. La finalidad educativa más relevante de los bots conversacionales es ayudar al equipo docente a adaptar el modelo de enseñanza a las necesidades individuales de los alumnos. También, tienen una finalidad más cercana a los discentes, motivándolos a través de una serie de actividades sobre los temas a trabajar en el aula, en los que el evaluador produce distintas preguntas y el evaluado las responde, obteniendo una retroalimentación instantánea. La finalidad no educativa ayuda a docentes y alumnos en el ámbito administrativo, respondiendo a cuestiones o dirigiendo al interesado a páginas, solicitudes o dudas personales.
Los bots conversacionales se clasifican según las funciones que desarrollan:
* Administrativa y de gestión: favorece la productividad personal gestionando el calendario, el correo electrónico, recordando tareas y entregas/recogidas de evaluaciones.
* Resolución de preguntas frecuentes: clarifican cuestiones en cuanto a matriculaciones, servicios financieros, problemas relacionados con las plataformas de aprendizaje del centro educativo, o en cuanto al contenido a estudiar, como por ejemplo snatchbot.
* Acompañamiento y motivación al estudiante: responden académica y emocionalmente al estudiante según sus necesidades, aportando refuerzos positivos.
* Práctica de habilidades y destrezas específicas: son capaces de simular conversaciones organizadas por niveles; duolingo es un ejemplo para el aprendizaje de idiomas.
* Simulación de situaciones profesionales y apoyo a la reflexión o terapia.
* Reflexión y metacognición: regula los procesos de aprendizaje del alumnado, constituyendo el andamiaje.
* Evaluación del aprendizaje: califican rápida y automáticamente los conceptos adquiridos por los estudiantes.
Al incorporar un bot conversacional en el ámbito educativo, ha de tener en cuenta la ética y la conducta humana:
* Sinceridad y honradez: el profesor decide si advertir a sus alumnos de que la comunicación es con una IA y no con un profesor real.
* Antropomorfismo extremo, entendido como valle inquietante. Cuando la apariencia y el comportamiento de un chatbot se aproxima a la de un humano, puede causar momentos de tensión o repudio.
* Desviación hacia lo inadecuado: si un equipo humano no está presente en el desarrollo continuo del chatbot, la IA del mismo puede torcerse hacia respuestas inadecuadas. Un ejemplo de ello es tay (bot).
Algunas de las ventajas más relevantes de los bots conversacionales en el ámbito educativo se reflejan en la capacidad para responder preguntas frecuentes al instante, la completa disponibilidad horaria, la mejora de la imagen de un centro educativo, la posibilidad de interacción con distintos alumnos al mismo tiempo o la no realización de juicios o prejuicios hacia ningún humano.
De otro modo, también se destacan numerosas desventajas, ya que no se reemplaza la atención que puede ofrecer un humano, el sistema informático puede verse afectado en plena conversación, la incapacidad de captar diferentes características del lenguaje humano como el sarcasmo o las emociones, la dificultad para responder a una pregunta que no se encuentre en su base de datos o el requerimiento de un cierto coste de instalación y mantenimiento.
Algunos ejemplos de chatbots orientados a la educación son los siguientes:
* The Guardian of History: programa de ordenador para enseñar historia a niños de entre diez y doce años.
* Replika: sirve para poner en práctica destrezas emocionales a partir del diálogo.
* Otto: desarrollado por la empresa Learning Pool, es un chatbot que se integra en un LMS y que pretende dinamizar la interacción estudiante-contenido.
* MOOCBuddy: chatbot creado para ayudar a los estudiantes. Funciona desde Facebook Messenger y, según la trayectoria profesional y los intereses de cada persona.
* Ivy: diseñado para la educación superior, permite gestionar admisiones, servicios financieros, servicios tecnológicos como el acceso al correo electrónico, conexión a la wifi o instalación de aplicaciones.
* Hubert: recoge opiniones de los estudiantes mediante entrevistas para conocer su grado de satisfacción.
* Duolingo: diseñado para el aprendizaje de idiomas.

### Ámbito médico

En el ámbito médico, localizamos diferentes programas que nos permiten realizar consultas sobre medicamentos e indicaciones acerca del uso de dichos medicamentos, como Pharmabot. En este, los bots permiten dar respuesta a las preguntas enviadas por los usuarios.
Al igual que en el ámbito de la medicina, también podemos encontrar chatbots dedicados a terapia, uno de ellos es Woebot. Dicho chatbot recrea una consulta psicológica en línea. Su función consiste en proporcionar ayuda a personas que presentan problemas como la depresión. Para ello, lleva a cabo diversas preguntas previamente concertadas que el usuario debe contestar. Al procesar dichas respuestas, el chatobot lleva a cabo una evaluación y presenta una serie de consejos que ayudan al paciente a reducir sus síntomas.

## Ventajas y desventajas

Los bots conversacionales tienen diversas ventajas, algunas de ellas son: proporcionar servicio las 24 horas del día, los 7 días de la semana; rapidez de respuesta, y gestión simultánea de múltiples clientes. Por ejemplo, la implantación de bots conversacionales en el ámbito empresarial resulta muy beneficiosa ya que ofrecen a su clientela una alternativa de servicio automatizado inteligente. Esto aumenta la participación del cliente, mejora la experiencia de la marca y brinda información útil para la empresa.
Sin embargo, aún hay muchos chatbots que aún no logran aprovechar su potencial debido a su naturaleza restrictiva. Las principales limitaciones son la falta de datos y la escasa comprensión conversacional.