Introdução geral
O Magic 1-For-1 é um modelo eficiente de geração de vídeo projetado para otimizar o uso da memória e reduzir a latência da inferência. O modelo decompõe a tarefa de geração de texto para vídeo em duas subtarefas: geração de texto para imagem e geração de imagem para vídeo para treinamento e destilação mais eficientes. O Magic 1-For-1 pode gerar clipes de vídeo de um minuto de alta qualidade em menos de um minuto para cenários em que vídeos curtos precisam ser gerados rapidamente. O projeto foi desenvolvido por pesquisadores da Universidade de Pequim, da Hedra Inc. e da Nvidia, e o código e os pesos do modelo estão disponíveis publicamente no GitHub.
Lista de funções
- Geração de texto para imagem: converte a descrição do texto de entrada em uma imagem.
- Geração de imagem para vídeo: Converta imagens geradas em clipes de vídeo.
- Uso eficiente da memória: otimiza o uso da memória para ambientes de GPU única.
- Inferência rápida: redução da latência de inferência para geração rápida de vídeo.
- Download de pesos de modelos: fornece links para download de pesos de modelos pré-treinados.
- Configuração do ambiente: fornece um guia detalhado de configuração do ambiente e de instalação de dependências.
Usando a Ajuda
Configurações ambientais
- Instale o git-lfs:
sudo apt-get install git-lfs
- O ambiente do Conda é criado e ativado:
conda create -n video_infer python=3.9
conda activate video_infer
- Instale as dependências do projeto:
pip install -r requirements.txt
Download dos pesos do modelo
- Crie um diretório para armazenar os pesos pré-treinados:
mkdir pretrained_weights
- Faça o download dos pesos mágicos de 1 para 1:
wget -O pretrained_weights/magic_1_for_1_weights.pth <model_weights_url>
- Faça o download do componente Hugging Face:
huggingface-cli download tencent/HunyuanVideo --local_dir pretrained_weights --local_dir_use_symlinks False
huggingface-cli download xtuner/llava-llama-3-8b-v1_1-transformers --local_dir pretrained_weights/text_encoder --local_dir_use_symlinks False
huggingface-cli download openai/clip-vit-large-patch14 --local_dir pretrained_weights/text_encoder_2 --local_dir_use_symlinks False
Gerar vídeo
- Execute os seguintes comandos para geração de texto e imagem para vídeo:
python test_ti2v.py --config configs/test/text_to_video/4_step_ti2v.yaml --quantization False
- Ou use o script fornecido:
bash scripts/generate_video.sh
Fluxo de operação detalhado da função
- Geração de texto para imagemDescrição textual: insira uma descrição textual e o modelo gerará uma imagem correspondente.
- Geração de imagem para vídeoEntrada das imagens geradas no módulo de geração de vídeo para gerar clipes de vídeo curtos.
- Uso eficiente da memóriaGarante uma operação eficiente mesmo em ambientes de GPU única, otimizando o uso da memória.
- inferência rápidaReduzir o atraso da inferência e obter uma geração rápida de vídeo para cenários que exigem a geração rápida de vídeos curtos.