El Portal de las Tecnologías para la Innovación

Cree Aplicaciones XR Multimodales en Tiempo Real con NVIDIA AI Blueprint para Búsqueda de Vídeo y Resumir

Con los recientes avances en IA generativa y los modelos fundamentales de visión, los VLM presentan una nueva ola de computación visual en la que los modelos son capaces de una percepción altamente sofisticada y una comprensión contextual profunda.

Estas soluciones inteligentes ofrecen un medio prometedor para mejorar la comprensión semántica en entornos XR. Al integrar VLM, los desarrolladores pueden mejorar significativamente la forma en que las aplicaciones XR interpretan e interactúan con las acciones de los usuarios, haciéndolas más receptivas e intuitivas. 

Esta publicación lo guía sobre cómo aprovechar el NVIDIA AI Blueprint para búsqueda de vídeo y resumen y mejorarlo para admitir audio en un entorno XR. Explicamos el proceso paso a paso, desde la configuración del entorno hasta la integración perfecta, para el reconocimiento de voz en tiempo real y las interacciones inmersivas.

Avanzando aplicaciones XR con agentes de IA multimodales

Aumentar las aplicaciones XR con funcionalidades conversacionales de IA crea una experiencia más inmersiva para los usuarios. Creando generativo Agentes de IA que ofrecen capacidades de preguntas y respuestas dentro del entorno XR, los usuarios pueden interactuar de forma más natural y recibir asistencia inmediata. Un agente de IA multimodal procesa y sintetiza múltiples modos de entrada, como datos visuales (XR feeds de auriculares, por ejemplo), voz, texto o flujos de sensores, para tomar decisiones conscientes del contexto y generar respuestas naturales e interactivas.

Los casos de uso en los que esta integración puede tener un impacto sustancial son:

GTC 2025 NVIDIA
  • Formación laboral calificada: En las industrias donde el entrenamiento de simulación es más seguro y más práctico que el uso de equipos reales, las aplicaciones XR pueden proporcionar entornos inmersivos y controlados. La comprensión semántica mejorada a través de VLM permite experiencias de entrenamiento más realistas y efectivas, facilitando una mejor transferencia de habilidades y protocolos de seguridad.
  • Diseño y creación de prototipos: Los ingenieros y diseñadores pueden aprovechar los entornos XR para visualizar y manipular modelos 3D. Los VLM permiten al sistema comprender gestos y comandos contextuales, agilizando el proceso de diseño y fomentando la innovación.
  • Educación y aprendizaje: Las aplicaciones XR pueden crear experiencias educativas inmersivas en diversas materias. Con la comprensión semántica, el sistema puede adaptarse a las interacciones de un alumno, proporcionando contenido personalizado y elementos interactivos que profundizan la comprensión.

Al integrar VLM e incorporar características como una comprensión semántica mejorada y capacidades de IA conversacional, los desarrolladores pueden ampliar los posibles casos de uso de las aplicaciones XR. 

NVIDIA AI Blueprint para búsqueda de vídeo y resumen

Uno de los desafíos clave para aprovechar los VLM para aplicaciones XR radica en procesar videos largos o transmisiones en tiempo real mientras captura efectivamente el contexto temporal. El NVIDIA AI Blueprint para búsqueda de vídeo y resumen aborda este desafío al permitir que los VLM manejen duraciones de video extendidas y transmisiones de video en tiempo real. 

El Plan de IA para la búsqueda y el resumen de videos ayuda a simplificar el desarrollo de agentes de IA de análisis de video. Estos agentes facilitan el análisis de video integral aprovechando un VLM y un LLM. El VLM genera subtítulos detallados para los segmentos de video, que luego se almacenan en una base de datos vectorial. El LLM resume estos subtítulos para generar una respuesta final a las consultas de los usuarios. Para obtener más detalles sobre este agente y sus capacidades, consulte Construya un Agente de Búsqueda y Resumen de Video con NVIDIA AI Blueprint.

El diseño flexible de este Plan de IA permite a los usuarios adaptar el flujo de trabajo y adaptarse a diferentes entornos. Para adaptar el plano para el caso de uso específico de un agente de realidad virtual (VR), el primer paso es garantizar un flujo continuo de datos VR en la tubería. Por ejemplo, puede usar FFmpeg para capturar el entorno VR directamente desde la pantalla de los auriculares VR. Para que el agente sea interactivo, nuestro equipo priorizó la habilitación de la comunicación de voz. ¿Qué mejor manera de interactuar con un agente de VR que hablando con él? 

Existen múltiples formas de incorporar la comprensión visual y de audio en entornos XR. En este tutorial, modificamos el plano de IA para incorporar el procesamiento de audio segmentando audio y video a intervalos consistentes, guardándolos como archivos .mpg y .wav. Los archivos de vídeo (.mpg) son procesados por el VLM, mientras que los archivos de audio (.wav) son enviados a NVIDIA Riva NIM ASR a través de una llamada API para la transcripción. API Riva ASR NIM proporcione un fácil acceso a modelos de reconocimiento automático de voz (ASR) de última generación para múltiples idiomas. El texto transcrito se envía al VLM junto con el vídeo correspondiente.

El Plan de IA para la búsqueda y el resumen de videos puede comprender videos largos o transmisiones en vivo. Sin embargo, en el caso de este agente, solo es necesario comprender partes del video cuando un usuario hace una pregunta. La tubería comprueba la presencia de una transcripción de audio. Si una transcripción está disponible, se invoca el VLM. De lo contrario, la tubería espera la entrada de audio en lugar de procesar continuamente todos los cuadros de video. 

Una vez que se detecta una transcripción, la tubería procede con las llamadas VLM y modelo de lenguaje grande (LLM) y la respuesta generada se convierte de nuevo a audio utilizando el modelo Riva NIM text-to-speech (TTS), que luego se devuelve al usuario. La figura 1 muestra las etapas detalladas de este proceso.

El diagrama muestra la ingestión de flujo de VR, donde el audio y el video se procesan por separado y se envían al VLM, que luego se pasa a través del plan de IA de búsqueda y resumen de video, y la respuesta final se responde al usuario.
Figura 1. Arquitectura del flujo de trabajo para construir un agente de IA multimodal con AI de voz para aplicaciones XR

Paso 1: Creación del entorno VR

Para comenzar, conecte Meta Quest 3 a través de la aplicación de escritorio Oculus Link. Una vez que el auricular esté conectado, simule un entorno en VR. Omniverso NVIDIA es una plataforma para desarrollar aplicaciones OpenUSD enfocadas en la digitalización industrial y la simulación física de IA. Isaac Sim NVIDIA sirve como una aplicación de referencia basada en Omniverse, destinada al diseño, simulación, prueba y entrenamiento de robots basados en IA y máquinas autónomas en un entorno virtual físicamente preciso. Este tutorial utiliza el Cortex simulación de apilamiento de Bin UR10 de las simulaciones preconstruidas de Isaac Sim.

Con la simulación en ejecución, la siguiente tarea es conectar Isaac Sim a la Búsqueda. Esto se logra habilitando un conjunto de complementos Create XR ofrecidos por NVIDIA dentro de Isaac Sim. Los plugins activados son los siguientes:

  • Telemetría Omniverse XR
  • Entrada/Salida OpenXR
  • Extensión de reproducción para XR
  • Simulador para XR
  • U. U. Scene View Utilidades
  • Experiencia VR
  • Infraestructura Core XR
  • XR Perfil Común
  • Código UI de XR para UI de Perfil de Construcción
  • Código de interfaz de usuario XR para el Viewport
  • XR UI Común

Una vez que estos complementos estén activados, haga clic en el botón Iniciar Modo VR usando OpenXR para ingresar al entorno VR. 

A continuación, configure el flujo RTSP en el sistema Windows para capturar el entorno VR siguiendo estos pasos:

  1. Descargue la versión de Windows para mediamtx-v1.8.4.
  2. Descomprima la carpeta descargada y navegue al directorio con cd mediamtx_v1.8.4_windows_amd64.
  3. Crear un mediamtx.yml config el archivo y colóquelo en el mismo directorio.
  4. Correr .\mediamtx.exe para iniciar el servidor RTSP.
  5. Instalar FFmpeg en Windows.
  6. Ejecute uno de los siguientes comandos según su configuración. Tenga en cuenta que es posible que deba ajustar algunos parámetros para la compatibilidad y el rendimiento óptimo de transmisión.

Ejecute el siguiente comando para configurar FFmpeg para capturar tanto la pantalla como el micrófono.

ffmpeg -f gdigrab -framerate 10-i desktop -f dshow -i audio="Microphone (Realtek(R) Audio)" -vf scale=640:480-c:v h264_nvenc -preset fast -b:v 1M-maxrate 1M-bufsize 2M-rtbufsize 100M-c:a aac -ac 1-b:a 16k-map0:v -map1:a -f rtsp -rtsp_transport tcp rtsp://localhost:8554/stream

Ejecute el siguiente comando para configurar FFmpeg para la captura de pantalla mientras reproduce un archivo de audio pregrabado. El comando recorre el audio indefinidamente. Para reproducir el audio solo una vez, elimine el --stream_loop parámetro.

ffmpeg -f gdigrab -framerate 10-i desktop -stream_loop -1-i fourth_audio.wav -vf scale=640:480-c:v h264_nvenc -qp 0-c:a aac -b:a 16k-f rtsp -rtsp_transport tcp rtsp://localhost:8554/stream

Paso 2: Agregar audio a la tubería

Para admitir el procesamiento de audio de entrada y salida, nuestro equipo modificó el Plan de IA para la búsqueda de video y la tubería de resumen de modo que pueda incorporar audio además de la entrada de video. Esta característica será compatible de forma nativa con VSS en futuras versiones.

Para este tutorial, modificamos la tubería de ingestión utilizando el splitmuxsink funcionalidad de GStreamer. El equipo configuró una tubería de procesamiento de audio que decodifica el flujo de audio entrante y lo convierte a un formato estándar. El splitmuxsink element se utilizó para escribir los datos de audio en archivos .wav segmentados, lo que permite una fácil administración y reproducción. Esta integración garantiza que las transmisiones de audio y video se procesen simultáneamente dentro de la tubería de ingestión del plan de IA, lo que permite un manejo integral de los medios.

El siguiente código muestra un método de muestra para aumentar el flujo de trabajo de audio:

caps =srcbin_src_pad.query_caps()if"audio"incaps.to_string():    decodebin =Gst.ElementFactory.make("decodebin", "decoder")    audioconvert =Gst.ElementFactory.make("audioconvert", "audioconvert")    decodebin.connect("pad-added", on_pad_added_audio, audioconvert)    wavenc =Gst.ElementFactory.make("wavenc", "wav_encoder")    splitmuxsink =Gst.ElementFactory.make("splitmuxsink", "splitmuxsink")    splitmuxsink.set_property("location", self._output_file_prefix +"_%05d.wav")    splitmuxsink.set_property("muxer", wavenc)    splitmuxsink.set_property("max-size-time", 10000000000)    splitmuxsink.connect("format-location-full", cb_format_location_audio, self)    pipeline.add(decodebin)    pipeline.add(audioconvert)    pipeline.add(splitmuxsink)    srcbin.link(decodebin)    audioconvert.link(splitmuxsink)    pipeline.set_state(Gst.State.PLAYING)

Paso 3: Integración

La tubería de planos emplea una cola para manejar fragmentos de video a medida que se generan a partir de la transmisión RTSP en vivo. Estos fragmentos de vídeo se pasan al VLM junto con un mensaje de texto predefinido. Además, la misma cola se utiliza para procesar fragmentos de audio, que se envían a la API Riva NIM ASR para su transcripción. Las transcripciones resultantes se usan entonces como indicaciones de texto de entrada para el VLM.

La tubería de ingestión de planos de IA actualmente utiliza el mismo mensaje de entrada en todos los fragmentos de video, como se detalla en Construya un Agente de Búsqueda y Resumen de Video con NVIDIA AI Blueprint. La tubería se modificó para usar el mensaje con preguntas generadas a partir de las transcripciones. Esto cambia el proceso de una tarea de resumen a una tarea VQA para segmentos de video específicos cuando se hace la pregunta. También hicimos la tubería más eficiente, ya que omite la inferencia VLM para un fragmento de video si no hay una transcripción de audio correspondiente.

La salida de inferencia VLM se agrega con información de la Base de Conocimiento, que contiene información relevante como el nombre del brazo robótico. Esto se envía al LLM para generar la respuesta final. Después de la inferencia VLM y LLM, en lugar de mostrar la respuesta generada en la interfaz de usuario web, el texto se envía a la API TTS de Riva para crear un archivo .mp3 de audio. Este archivo se envía al sistema local de Windows, donde se reproduce para el usuario en la configuración de VR.

https://www.youtube-nocookie.com/embed/eyHRkynem-A?feature=oembed&iv_load_policy=3&modestbranding=1&rel=0&autohide=1&playsinline=0&autoplay=0Vídeo 1. Vea una demostración de la interacción del usuario con la simulación Cortex UR10 Bin Stacking de Isaac Sim

Comience con el Plan de IA de NVIDIA para la búsqueda y resumen de videos

¿Listo para crear su propio agente de IA utilizando el Plan de IA de NVIDIA para la búsqueda y el resumen de videos? Solicite el Programa de Acceso Temprano.

Consulte estos recursos para obtener más información:

NVIDIA Blog. A. S., N. A. y L. R. Traducido al español

Artículos relacionados

Scroll al inicio