El documento describe el desarrollo de un asistente personal utilizando lenguajes de programación como Java y C++. Los objetivos incluyen generar un nuevo asistente, analizar las actividades humanas para facilitarlas, integrar comandos para conectar el asistente a una casa inteligente, y establecer diálogos entre el asistente y los humanos. La metodología incluye reconocimiento de voz, lenguajes de dominio específico, y exponer los servicios del asistente a través de un endpoint en una aplicación web.
0 calificaciones0% encontró este documento útil (0 votos)
109 vistas6 páginas
El documento describe el desarrollo de un asistente personal utilizando lenguajes de programación como Java y C++. Los objetivos incluyen generar un nuevo asistente, analizar las actividades humanas para facilitarlas, integrar comandos para conectar el asistente a una casa inteligente, y establecer diálogos entre el asistente y los humanos. La metodología incluye reconocimiento de voz, lenguajes de dominio específico, y exponer los servicios del asistente a través de un endpoint en una aplicación web.
El documento describe el desarrollo de un asistente personal utilizando lenguajes de programación como Java y C++. Los objetivos incluyen generar un nuevo asistente, analizar las actividades humanas para facilitarlas, integrar comandos para conectar el asistente a una casa inteligente, y establecer diálogos entre el asistente y los humanos. La metodología incluye reconocimiento de voz, lenguajes de dominio específico, y exponer los servicios del asistente a través de un endpoint en una aplicación web.
El documento describe el desarrollo de un asistente personal utilizando lenguajes de programación como Java y C++. Los objetivos incluyen generar un nuevo asistente, analizar las actividades humanas para facilitarlas, integrar comandos para conectar el asistente a una casa inteligente, y establecer diálogos entre el asistente y los humanos. La metodología incluye reconocimiento de voz, lenguajes de dominio específico, y exponer los servicios del asistente a través de un endpoint en una aplicación web.
Descargue como PDF, TXT o lea en línea desde Scribd
Descargar como pdf o txt
Está en la página 1de 6
OBJETIVO GENERAL
Desarrollar un asistente personal utilizando medios de la programación
que permita facilitar diversas actividades de la vida cotidiana para poder facilitar el día a día del ser humano. OBJETIVOS ESPECIFICOS 1. Generar un nuevo asistente personal utilizando programación en lenguaje complejo Java y C++. 2. Analizar las diversas actividades del ser humano para poder facilitarlas a través del asistente. 3. Establecer espacios de interacción entre los proyectos y programas actuales para poder establecer un óptimo desarrollo del asistente. 4. Integrar una seria de comandos específicos para que el asistente sea capaz de conectarse a una Smart Home. 5. Elaborar un conjunto de líneas de código que faciliten las diversas tareas del asistente, así como la sincronización con los diversos dispositivos inalámbricos. 6. Establecer, desarrollar e impulsar espacios de dialogo entre el asistente y el ser humano. 7. Dejar capacidades instaladas básicas para un funcionamiento esencial del asistente. METODOLOGÍA Reconocimiento de habla Es un campo de la lingüística computacional orientado a desarrollar metodologías y tecnologías que permitan que las computadoras puedan entender y traducir lenguaje hablado. Vale la pena aclarar que el reconocimiento del habla es distinto del reconocimiento de voz, ya que este último solo se enfoca en identificar a la persona que habla, mas no lo que está diciendo. Como pueden imaginar, desarrollar un servicio de reconocimiento del habla es una tarea muy grande y casi imposible para una sola persona. Afortunadamente empresas como Microsoft, Google y Xamarin entre otros, los han desarrollado ya, y los han abierto para que podamos usarlos en nuestras aplicaciones. En el listado 1 muestro cómo podemos inicializar el servicio de reconocimiento del habla en .Net. Posteriormente, en el listado 2 muestro cómo se podría hacer en web utilizando el Web Speech API, que es soportado por Chrome.
Listado 1. Código C# para usar Windows Speech Recognition.
Lenguaje de dominio específico (DSL) Es un lenguaje informático diseñado para representar o resolver un problema específico. Existe una gran variedad de DSLs, desde lenguajes de uso muy común como HTML o SQL, hasta lenguajes de nicho como podría ser CSound para síntesis de sonidos. El dominio puede ser también un área de negocios. Así que por ejemplo, podríamos crear un DSL para gestión de pólizas de seguro. Cuando se crea un DSL que solo se usará en una aplicación se le acostumbra llamar un mini-lenguaje.
Para implementar el lenguaje necesitamos definir su gramática y crear
un parser (analizador sintáctico) para poder interpretar lo que el usuario nos dice y darle una respuesta. Podríamos hacer las dos cosas a mano, pero en la actualidad existen ya muchas herramientas que nos facilitan definir la gramática y crear nuestro parser. Una de las herramientas más comunes para desarrollar lenguajes es YACC, que nos permite generar un parser basado en una gramática analítica que debemos describir en un metalenguaje similar a la notación de Backus-Naur. Endpoint Vamos a exponer los servicios de nuestro asistente a través de un endpoint alojado en nuestra aplicación web. Este endpoint recibirá como parámetro la consulta del usuario y la pasará al asistente, el cual interpretará los resultados y enviará una respuesta serializada. App El usuario podrá interactuar con nuestro asistente inteligente a través de una aplicación móvil. Ya en los listados 1 y 2 vimos cómo podemos usar las APIs de Chrome y Windows para reconocimiento del habla. Ahora en los listados 4a, 4b y 4c podemos ver cómo lanzar la búsqueda y mostrar los resultados en una aplicación Windows Universal. El listado 4a muestra cómo disparar una petición asíncrona y desmenuzar los resultados, luego el listado 4b muestra cómo se podrían desplegar y por último el listado 4c muestra cómo podríamos acompañar estos resultados de un mensaje de voz. JUSTIFICACIÓN Los motivos que nos llevaron a desarrollar este asistente, se centran en el desarrollo tecnológico nacional, debido a que en México la tecnología es una rama que está parcialmente atrasada comparada a otros países. Pensamos que mediante el desarrollo de la evolución de los asistentes realizados durante el periodo 2010-2019, pueden aportar significativamente al proyecto, puesto que es esos tiempos donde comenzó a tener vida y significado el uso de los asistentes personales dentro de este mundo globalizado. Estos desarrollos posibilitan la usabilidad de este asistente puesto que unas funciones ya están previamente establecidas dentro de lo que es el uso de los asistentes personales, tales como los utilizados en el asistente de Google, al igual que en los asistentes de Apple. Nos proponemos entonces a desarrollar e investigar acerca de los asistentes que se mantienen a la vanguardia para poder así aprovechar al máximo cada una de sus funciones para posteriormente implementarlas al proyecto y poder ofrecer al público un asistente de calidad, seguro y confiable.