Un sistema de diálogo , o agente conversacional ( CA ), es un sistema informático diseñado para conversar con un ser humano. Los sistemas de diálogo emplean uno o más de los siguientes modos de comunicación: texto, voz, gráficos, hápticos, gestos y otros, tanto en el canal de entrada como en el de salida.
Los elementos de un sistema de diálogo no están definidos porque esta idea está bajo investigación, [ cita requerida ] sin embargo, son diferentes de un chatbot . [1] El asistente de GUI típico participa en una especie de diálogo, pero incluye muy pocos de los componentes comunes del sistema de diálogo y el estado del diálogo es trivial.
Fondo
Después de los sistemas de diálogo basados únicamente en el procesamiento de texto escrito que comenzaron a aparecer a principios de los años sesenta, [2] el primer sistema de diálogo hablado fue lanzado por el Proyecto DARPA en los EE. UU. en 1977. [3] Después del final de este proyecto de 5 años, algunos proyectos europeos lanzaron el primer sistema de diálogo capaz de hablar varios idiomas (también francés, alemán e italiano). [4] Esos primeros sistemas se utilizaron en la industria de las telecomunicaciones para proporcionar diversos servicios telefónicos en dominios específicos, por ejemplo, agenda automatizada y servicio de mesas de tren.
Componentes
Los conjuntos de componentes que se incluyen en un sistema de diálogo y la forma en que esos componentes se dividen las responsabilidades difieren de un sistema a otro. El elemento principal de cualquier sistema de diálogo es el administrador de diálogo , que es un componente que administra el estado del diálogo y la estrategia de diálogo. Un ciclo de actividad típico en un sistema de diálogo contiene las siguientes fases: [5]
El usuario habla y la entrada se convierte en texto simple mediante el reconocedor/decodificador de entrada del sistema , que puede incluir:
La información semántica es analizada por el gestor de diálogo , que mantiene el historial y el estado del diálogo y gestiona el flujo general de la conversación.
Normalmente, el administrador de diálogo se pone en contacto con uno o más administradores de tareas que tienen conocimiento del dominio de tarea específico.
El administrador de diálogo produce resultados utilizando un generador de resultados , que puede incluir:
Los sistemas de diálogo que se basan en una interfaz de solo texto (por ejemplo, el chat basado en texto) contienen solo las etapas 2 a 5.
Tipos de sistemas
Los sistemas de diálogo se dividen en las siguientes categorías, que se enumeran a continuación en función de algunas dimensiones. Muchas de las categorías se superponen y es posible que las distinciones no estén bien establecidas.
"Un sistema de diálogo natural es una forma de sistema de diálogo que intenta mejorar la usabilidad y la satisfacción del usuario imitando el comportamiento humano" [6] (Berg, 2014). Aborda las características de un diálogo entre humanos (por ejemplo, subdiálogos y cambios de tema) y tiene como objetivo integrarlas en sistemas de diálogo para la interacción entre humanos y máquinas. A menudo, los sistemas de diálogo (hablados) requieren que el usuario se adapte al sistema porque el sistema solo puede comprender un vocabulario muy limitado, no puede reaccionar a los cambios de tema y no permite que el usuario influya en el flujo del diálogo. La iniciativa mixta es una forma de permitir que el usuario tenga una parte activa en el diálogo en lugar de solo responder preguntas . Sin embargo, la mera existencia de la iniciativa mixta no es suficiente para clasificarse como un sistema de diálogo natural. Otros aspectos importantes incluyen: [6]
Adaptabilidad del sistema
Apoyo a la confirmación implícita
Uso de preguntas de verificación
Posibilidades de corregir información que ya ha sido proporcionada
Sobreinformación (dar más información de la solicitada)
Negaciones de apoyo
Comprender las referencias mediante el análisis del discurso y la anáfora.
Generación de lenguaje natural para evitar indicaciones monótonas y recurrentes
Formulación adaptativa y consciente de la situación
Comportamiento social (saludos, mismo nivel de formalidad que el usuario, cortesía)
Calidad del reconocimiento y síntesis de voz
Aunque la mayoría de estos aspectos son temas de muchos proyectos de investigación diferentes, existe una falta de herramientas que respalden el desarrollo de sistemas de diálogo que aborden estos temas. [7] Aparte de VoiceXML , que se centra en los sistemas de respuesta de voz interactiva y es la base de muchos sistemas de diálogo hablado en la industria (aplicaciones de soporte al cliente) y AIML , que es famoso por el chatbot ALICE , ninguno de estos integra características lingüísticas como actos de diálogo o generación de lenguaje. Por lo tanto, NADIA (un prototipo de investigación) da una idea de cómo llenar ese vacío y combina algunos de los aspectos mencionados anteriormente, como la generación de lenguaje natural, la formulación adaptativa y los subdiálogos.
Actuación
Algunos autores miden el rendimiento del sistema de diálogo en términos del porcentaje de oraciones completamente correctas, comparando el modelo de oraciones (esta medida se llama Exactitud Conceptual de las Oraciones [8] o Comprensión de las Oraciones [4] ).
Aplicaciones
Los sistemas de diálogo pueden soportar una amplia gama de aplicaciones en empresas comerciales, educación, gobierno, atención médica y entretenimiento. [9] Por ejemplo:
Base de conocimientos del agente de servicio al cliente : permite a los agentes escribir la pregunta de un cliente y guiarlo con una respuesta.
Venta guiada : facilitar las transacciones proporcionando respuestas y orientación en el proceso de venta, en particular para productos complejos que se venden a clientes novatos.
Mesa de ayuda : responder a preguntas internas de los empleados, por ejemplo, responder a preguntas de RR.HH.
Navegación en el sitio web: guiar a los clientes a las partes relevantes de sitios web complejos: un conserje de sitios web
Soporte técnico: Responder a problemas técnicos, como diagnosticar un problema con un producto o dispositivo.
Servicio personalizado: Los agentes conversacionales pueden aprovechar bases de datos internas y externas para personalizar las interacciones, como responder preguntas sobre saldos de cuentas, proporcionar información de cartera, entregar información sobre viajeros frecuentes o membresías, por ejemplo.
Capacitación o educación: Pueden brindar asesoramiento para la resolución de problemas mientras el usuario aprende.
Los sistemas de diálogo simples se utilizan ampliamente para disminuir la carga de trabajo humana en los centros de llamadas . En esta y otras aplicaciones de telefonía industrial, la funcionalidad que brindan los sistemas de diálogo se conoce como respuesta de voz interactiva o IVR.
Apoyar a los científicos en tareas de manipulación y análisis de datos, por ejemplo en genómica. [10]
En algunos casos, los agentes conversacionales pueden interactuar con los usuarios mediante personajes artificiales. Estos agentes se denominan agentes encarnados .
Kits de herramientas y arquitecturas
Un estudio de los marcos, lenguajes y tecnologías actuales para definir sistemas de diálogo.
^ Klüwer, Tina. "De los chatbots a los sistemas de diálogo". Agentes conversacionales e interacción en lenguaje natural: técnicas y prácticas efectivas. IGI Global, 2011. 1-22.
^ McTear, Michael, Zoraida Callejas y David Griol, La interfaz conversacional: hablar con dispositivos inteligentes , Springer, 2016.
^ Giancarlo Pirani (ed), Algoritmos y arquitecturas avanzadas para la comprensión del habla , Vol. 1. Springer Science & Business Media, 2013.
^ ab Alberto Ciaramella, Informe de evaluación del desempeño de un prototipo , Paquete de trabajo Sundial 8000 (1993).
^ Jurafsky y Martin (2009), Procesamiento del habla y del lenguaje. Edición internacional de Pearson, ISBN 978-0-13-504196-3 , Capítulo 24
^ Berg, Markus M. (2015), "NADIA: un enfoque simplificado hacia el desarrollo de sistemas de diálogo natural", Procesamiento del lenguaje natural y sistemas de información , Lecture Notes in Computer Science, vol. 9103, págs. 144-150, doi :10.1007/978-3-319-19581-0_12, ISBN978-3-319-19580-3
^ Bangalore, Srinivas y Michael Johnston. "Comprensión robusta en interfaces multimodales". Computational Linguistics 35.3 (2009): 345-397.
^ Lester, J.; Branting, K.; Mott, B. (2004), "Agentes conversacionales" (PDF) , El manual práctico de computación en Internet , Chapman & Hall
^ Crovari; Pidò; Pinoli; Bernasconi; Canakoglu; Garzotto; Ceri (2021), "GeCoAgent: un agente conversacional para potenciar la extracción y el análisis de datos genómicos", ACM Transactions on Computing for Healthcare , 3 , ACM New York, NY: 1–29, doi :10.1145/3464383, hdl : 11311/1192262 , S2CID 245855725