Summify.ai: Transforma La Forma En La Que Consumes Y Buscas Información En Vídeos Con IA
La semana pasada, durante los días 23 y 24 de Marzo, realizamos en Telefónica el Equinox, ese hackathon de 24 horas que hacemos cada seis meses coincidiendo con los equinoccios de primavera y de otoño y donde, junto a otros muchos compañeros, damos rienda suelta a nuestras ideas o nos atrevemos a jugar con nuevas tecnologías con las que no estamos acostumbrados a trabajar en nuestro día a día como VR o Open Gateway .
Figura 1: Summify.ai: Transforma la forma en la que
consumes y buscas información en vídeos con IA
En ediciones anteriores, ya había participado en proyectos junto a otros compañeros como Latch´sApp, LiLaS o Latch (Voice) Assistant, pero desde este último, en el equinoccio de primavera del 2018, no había vuelto a participar. En esta nueva edición, he participado junto a mis compañeros de equipo de Ideas Locas: Chema Garabito, Javier del Pino y Sergio Sancho. A media noche tuvimos la visita del gran Félix Brezo, que siempre es una alegría encontrarte. Agradecemos su visita, sus ideas y su interés por nuestro proyecto.
Summify.ai: Mejorad la experiencia de consumo de vídeos con IA
La idea en cuestión era crear una pequeña herramienta que mejorase la experiencia del consumo de vídeos, podcasts u otro material de consumo multimedia. Para ello se quería trabajar con varios objetivos como la extracción de transcripciones con inteligencia artificial, la creación de resúmenes a partir de las transcripciones obtenidas, la identificación de los principales temas de interés a partir también de la transcripción, y, por último, la creación de búsquedas inteligentes gracias al contexto. Y con estas ideas en la cabeza nos pusimos manos a la obra para crear lo que terminamos llamamos “Summify.ai”.
La extracción de transcripciones con IA es el primer paso que se realiza en el proceso de creación de resúmenes y búsqueda inteligente de vídeos. Para lograrlo, utilizamos la API de Whisper, una plataforma de reconocimiento de voz de última generación que nos permite obtener una transcripción de audio con una gran precisión. Esta tecnología utiliza técnicas de inteligencia artificial como el Deep Learning y el procesamiento de lenguaje natural para lograr una transcripción precisa.
Una vez que hemos obtenido la transcripción de audio con Whisper, se procede a crear un resumen del vídeo. Este resumen se realiza de manera automática gracias al uso de la inteligencia artificial que analiza el contenido de la transcripción y selecciona las partes más relevantes del vídeo. Para ello, hicimos uso de la API de OpenAI para que nos permiten identificar las partes más importantes del vídeo y resumirlas de manera efectiva.
La extracción de transcripciones con IA es el primer paso que se realiza en el proceso de creación de resúmenes y búsqueda inteligente de vídeos. Para lograrlo, utilizamos la API de Whisper, una plataforma de reconocimiento de voz de última generación que nos permite obtener una transcripción de audio con una gran precisión. Esta tecnología utiliza técnicas de inteligencia artificial como el Deep Learning y el procesamiento de lenguaje natural para lograr una transcripción precisa.
Figura 2: Obtención del resumen del vídeo analizado
Para la obtención de los principales temas de interés, de nuevo, contamos con OpenAI para realizar esta labor. Un prompt del estilo: “Dime que topics puedes identificar en este texto, máximo 4 topics, en formato Topic 1:, Topic 2:…” nos ha funcionado bastante bien, aunque es cierto que tuvimos algunos problemas al pasar textos demasiado largos, algo que pudimos solucionar haciendo uso de proyectos libres como LlamaIndex.
Figura 3:Llama_index en GitHub
Por otro lado, otro problema que iba a demorar mucho tiempo a la hora de realizar la demostración era obtener un número no conocido de temas, por lo que hicimos pruebas con la identificación limitada a 2, 3 y 4 temas, ya que en video largos llegamos a obtener más de 10 resultados, lo que ralentizaba mucho la obtención de la información. Además, de cada tema también queríamos obtener las principales ideas, por lo que hicimos un nuevo prompt sobre cada uno de los resultados de los temas obtenidos con anterioridad, utilizando un prompt del estilo a:
“Hemos identificado el topic "{topic}" en el texto. Dame tres bullet points que resuman este topic en el texto a modo de conclusión.”
De esta manera conseguimos el objetivo que teníamos propuesto, y que ademas puede dar pie a una fácil categorización de los videos, como si se tratasen de etiquetas.
Para finalizar y aprovechar al máximo las posibilidades que OpenAI nos esta dando, decidimos realizar un prompt para la obtención de información en texto a través de las consultas que pueda hacer un usuario. Algo así como un chatbot que encuentra la información consultada pero que se deba encontrar en la información del vídeo, es decir, que se analice dentro de la transcripción, que es la fuente principal de información de este proyecto.
Para complicar esto un poco más, no queríamos que únicamente se realizara la búsqueda en un único vídeo, sino que, dado un conjunto de vídeos, identificase el vídeo principal donde puede darse esta consulta y que encontrase la información más correcta. Este apartado fue, sin duda, el que nos llevo más tiempo del hackathon.
Para la demostración final decidimos crear un frontal que representara un catálogo de vídeos y que pudiera mostrar la información individual procesada de cada uno de ellos. Desde la vista principal es posible lanzar la búsqueda global aunque también es posible realizar una búsqueda de manera individual desde la vista detalle del vídeo en cuestión.
Procesamos varios vídeos de “LA RESISTENCIA” de nuestro querido David Broncano - con el que puedes contactar en MyPublicInbox - , porque tienen una duración aproximada de 10 minutos y era algo abordable dentro de las 24 horas que teníamos disponibles, ya que haciendo algunas pruebas con podcasts más largos, el procesado de los videos se iba mucho de tiempo. Y a continuación, algunas de las preguntas que era capaz de contestar sin problemas:
Figura 4: Obtención de los principales temas e ideas
Para finalizar y aprovechar al máximo las posibilidades que OpenAI nos esta dando, decidimos realizar un prompt para la obtención de información en texto a través de las consultas que pueda hacer un usuario. Algo así como un chatbot que encuentra la información consultada pero que se deba encontrar en la información del vídeo, es decir, que se analice dentro de la transcripción, que es la fuente principal de información de este proyecto.
Para complicar esto un poco más, no queríamos que únicamente se realizara la búsqueda en un único vídeo, sino que, dado un conjunto de vídeos, identificase el vídeo principal donde puede darse esta consulta y que encontrase la información más correcta. Este apartado fue, sin duda, el que nos llevo más tiempo del hackathon.
Figura 5: Vista principal del catálogo de vídeos procesados
Para la demostración final decidimos crear un frontal que representara un catálogo de vídeos y que pudiera mostrar la información individual procesada de cada uno de ellos. Desde la vista principal es posible lanzar la búsqueda global aunque también es posible realizar una búsqueda de manera individual desde la vista detalle del vídeo en cuestión.
Figura 6: Contactar con David Broncano |
- ¿Qué le gusta a Jhay Cortez?
- ¿Que comida recomienda Jhay Cortez?
- ¿Quién ha discutido con Lola Índigo?
- ¿Cuánto pesa Joan Pradells?
- ¿En qué categoría compite Joan Pradells?
- ¿Qué jugadores le caen mal al Kun Agüero?
- ¿Con cuántos años debutó el Kun en la liga argentina?
Figura 7: Ejemplo de consulta y su respuesta
Para finalizar, para hacer el flujo de trabajo automático, utilizamos como input un vídeo a partir de la URL de YouTube, que pasaba a descargarse en formato de audio, transcribirse con Whisper y realizar todo el procesamiento comentado a lo largo de este post.
Figura 8: Archivo JSON con la información procesa
Reflexión final
Quiero agradecer a todos los integrantes de mi equipo, Chema Garabito, Javier del Pino y Sergio Sancho, por su dedicación y esfuerzo en este hackathon. Juntos hemos logrado entendernos y hemos superado muchos obstáculos que se dieron durante el evento. Ha sido un verdadero placer trabajar con ellos y aprender de sus conocimientos y habilidades.
También quiero agradecer a todos los competidores de esta edición por su participación y esfuerzo. Cabe mencionar que ha sido el Equinox de la Inteligencia Artificial, donde muchos de los compañeros han utilizado esta tecnología para crear proyectos espectaculares. Estoy seguro de que todos hemos salido de aquí con nuevas ideas y conocimientos que nos ayudarán a seguir mejorando en el futuro.
En definitiva, ha sido una gran experiencia y estamos contentos por haber tenido la oportunidad de participar en esta competición junto a personas tan talentosas y, además, haber conseguido hacernos hueco en el premio compartido de IA, aunque lo más importante de todo ha sido disfrutar de todos esos momentos.
¡Hasta la próxima!
Autor: Álvaro Núñez-Romero, investigador en el equipo de Ideas Locas. Autor del libro "Arduino para Hackers (& Makers): PoCs and Hacks Just for Fun" y del VBOOK de "Arduino para Hackers (& Makers): PoCs and Hacks Just for Fun"
Via: www.elladodelmal.com
Summify.ai: Transforma La Forma En La Que Consumes Y Buscas Información En Vídeos Con IA
Reviewed by Zion3R
on
1:48
Rating: