Open Sora: una herramienta de generación de vídeo de código abierto para optimizar la coherencia de los rostros
Últimos recursos sobre IAPublicado hace 5 meses Círculo de intercambio de inteligencia artificial 15.3K 00
Introducción general
Open-Sora es un proyecto de código abierto diseñado para que cualquiera pueda generar vídeos de alta calidad de forma eficiente. Ha sido desarrollado por el equipo hpcaitech para proporcionar herramientas para generar vídeo a partir de texto o imágenes, con soporte para múltiples resoluciones y duraciones. El proyecto es completamente de código abierto, por lo que los pesos del modelo, el código y el proceso de formación están a disposición del público y se fomentan las contribuciones de la comunidad. La última versión, Open-Sora 2.0, se acerca a los mejores modelos del sector en cuanto a rendimiento, cuesta sólo 200.000 dólares entrenarlos y genera vídeo rápido y de alta calidad. Los usuarios pueden descargar el código de forma gratuita, ejecutarlo localmente o experimentarlo a través de la interfaz Gradio de Hugging Face. Open-Sora está dirigido a creadores, desarrolladores e investigadores, impulsando la popularidad y la innovación en la creación de vídeo al tiempo que proporciona un producto comercial:Vídeo Océano .

Lista de funciones
- Generación de texto a vídeo: introduzca una descripción de texto para generar un vídeo que coincida con el contenido.
- Generación de imagen a vídeo: Genere vídeos dinámicos a partir de una sola imagen.
- Extensión de vídeo: amplía la duración del vídeo o añade contenido.
- Compatible con varias resoluciones: admite salida de vídeo de 144p a 768p.
- Duración flexible: Genere vídeos de 2 a 16 segundos.
- Variedad de relaciones de aspecto: admite 16:9, 9:16, 1:1 y más.
- Modelos y formación de código abierto: proporcionar los pesos del modelo y el código de formación, apoyar el desarrollo personalizado.
- Inferencia eficiente: los algoritmos optimizados reducen los requisitos de hardware y generan vídeo en una sola GPU.
- Optimización de las palabras clave: ayuda a GPT-4o a mejorar las palabras clave y la calidad de la generación.
- Puntuación de movimiento: Ajuste la dinámica del vídeo mediante la puntuación de movimiento.
Utilizar la ayuda
Proceso de instalación
Para utilizar Open-Sora, los usuarios deben configurar su entorno Python e instalar las dependencias. A continuación se detallan los pasos a seguir:
- Creación de un entorno virtual
Crea un entorno virtual con Python 3.10 para evitar conflictos de dependencias:conda create -n opensora python=3.10 conda activate opensora
- Clonación del código base
Descargue el proyecto Open-Sora de GitHub:git clone https://github.com/hpcaitech/Open-Sora cd Open-Sora
- Instalación de dependencias
Asegúrate de que la versión de PyTorch es superior a 2.4.0 ejecutando el siguiente comando:pip install -v .
Si necesita un modo de desarrollo, utilícelo:
pip install -v -e .
- Instalación de bibliotecas de aceleración
Uso de Open-Soraxformers
responder cantandoflash-attn
Aumenta el rendimiento. Se instala en función de la versión CUDA:pip install xformers==0.0.27.post2 --index-url https://download.pytorch.org/whl/cu121 pip install flash-attn --no-build-isolation
Para un razonamiento más rápido, se compila manualmente
flash-attention
::git clone https://github.com/Dao-AILab/flash-attention cd flash-attention/hopper python setup.py install
- Descargar modelos de pesos
Open-Sora 2.0 admite la generación de vídeo a 256p y 768p, y los modelos pueden descargarse de Hugging Face o ModelScope:pip install "huggingface_hub[cli]" huggingface-cli download hpcai-tech/Open-Sora-v2 --local-dir ./ckpts
o utilizar ModelScope:
pip install modelscope modelscope download hpcai-tech/Open-Sora-v2 --local_dir ./ckpts
- Verificar la instalación
Compruebe que el entorno es normal:python -c "import opensora; print(opensora.__version__)"
Utilización
Open-Sora permite convertir texto en vídeo, imágenes en vídeo y muchas otras funciones con un funcionamiento sencillo. A continuación se ofrece una guía detallada:
Generación de texto a vídeo
Open-Sora optimiza el proceso de imagen a vídeo, pero también admite la generación directa de texto a vídeo. Se recomienda una canalización de texto a imagen y a vídeo para mejorar la calidad.
- Preparación de las señales
Prepare una descripción detallada del texto, por ejemplo: "El océano en una tormenta, con enormes olas golpeando las rocas y nubes oscuras". Cuanto más específicas sean las palabras, mejores serán los resultados. - Ejecute el comando generate
Genera vídeo de 256x256:torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "Stormy ocean with crashing waves"
Genera vídeo de 768x768 (requiere varias GPU):
torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_768px.py --save-dir samples --prompt "Stormy ocean with crashing waves"
- Parámetros de ajuste
--aspect_ratio
: Establece la relación de aspecto, por ejemplo.16:9
tal vez1:1
.--num_frames
: Establece el número de fotogramas en el rango 4k+1 (máximo 129 fotogramas).--offload True
: Habilita la optimización de memoria para dispositivos de gama baja.
- Ver resultados
El vídeo generado se guarda en la carpetasamples
en formato MP4.
Generación de imagen a vídeo
- Preparación de imágenes de referencia
Sube una imagen y guárdala comoinput.png
. - Ejecute el comando generate
Genera vídeo de 256p:torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --cond_type i2v_head --prompt "A serene forest with flowing river" --ref input.png
Genera vídeo de 768p:
torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/768px.py --cond_type i2v_head --prompt "A serene forest with flowing river" --ref input.png
- Optimizar los efectos dinámicos
utilizar--motion-score
Ajusta el grado de dinamismo de la pantalla. el valor por defecto es 4. Ejemplo:torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --cond_type i2v_head --prompt "A running horse" --ref horse.png --motion-score 7
Optimización de las palabras clave
Open-Sora admite el uso de GPT-4o para optimizar las palabras clave y mejorar la calidad de la generación:
- Establece la clave de la API de OpenAI:
export OPENAI_API_KEY=sk-xxxx
- Ejecuta el comando optimizar:
torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "raining, sea" --refine-prompt True
Funcionamiento de la interfaz de Gradio
Open-Sora ofrece una interfaz interactiva de Gradio:
- Interfaz de inicio:
python scripts/demo.py --model-type v2-768px
- Acceso desde un navegador
http://localhost:7860
. - Introduzca palabras o cargue imágenes, ajuste la resolución y la frecuencia de imagen y haga clic en "Generar" para generar el vídeo.
- Se puede activar el aviso de optimización "Refinar aviso" (requiere clave API de OpenAI).
Formación de modelos personalizados
Los usuarios pueden entrenar modelos basados en sus propios conjuntos de datos:
- Prepare el conjunto de datos: un archivo CSV que contenga la ruta y la descripción del vídeo.
- Modificar el archivo de configuración:
configs/opensora-v2/train/stage1.py
establece la ruta de datos. - Entrenamiento de carrera:
torchrun --nproc_per_node 8 scripts/train.py configs/opensora-v2/train/stage1.py --data-path your_data.csv
eficiencia computacional
Open-Sora optimiza la eficacia de la inferencia y los resultados de las pruebas son los siguientes (GPU H100, 50 pasos de muestreo):
- 256x256: una GPU 60 segundos, 52,5 GB de memoria; 4 GPU 34 segundos, 44,3 GB de memoria.
- 768x768: 8 GPUs 276 segundos, 44,3 GB de memoria de vídeo.
advertencia
- requisitos de hardwareSe recomienda NVIDIA H100 o A100 con al menos 24 GB de memoria de vídeo. Hay resoluciones inferiores disponibles para dispositivos de gama baja.
- Calidad de las señalesLas descripciones detalladas pueden mejorar notablemente los resultados de los vídeos.
- licenciasOpen-Sora utiliza la licencia MIT, que permite el uso comercial, sujeto a términos y condiciones.
escenario de aplicación
- Creación de vídeos cortos
Los blogueros pueden utilizar Open-Sora para generar vídeos promocionales, como "las luces de la ciudad parpadean por la noche", y compartirlos en las redes sociales. - Animación educativa
Los profesores pueden generar animaciones didácticas, como "planetas girando alrededor del sol", para aumentar el atractivo de la clase. - Diseño de escenarios de juego
Los desarrolladores generan escenas dinámicas basadas en mapas conceptuales para su uso en fondos de juego o transiciones. - Investigación sobre IA
Los investigadores pueden modificar el código del modelo para probar nuevos algoritmos o conjuntos de datos que permitan avanzar en las técnicas de generación de vídeo.
CONTROL DE CALIDAD
- ¿Cuál es el rendimiento de Open-Sora 2.0?
En la revisión de VBench, Open-Sora 2.0 y OpenAI Sora La diferencia se reduce a 0,691 TP3T, cerca del HunyuanVídeo 11B y Step-Video 30B. - ¿Qué resoluciones y duraciones son compatibles?
Admite de 144p a 768p, duración de vídeo de 2 segundos a 16 segundos y relaciones de aspecto como 16:9, 9:16, etc. - ¿Cómo optimizar la calidad de la generación?
Utilice indicaciones detalladas para ajustarmotion-score
(1-7), o active GPT-4o Optimizar palabras de aviso. - ¿Puedo utilizarlo gratuitamente?
Open-Sora es completamente de código abierto, con modelos y código disponibles libremente, siguiendo la licencia MIT.
© declaración de copyright
Derechos de autor del artículo Círculo de intercambio de inteligencia artificial Todos, por favor no reproducir sin permiso.
Artículos relacionados
Sin comentarios...