HunyuanVideo
Modelo de generación de vídeo de código abierto de más de 13.000 millones de parámetros que transforma indicaciones de texto en vídeos de alta calidad. Usa un espacio latente comprimido mediante un VAE 3D causal, un codificador de texto basado en un MLLM y una arquitectura Transformer de doble flujo a flujo único para alinear texto, movimiento y contenido visual. Admite generación a 540p y 720p, inferencia en una o varias GPU y pesos cuantificados FP8.
Como usar
Requisitos principales: Linux, GPU NVIDIA con CUDA y al menos 60 GB de VRAM para 720×1280×129 fotogramas (45 GB para 544×960×129). Se recomienda una GPU de 80 GB.
Instalación e inferencia básica:
git clone https://github.com/tencent/HunyuanVideo
cd HunyuanVideo
conda create -n HunyuanVideo python==3.10.9
conda activate HunyuanVideo
python -m pip install -r requirements.txt
python -m pip install ninja
autopep8 --version # opcional; verificar entorno
python -m pip install git+https://github.com/Dao-AILab/[email protected]
python -m pip install xfuser==0.4.0
python3 sample_video.py \\
--video-size 720 1280 \\
--video-length 129 \\
--infer-steps 50 \\
--prompt "A cat walks on the grass, realistic style." \\
--flow-reverse \\
--use-cpu-offload \\
--save-path ./results
Servidor Gradio:
python3 gradio_server.py --flow-reverse
Inferencia distribuida en 8 GPU:
torchrun --nproc_per_node=8 sample_video.py \\
--video-size 1280 720 \\
--video-length 129 \\
--infer-steps 50 \\
--prompt "A cat walks on the grass, realistic style." \\
--flow-reverse \\
--seed 42 \\
--ulysses-degree 8 \\
--ring-degree 1 \\
--save-path ./results
Para usar pesos FP8, hay que indicar explícitamente la ruta del checkpoint y añadir --use-fp8 junto con --dit-weight, --use-cpu-offload y los parámetros de generación correspondientes.
Funcionalidades
- Generación texto-a-vídeo e imagen-a-vídeo.
- Arquitectura unificada con atención completa y fases Transformer de doble flujo y flujo único.
- Codificador de texto MLLM con refinador bidireccional de tokens para mejorar la alineación y el seguimiento de instrucciones.
- VAE 3D causal que comprime dimensiones temporal, espacial y de canal en proporciones 4, 8 y 16.
- Modelo de reescritura de prompts Hunyuan-Large con modos Normal y Master.
- Inferencia distribuida mediante xDiT y paralelismo secuencial unificado.
- Pesos FP8 que reducen aproximadamente 10 GB el uso de memoria de GPU.
- Generación de vídeos de 129 fotogramas en relaciones de aspecto 16:9, 9:16, 4:3, 3:4 y 1:1.
Casos de uso
- Crear clips de vídeo realistas a partir de descripciones textuales.
- Prototipar escenas, anuncios, storyboards y contenido audiovisual con control de composición, iluminación y movimiento de cámara mediante reescritura de prompts.
- Investigar modelos fundacionales de vídeo, alineación texto-vídeo y arquitecturas de difusión Transformer.
- Generar vídeos de alta resolución en servidores con varias GPU usando paralelismo xDiT.
- Ejecutar inferencia con menor consumo de memoria mediante pesos FP8.