Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
MongoDB Branding Shape
Click here >
Docs Menu

Enriquece las experiencias de medios con la búsqueda semántica de vídeos

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

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.

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.

visualización para la conversión de texto a audio

Figura 1. Marco de procesamiento de vídeo

El flujo de trabajo opera de la siguiente manera:

  1. La librería de Python moviepy transforma el archivo de película MP4 en fotogramas de imágenes y un archivo de audio MP3.

  2. La librería pydub convierte audio en fragmentos.

  3. Un proveedor de "speech-to-text" convierte fragmentos de audio en texto.

  4. 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.

  5. 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:

visualización para un proceso de búsqueda de videos con MongoDB

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.

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.

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.

1

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>
2

Clona el repositorio de ist.media en GitHub y sigue las instrucciones de README para implementar la demostración.

3

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.

visualización para la demostración de medios de ist

Figura 3. Servicio de búsqueda de videos en la demostración de IST medios

4

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.

  • 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.

  • Benjamin Lorenz, MongoDB

  • Diego Canales, MongoDB