Descubre cómo puedes implementar capacidades de búsqueda de videos en tus aplicaciones multimedia utilizando MongoDB Atlas y los modelos de incrustación multimodal de IA de Voyage.
caso de uso: Gen AI
Industrias: Medios
Productos: MongoDB Atlas, MongoDB Atlas Vector Search, Voyage AI Multimodal Embeddings
emparejar: Open IA para la conversión de voz a texto
Descripción general de la solución
La industria de los medios y el entretenimiento está adoptando la transformación digital para impulsar las estrategias de crecimiento. Según un estudio PWC, se espera que las ganancias de la industria crezcan a una tasa de 3.7% tasa de crecimiento anual compuesta de 2025 a 2029, aumentando de US$2.9 billones a US$3.5 billones en 2029. Para las empresas de medios, una fuerza impulsora de este crecimiento es el entretenimiento en video generado a través de plataformas de video social, transmisión bajo demanda y canales de noticias.
Solo en Estados Unidos, los consumidores dedican en promedio seis horas al día a contenidos de medios y entretenimiento, de los cuales más de la mitad está dedicada al vídeo. Las empresas de medios deben capitalizar estos datos de video para ofrecer experiencias de video premium a sus clientes y optimizar las operaciones. Aprovechar los datos de vídeo permite el desarrollo de aplicaciones innovadoras, como la búsqueda semántica de vídeos.
La búsqueda semántica de videos permite a los usuarios encontrar contenido específico en los videos en función de su significado contextual. Esta técnica utiliza incrustaciones y capacidades de búsqueda vectorial para transformar el contenido de video en valores numéricos que pueden ser procesados por algoritmos computacionales. Por ejemplo, los usuarios pueden proporcionar una query, como coches policiales en la carretera, a la aplicación de búsqueda de videos, que luego localiza la escena correspondiente en el video.
Esta solución muestra cómo se puede implementar un servicio de búsqueda semántica de vídeos para una aplicación de medios. En este servicio, MongoDB Atlas ofrece soporte para almacenamiento de datos y búsqueda vectorial, mientras que Voyage AI provee incrustaciones multimodales. Esta funcionalidad proporciona los siguientes beneficios:
Habilita mejores experiencias de usuario con un descubrimiento de contenido mejorado.
Reduce el tiempo dedicado a buscar información en videos extensos, mejorando la eficiencia.
Genera ganancia al atraer nuevos grupos de clientes y aumentar la lealtad entre los ya existentes.
Puedes extender los conceptos de esta solución a otras industrias, como seguros, telecomunicaciones o venta minorista.
Arquitecturas de Referencia
Este marco utiliza MongoDB Atlas para almacenamiento de datos y búsqueda semántica, Voyage IA para incrustaciones y Open IA para convertir voz en texto. La implementación realiza un preprocesamiento de video y audio, y luego utiliza un componente de búsqueda semántica. La Figura 1 representa el preprocesamiento de video e imágenes.
Figura 1. Marco de procesamiento de vídeo
El flujo de trabajo opera de la siguiente manera:
La librería de Python
moviepytransforma el archivo de película MP4 en fotogramas de imágenes y un archivo de audio MP3.La librería
pydubconvierte audio en fragmentos.Un proveedor de "speech-to-text" convierte fragmentos de audio en texto.
Voyage IA transforma pares de texto e imágenes en embeddings con un modelo de embeddings multimodal. Las incrustaciones codifican estas modalidades en un solo transformador, creando una representación vectorial unificada que captura el significado de imágenes y texto juntos.
MongoDB Atlas almacena los vectores y sus metadatos como documentos con marcas temporales que identifican documentos individuales.
Después del preprocesamiento, puedes crear tus índices de búsqueda vectorial y realizar búsquedas semánticas en tu aplicación. La imagen de abajo representa este proceso:
Figura 2. Proceso de búsqueda de video con MongoDB
En este flujo de trabajo, búsqueda vectorial encuentra los metadatos del vídeo más relevante y su timestamp. Con esta información, la aplicación muestra los resultados en el punto adecuado del vídeo.
Ahora puedes buscar contenido mostrado en el video como básquetbol o car play ultra. En esta aplicación, la solución elige uno de los dos videos disponibles y lo reproduce desde el desplazamiento de video adecuado.
Enfoque de modelo de datos
Las incrustaciones de vectores convierten texto, voz y oraciones en valores numéricos que representan su significado. Basándose en este concepto, los modelos de incrustación multimodales vectorizan el texto y las imágenes intercalados en un único espacio vectorial con la misma dimensionalidad.
Puedes utilizar la flexibilidad del modelo orientado a documentos para almacenar las incrustaciones multimodales junto con sus metadatos en un único documento. El siguiente código muestra un documento de ejemplo:
{ "movie": "mymovie" , "offset": 0, "text_offset": 0, "embedding": [<list of floats>] }
El campo embedding contiene la información conjunta de imágenes incrustadas y texto. Los metadatos incluyen el nombre del video, el desplazamiento de la imagen y el desplazamiento de la voz. Puedes adaptar esta estructura a tus necesidades específicas.
Compilar la solución
Siga estos pasos para replicar la solución de búsqueda de videos utilizando la ist.media MongoDB repositorio de GitHub. Puedes usar este marco como inspiración para compilar tu propia solución personalizada.
Configuración de tus variables de entorno
Configura tus variables de entorno para diferentes componentes de esta solución ejecutando los siguientes comandos:
MongoDB Atlas cluster:
export MONGODB_IST_MEDIA=<your token> Embeddings de Voyage IA:
export VOYAGE_API_KEY=<your_token> Open AI token:
export OPENAI_API_KEY=<your_token>
Prueba las capacidades de búsqueda de videos en la demo
Go a la pestaña de búsqueda de videos y prueba las capacidades de búsqueda de videos. Utilice palabras sugeridas, como policía o Grecia, para experimentar con el funcionamiento de su aplicación de búsqueda de vídeos.
Figura 3. Servicio de búsqueda de videos en la demostración de IST medios
Utiliza tus propios videos
La carpeta de video en el repositorio de GitHub controla el servicio de búsqueda de videos. Ve al README y sigue las instrucciones para los scripts de asistente para adaptar la solución a tus necesidades.
Lecciones clave
Almacenar los metadatos y las embeddings juntos: Almacena tus embeddings y sus metadatos en un solo documento con el modelo orientado a documentos de MongoDB. Esta estructura potencia aplicaciones impulsadas por IA con capacidades avanzadas como la búsqueda semántica de videos.
Utilizar modelos de incrustación multimodal: Transformar datos no estructurados de múltiples modalidades, como imágenes y texto, en un espacio vectorial compartido con modelos de incrustación multimodal. Se puede usar el modelo voyage-multimodal-3 de Voyage IA para vectorizar directamente las entradas que contienen texto e imágenes entrelazadas.
Habilitar capacidades de búsqueda semántica: Usar la Búsqueda Vectorial para indexar y consultar los datos vectoriales. La búsqueda vectorial permite hacer query de datos en función de su significado semántico, recuperando los resultados más relevantes para tu aplicación de búsqueda de videos.
Autores
Benjamin Lorenz, MongoDB
Diego Canales, MongoDB