Aprendizagem pessoal com IA
e orientação prática
Beanbag Marscode1

Lumina-mGPT-2.0: um modelo autorregressivo de geração de imagens para lidar com várias tarefas de geração de imagens

Introdução geral

O Lumina-mGPT-2.0 é um projeto de código aberto desenvolvido em conjunto pelo Laboratório de IA de Xangai (Shanghai AI Laboratory), pela Universidade Chinesa de Hong Kong (CUHK) e por outras organizações, hospedado no GitHub e mantido pela equipe do Alpha-VLLM. É um modelo autorregressivo autônomo, treinado do zero, com a função principal de gerar imagens diversas e de alta qualidade a partir de texto. Lançada em 3 de abril de 2025, essa ferramenta não apenas oferece suporte a imagens básicas geradas por texto, mas também lida com várias tarefas, como geração de pares de imagens, geração orientada por tópicos, edição de imagens em várias rodadas e geração controlada.

Lumina-mGPT-2.0: um modelo autorregressivo de geração de imagens para lidar com várias tarefas de geração de imagens-1


Lumina-mGPT-2.0: um modelo autorregressivo de geração de imagens para lidar com várias tarefas de geração de imagens-1

Lumina-mGPT-2.0: um modelo autorregressivo de geração de imagens para lidar com várias tarefas de geração de imagens-1

 

Lista de funções

  • Suporta a inserção de texto para gerar imagens de alta qualidade com resolução de até 768x768.
  • Pode gerar pares de imagens adequados para tarefas de comparação ou correspondência.
  • Oferece geração orientada por temas para gerar imagens relevantes com base em um tema específico.
  • Oferece suporte a várias rodadas de edição de imagens, permitindo que os usuários ajustem os resultados gerados passo a passo.
  • Inclui o recurso Geração Controlada para ajuste preciso dos detalhes da imagem.
  • O código ajustado é fornecido para que os usuários possam otimizar o modelo de acordo com suas necessidades.
  • Oferece suporte à inferência acelerada para reduzir o tempo de geração de imagens.

 

Usando a Ajuda

Processo de instalação

Para usar o Lumina-mGPT-2.0 localmente, você precisa primeiro criar o ambiente de tempo de execução. Veja a seguir as etapas detalhadas:

  1. Download do código do projeto
    Abra um terminal e digite o seguinte comando para clonar o repositório de código:
git clone https://github.com/Alpha-VLLM/Lumina-mGPT-2.0.git

Em seguida, vá para o diretório do projeto:

cd Lumina-mGPT-2.0
  1. Criação de um ambiente virtual
    Crie um ambiente separado para o Python 3.10 com o Conda para evitar conflitos:
conda create -n lumina_mgpt_2 python=3.10 -y

Ativar o ambiente:

conda activate lumina_mgpt_2
  1. Instalação de dependências
    Instale as bibliotecas Python necessárias para seu projeto:
pip install -r requirements.txt

Em seguida, instale o módulo Flash Attention (para cálculos acelerados):

pip install https://github.com/Dao-AILab/flash-attention/releases/download/v2.7.4.post1/flash_attn-2.7.4.post1+cu12torch2.3cxx11abiFALSE-cp310-cp310-linux_x86_64.whl --no-build-isolation

Por fim, instale o projeto como um pacote local:

pip install -e .
  1. Baixar os pesos do MoVQGAN
    O projeto depende dos pesos do modelo MoVQGAN. Crie um catálogo e faça o download:
mkdir -p lumina_mgpt/movqgan/270M
wget -O lumina_mgpt/movqgan/270M/movqgan_270M.ckpt https://huggingface.co/ai-forever/MoVQGAN/resolve/main/movqgan_270M.ckpt
  1. instalação de teste
    Execute o seguinte comando para verificar se o ambiente está OK:
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/

Se nenhum erro for relatado, a instalação foi bem-sucedida.

Como usar os principais recursos

A principal função do Lumina-mGPT-2.0 é gerar imagens a partir de texto. Veja a seguir a operação detalhada:

  • Geração básica de imagens
    Execute o script de geração no terminal e insira uma descrição de texto. Por exemplo, você deseja gerar a imagem "City skyline at night, all lit up" (Horizonte da cidade à noite, todo iluminado):
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/ --cfg 4.0 --top_k 4096 --temperature 1.0 --width 768 --height 768 --prompt "City skyline at night with bright lights."

Descrição do parâmetro:

  • --model_pathCaminhos do modelo.
  • --save_pathO diretório onde a imagem é salva.
  • --cfgCorrelação texto-imagem: correlação texto-imagem, padrão 4,0; quanto maior o valor, mais próximo da descrição.
  • --top_kDiversidade de geração: Controla a diversidade de geração, padrão 4096.
  • --temperatureRandomização: Controla a aleatoriedade, padrão 1,0.
  • --width responder cantando --heightResolução: Defina a resolução para um máximo de 768x768.
  • --promptDescrição do texto, compatível com inglês ou chinês.
    As imagens geradas são salvas no arquivo save_samples Pasta.
  • geração acelerada
    Para gerar imagens mais rapidamente, você pode usar duas opções de aceleração:
  • aumentar --speculative_jacobiJacobi: habilita a decodificação especulativa de Jacobi para reduzir o tempo de geração.
  • aumentar --quantAtivar a quantificação do modelo para reduzir o uso da memória gráfica.
    Exemplo de comando:
python generate_examples/generate.py --model_path Alpha-VLLM/Lumina-mGPT-2.0 --save_path save_samples/ --cfg 4.0 --top_k 4096 --temperature 1.0 --width 768 --height 768 --speculative_jacobi --quant

Dados de teste oficiais (com base na placa de vídeo A100):

  • Geração normal: 694 segundos, usando 80 GB de memória de vídeo.
  • Mais decodificação especulativa: 324 segundos, 79,2 GB de memória de vídeo.
  • Além de decodificação e quantificação especulativas: 304 segundos, 33,8 GB de memória de vídeo.
  • Várias rodadas de edição e geração controlada
    Oferece suporte a várias rodadas de ajuste de imagem. Por exemplo, primeiro gere uma imagem e depois modifique alguns detalhes com a nova descrição. Operações específicas precisam se referir a generate_examples ou consulte a documentação oficial! <项目根目录>/README.md.
  • Ajuste fino do modelo
    Se quiser otimizar o modelo com seus próprios dados, você pode consultar o <项目根目录>/TRAIN.md Documentação. Ela fornece etapas detalhadas de ajuste fino, incluindo preparação de dados e comandos de treinamento.

fluxo de trabalho

  1. Siga as etapas para instalar o ambiente e as dependências.
  2. Faça o download do MoVQGAN Weights.
  3. Insira uma descrição de texto e execute o comando generate.
  4. Verifique os resultados, ajuste os parâmetros ou realize várias rodadas de edição.

Quando tiver problemas, consulte a documentação no GitHub ou as discussões da comunidade. Todo o processo é claro e adequado para usuários iniciantes e profissionais.

 

cenário do aplicativo

  1. Design criativo
    Os designers entraram em "Inside a future space station" (Dentro de uma futura estação espacial) para gerar desenhos conceituais a serem usados como inspiração para o projeto.
  2. pesquisa acadêmica
    Os pesquisadores o utilizam para testar os recursos de geração de imagens de modelos autorregressivos ou para ajustar modelos para experimentos.
  3. criação de conteúdo
    O blogueiro digitou "spring garden" (jardim de primavera) para gerar uma imagem para aprimorar o efeito visual do artigo.
  4. Personalização
    O usuário gera imagens com temas específicos, como "pôsteres de publicidade com logotipos de empresas", por meio de várias rodadas de edição.

 

QA

  1. Qual suporte de hardware é necessário?
    Recomenda-se o uso de GPUs de alto desempenho, como a A100, com pelo menos 40 GB de memória de vídeo.
  2. As imagens geradas estão disponíveis comercialmente?
    O projeto usa o protocolo Apache 2.0 e o uso comercial é permitido, sujeito aos termos do contrato.
  3. Por que o longo tempo de geração?
    Leva alguns minutos para gerar uma imagem de 768x768 com as configurações padrão. Isso pode ser feito com o comando --speculative_jacobi responder cantando --quant Aceleração.
  4. Ele é compatível com a descrição em chinês?
    Apoiado, mas a descrição em inglês pode ser mais precisa porque os dados de treinamento do modelo são predominantemente em inglês.
Não pode ser reproduzido sem permissão:Chefe do Círculo de Compartilhamento de IA " Lumina-mGPT-2.0: um modelo autorregressivo de geração de imagens para lidar com várias tarefas de geração de imagens
pt_BRPortuguês do Brasil