Global AI Tour MX: Desarrollando Bots Empresariales – 2020/05
El mundo de las aplicaciones conversacionales es muy interesante: sus novedosas interfaces permiten brindar a los usuarios experiencias de conversación para acceder a diversos servicios de IT.
El Viernes 08 de Mayo de 2020 participamos, junto con Fernando Sonego, del Global AI Tour de la Ciudad de México en una sesión dedicada a recorrer la historia, características y construcción de Chatbots, aprovechando lo mejor de la Inteligencia Artificial y lenguajes de programación conocidos por muchos de nosotros.
En esta publicación haremos una recorrida por los conceptos que consideramos más importantes sobre Bot, Chatbots y Procesamiento Natural de Lenguaje, y te pondremos a disposición la presentación, video de la charla y demo realizada durante la misma donde demostramos estrategias básicas para su construcción.
¡Ojalá lo disfrutes!
Bots y Chatbots
¿Qué es un bot? ¿Qué es un chatbot? A veces la necesidad de definir algo nos lleva a darnos cuenta que tenemos algunas diferencias, entre las personas, en acordar criterios en común para referirnos a algo con el mismo enfoque. Así, justamente, arrancamos nuestra charla: acordando qué es un bot, y específicamente un chatbot.
Vamos a definir a un “bot” como un paradigma de interfaz que permite conectar a los usuarios con servicios de software que necesitan. Si bien los usuarios de bot son a menudo humanos, no se requiere que siempre lo sean: los usuarios pueden ser programas, sistemas o incluso otros bots.
Llamaremos “chatbot” a un bot conversacional, es decir un bot de software que conduce una conversación a través de métodos auditivos o textuales.
Hoy los chatbots se usan generalmente para diversos fines prácticos, como por ejemplo servicio de atención al cliente o consulta de información por parte de usuarios. Algunos utilizan sofisticados sistemas de procesamiento de lenguaje natural para analizar lo que el usuario está solicitando, aunque existen otros que tienen mecanismos muchos más simples y escanean las palabras clave dentro de la conversación para luego brindar una respuesta con las palabras clave más coincidentes o un patrón previamente programado cuya información está en una base de datos.
Siempre estuvo en nuestro imaginario la existencia de piezas de software que puedan pensar y comportarse como humanos, y los chatbots son uno de ellos. De hecho, seguramente, es la manera en que los “juzgamos” cuando interactuamos con alguno de ellos: ya sea para pedir comida, consultar nuestras infracciones de tránsito, o incluso para hacer algún reclamo porque un servicio específico no funciona.
Eliza y Parry
Revisar la historia de los chatbots más conocidos es muy interesante, al menos para mi por supuesto :-). Para esta publicación elegí dos: Eliza y Parry.
Eliza fue un software programa informático diseñado en el MIT por Joseph Weizenbaum en 1966, para demostrar que tan superficial es la comunicación entre humanos y máquina. Eliza fue uno de los primeros programas en procesar lenguaje natural. En su comportamiento, parodiaba al psicólogo Carl Rogers. De allí que se dijo que Eliza simulaba ser un psicoterapeuta rogeriano, cuya técnica se basaba simplemente en reprender a los pacientes lo que acababan de decir y de esta manera mantener una conversación de texto coherente con el usuario.
Su funcionamiento era similar al siguiente: si Eliza encontraba una palabra clave, aplicaba una regla que transforma la entrada recibida para brindar una oración resultante. Si no se encontraba una palabra clave, Eliza respondía con una respuesta genérica o repitiendo uno de los comentarios anteriores que la persona, con la que estaba charlando, había dicho. Con estas técnicas, este software pudo engañar a muchas usuarios para creer que estaban hablando realmente con una persona real.
Aunque esto parezca muy rudimentario, en el siglo XXI existen versiones de estos programas (conocidos como “chatterbots”) que siguen engañando a las personas para quitarles dinero.
Parry, por otro lado, fue un programa de computación escrito en 1972 por el psiquiatra Kenneth Colby, de la Universidad de Stanford. El software, que era un chatbot, implementó un modelo de comportamiento de una persona con esquizofrenia paranoide basado en conceptos, conceptualizaciones y creencias, incluyendo una estrategia de conversación. Esto lo hizo un programa más avanzado que Eliza.
Existe la transcripción de las tantas charlas que tuvieron Eliza y Parry que ha sido muy recordada: en la primera “International Conference on Computer Communications”. Imaginense por un momento la situación: en Enero de 1972 y a través de ARPANET se conectó al MIT con la Universidad de Stanford, y un “psicoterapeuta rogeriano” (Eliza) charló con una “paciente con esquizofrenia paranoide” (Parry). Podrán ver la publicación completa del encuentro aquí.
Mas allá de los aspectos coloridos de Eliza y Parry, estos programas de computación han marcado hitos importantes en la evolución del procesamiento de lenguaje natural, de las prácticas de Inteligencia Artificial y, por supuesto, evolución de las prácticas de construcción de Bots Conversacionales.
Video de la Charla
Justamente durante nuestra charla pusimos foco en lo último: prácticas de construcción de Bots Conversacionales, enfocados en ambiente empresarial. Además, recorrimos la historia con los hitos más destacados de la evolución de chatbots, incluyendo el “Test de Turing”, el software Eliza, la prueba de la “Habitación China”, el programa Parry, y otros eventos más.
Te compartimos el video completo con los 90 minutos de sesión:
Presentación de la Charla
La presentación mostrada durante la charla es la siguiente:
Código Fuente y Demos
Podrás acceder al repo con los fuentes de las demos ejecutadas durante el encuentro, en la siguiente ubicación: https://github.com/pablodiloreto/globalaitour_mx
Certificado y Fotos de Participacion 🙂
¡Muchas gracias Vicente Guzman por la invitación y certificado!