TaoMate-H3: generación de audio y vídeo en streaming con baja latencia

Descubre TaoMate-H3, un runtime de MiniMax H3 que genera fragmentos sincronizados de audio y vídeo hasta 11,45 veces más rápido para salidas largas de 480p a 1080p.

TaoMate-H3: generación de audio y vídeo en streaming con baja latencia

Generar una secuencia completa de audio y vídeo con un modelo de difusión grande puede tardar más que el propio clip final. Esta latencia dificulta la creación de aplicaciones interactivas, como avatares en directo, presentadores virtuales, narración en tiempo real y generación de vídeo adaptativa.

TaoMate-H3 aborda este problema con un runtime de inferencia en streaming basado en MiniMax H3. En lugar de esperar a que termine una solicitud completa, genera audio y vídeo sincronizados en pequeños fragmentos, lo que permite obtener el primer resultado reproducible mucho antes y mantener la continuidad en secuencias más largas.

El proyecto ha sido desarrollado por el equipo Alibaba TaoLive AIGC y se distribuye bajo el MiniMax H3 Community License Agreement.

¿Qué diferencia a TaoMate-H3?

TaoMate-H3 está diseñado en torno al streaming, no a la generación de una sola vez. Su ruta de generación principal utiliza una estrategia LoRA de tres pasos: cada fragmento pequeño pasa por tres intervalos de eliminación de ruido de Stage3. Esto reduce el trabajo necesario antes de que un fragmento alcance su estado latente final.

El runtime también genera voz, sonido ambiental y vídeo sobre una línea temporal compartida. Este enfoque conjunto de audio y vídeo es importante para aplicaciones en las que el movimiento de los labios, los efectos de sonido y los eventos visuales deben permanecer sincronizados, en lugar de ensamblarse de forma independiente después de la generación.

Entre sus capacidades principales se incluyen:

  • Generación en streaming LoRA de tres pasos para completar los fragmentos más rápidamente.
  • Generación conjunta de audio y vídeo, con voz, sonido e imágenes alineados en una única línea temporal.
  • Baja latencia por fragmento, de modo que el primer latente utilizable llega mucho antes de que termine una solicitud completa de MiniMax H3.
  • Continuidad en secuencias largas mediante actualizaciones limpias de la caché KV y guía de audio integrada.
  • Consistencia visual, vocal y de movimiento entre los límites de los prompts.
  • Salida vertical y horizontal a resoluciones de 480p, 768p y 1080p alineado.
  • Inferencia en un solo nodo con cuatro u ocho GPU mediante paralelismo de secuencia TP2 y Ulysses.

Requisitos de hardware y software

La configuración validada es exigente y está orientada a hardware NVIDIA Hopper:

  • Linux
  • Python 3.10 o 3.11
  • GPU NVIDIA Hopper o SM90
  • Configuración validada: 8 × NVIDIA H20 de 96 GB
  • CUDA 12.8
  • PyTorch 2.8
  • FFmpeg con compatibilidad con H.264 y AAC

Crea un entorno dedicado antes de instalar el runtime:

conda create -n taomate-h3 python=3.10 -y
conda activate taomate-h3

pip install torch==2.8.0 torchvision==0.23.0 \\
  --index-url https://download.pytorch.org/whl/cu128

pip install triton==3.4.0 vllm==0.11.1

TaoMate-H3 depende de FlashAttention compatible con Hopper. Instala la implementación para Hopper sin aislamiento de compilación:

git clone https://github.com/Dao-AILab/flash-attention.git
pip install --no-build-isolation ./flash-attention/hopper

A continuación, clona e instala TaoMate-H3 en modo editable:

git clone https://github.com/TaoLiveAIGC/TaoMate-H3.git
cd TaoMate-H3
pip install -e .

Instala FFmpeg en Ubuntu o Debian con:

sudo apt-get update
sudo apt-get install -y ffmpeg

Descarga los modelos necesarios

El runtime utiliza el modelo MiniMax H3 FL2VA. Descarga los archivos necesarios desde Hugging Face en el directorio local models/MiniMax-H3:

hf download MiniMaxAI/MiniMax-H3 \\
  --include "model_index.json" "FL2VA/*" \\
  --local-dir models/MiniMax-H3

TaoMate-H3 también utiliza un adaptador LoRA. La versión actual es el adaptador EMA del generador step-3000, con rango 128 y alpha 128. Si no se proporciona un adaptador local, la inferencia descarga automáticamente el adaptador oficial en models/TaoMate-H3 durante el primer uso.

Para descargarlo por adelantado:

hf download TaoLiveAIGC/TaoMate-H3 \\
  --include "config.json" "adapter_config.json" "adapter_model.safetensors" \\
  --local-dir models/TaoMate-H3

El directorio resultante debe contener:

models/TaoMate-H3/
├── config.json
├── adapter_config.json
└── adapter_model.safetensors

Para repositorios privados o restringidos de Hugging Face, autentícate primero:

hf auth login

Como alternativa, proporciona el acceso mediante la variable de entorno estándar HF_TOKEN.

Prompting en bloques de cinco segundos

TaoMate-H3 admite un único prompt reutilizado durante toda la secuencia o un archivo JSON que contenga un prompt para cada intervalo de cinco segundos. El prompting por bloques resulta útil para la generación de secuencias largas, ya que permite cambiar la escena, la acción, el diálogo o la dirección de cámara mientras el runtime mantiene la continuidad mediante su caché KV y sus mecanismos de guía de audio.

Ejemplo de archivo de prompts:

{
  "prompts": [
    "prompt para los segundos 0-5",
    "prompt para los segundos 5-10"
  ],
  "seeds": [8301, 8301]
}

Usar la misma semilla en todos los bloques puede ayudar a mantener estable la configuración de la solicitud creada. Las opciones --prompt y --prompt-json son mutuamente excluyentes.

Ejecución de una generación de 10 segundos

El siguiente comando genera un vídeo vertical de 10 segundos a 768p utilizando ocho GPU:

python -m taomate_h3 \\
  --model-root models/MiniMax-H3 \\
  --prompt-json examples/prompts_10s.json \\
  --duration 10 \\
  --resolution 768x1376 \\
  --gpus 8 \\
  --devices 0,1,2,3,4,5,6,7 \\
  --seed 8301 \\
  --output outputs/demo_10s

La canalización completa escribe el resultado final en:

outputs/demo_10s/video.mp4

El lanzador crea sus propios workers distribuidos locales, por lo que no es necesario utilizar un comando externo torchrun. Para usar otro adaptador, especifícalo explícitamente:

--adapter /ruta/al/adapter

El directorio de salida debe ser nuevo o estar vacío. La duración total debe ser múltiplo de cinco segundos, a menos que se infiera de la configuración del JSON de prompts.

Resoluciones compatibles

TaoMate-H3 admite diseños verticales y horizontales:

Objetivo Vertical Horizontal
480p 480x864 864x480
768p 768x1376 1376x768
1080p 1088x1920 1920x1088

Las dimensiones de 1080p utilizan un borde de 1088 píxeles para que ambas dimensiones sigan siendo divisibles por 32. Si la entrega requiere un borde exacto de 1080 píxeles, recorta la salida generada después de la inferencia.

Opciones importantes de la línea de comandos

Opción Propósito Valor predeterminado
--model-root Directorio de MiniMax H3 que contiene FL2VA/ Obligatorio
--adapter Directorio local del LoRA de TaoMate-H3 Descarga automática en models/TaoMate-H3
--prompt Reutiliza un prompt para cada bloque de cinco segundos
--prompt-json Proporciona un prompt por cada bloque de cinco segundos
--duration Duración total en segundos 5, o se infiere del JSON
--resolution ANCHOxALTO; el borde corto debe ser 480, 768 o 1088 768x1376
--gpus Número de GPU locales; los valores compatibles son 4 u 8 8
--devices Identificadores de dispositivos CUDA separados por comas 0 a gpus-1
--seed Semilla de la solicitud creada 8301
--output Directorio de salida nuevo o vacío Obligatorio

Ambas dimensiones de la resolución deben ser divisibles por 32. El runtime admite configuraciones de cuatro y ocho GPU; los resultados de referencia utilizan ocho GPU con TP2 × Ulysses4.

Resultados de las pruebas de rendimiento

El proyecto informa de mediciones realizadas en un nodo con 8 × GPU NVIDIA H20 de 96 GB, utilizando un lienzo de 480×864, una salida de 10 segundos y la semilla 8301.

Métrica TaoMate-H3 MiniMax H3 Mejora
Tiempo puro de DiT 14.810 s 169.572 s 11,45× más rápido
Primer latente de fragmento final 6.148 s 170.052 s 27,66× más rápido
Primer vídeo reproducible 17.287 s 183.313 s 10,60× más rápido
Memoria máxima de DiT asignada 31.37 GiB 32.03 GiB

Estas cifras distinguen varias mediciones de latencia. El tiempo puro de DiT excluye la carga del modelo, la codificación de texto, la decodificación VAE y la codificación multimedia. El primer vídeo reproducible incluye la decodificación del VAE de vídeo y la publicación H.264 en la prueba comparativa equivalente de publicación del primer fragmento. La prueba cubre la ruta de generación Stage3 y excluye la preparación interna de audio del comando.

Una ejecución de TaoMate-H3 de 10 segundos contiene 24 pasadas de generación y ocho actualizaciones limpias de KV. El resultado más destacable no es únicamente la mejora de velocidad de extremo a extremo: el primer latente de fragmento final llega en 6,148 segundos, lo que abre la puerta a aplicaciones que pueden comenzar la reproducción mientras los fragmentos posteriores aún se están generando.

Cuándo utilizar TaoMate-H3

TaoMate-H3 es especialmente relevante cuando el tiempo hasta el primer vídeo importa tanto como el tiempo total de generación. Entre sus posibles aplicaciones se incluyen:

  • Humanos digitales interactivos y presentadores virtuales
  • Sistemas de narración en directo o semidirecto
  • Vídeo largo generado por IA con cambios de escena entre bloques de prompts
  • Generación de vídeo reactiva al audio
  • Prototipado de diálogos, sonidos e imágenes sincronizados
  • Herramientas creativas en streaming que no pueden esperar a que se renderice un clip completo

No es un paquete ligero de inferencia para consumidores. El requisito de GPU Hopper, la configuración validada de ocho GPU y la pila especializada de CUDA/PyTorch indican que su implementación está más orientada a servidores dedicados o infraestructura de investigación.

Licencia y agradecimientos

TaoMate-H3 se distribuye bajo el MiniMax H3 Community License Agreement. Los usuarios deben cumplir las condiciones de dicha licencia para su uso y distribución.

El proyecto reconoce el trabajo de los equipos responsables de MiniMax H3, Qwen3-VL, PyTorch, FlashAttention, Triton y vLLM.

Para consultar los detalles de implementación y los ejemplos más recientes, visita el repositorio de TaoMate-H3 en GitHub.

Fuente

TaoLiveAIGC/TaoMate-H3