Pular para o conteúdo principal

Como executar a difusão estável: Um guia passo a passo

Saiba como usar o Stable Diffusion, um modelo avançado de aprendizagem profunda de código aberto que gera imagens de alta qualidade a partir de descrições de texto. Este tutorial aborda os conceitos básicos de como o modelo funciona e as instruções passo a passo para você executar o Stable Diffusion on-line e localmente.
Actualizado 11 de set. de 2024  · 12 min de leitura

Em colaboração com vários pesquisadores acadêmicos e organizações sem fins lucrativos, a Stability AI, uma startup fundada em 2019, desenvolveu o modelo Stable Diffusion, que foi lançado pela primeira vez em 2022.

O Stable Diffusion é um modelo de aprendizagem profunda de código aberto projetado para gerar imagens detalhadas e de alta qualidade a partir de descrições de texto. Ele também pode modificar imagens existentes ou aprimorar imagens de baixa resolução usando entradas de texto. O modelo continuou a evoluir, com os últimos avanços melhorando seu desempenho e seus recursos.

Neste artigo, exploraremos como a difusão estável funciona e abordaremos vários métodos para executá-la.

O que é difusão estável?

O Stable Diffusion é um modelo de aprendizagem profunda avançado e de código aberto desenvolvido pela Stability AI. Lançado em 2022, ele é excelente na geração de imagens detalhadas e de alta qualidade a partir de descrições textuais. Esse modelo versátil pode modificar imagens existentes ou aprimorar imagens de baixa resolução usando entradas de texto.

Inicialmente treinado em um vasto conjunto de dados de 2,3 bilhões de imagens, o Stable Diffusion utiliza os princípios de modelagem generativa e processos de difusão. Isso permite que ele crie imagens novas e realistas, aprendendo padrões e estruturas a partir dos dados de treinamento. Seus recursos são comparáveis aos de outros modelos de última geração, o que o torna uma ferramenta avançada para uma ampla gama de aplicações na geração e manipulação de imagens.

Em fevereiro de 2024, a Stability AI anunciou o Stable Diffusion 3 em uma prévia, mostrando um desempenho muito melhor, especialmente no tratamento de solicitações de vários assuntos, qualidade de imagem e ortografia. O conjunto Stable Diffusion 3 varia de 800 milhões a 8 bilhões de parâmetros, enfatizando a escalabilidade e a qualidade para atender a várias necessidades criativas. Em junho de 2024, o lançamento do Stable Diffusion 3 Medium, um modelo de 2 bilhões de parâmetros, marcou um avanço significativo, oferecendo detalhes, cores e fotorrealismo excepcionais e, ao mesmo tempo, sendo executado com eficiência em GPUs de consumo padrão.

O Stable Diffusion 3 incorpora uma nova arquitetura Multimodal Diffusion Transformer (MMDiT), que usa conjuntos separados de pesos para representações de imagens e idiomas. Essa inovação aprimora os recursos de compreensão de texto e ortografia em comparação com as versões anteriores do modelo. Com base em avaliações de preferências humanas, o Stable Diffusion 3 supera outros sistemas líderes de geração de texto para imagem, como o DALL-E 3, o Midjourney v6 e o Ideogram v1, em termos de tipografia e aderência imediata.

A Stability AI publicou um documento de pesquisa abrangente que detalha a tecnologia subjacente do Stable Diffusion 3, destacando seus avanços e desempenho superior. Esses aprimoramentos tornam o Stable Diffusion 3 uma ferramenta avançada para gerar imagens de alta qualidade a partir de descrições textuais, com melhorias notáveis no tratamento de solicitações complexas e na produção de resultados realistas.

Como funciona a difusão estável?

O Stable Diffusion é um exemplo sofisticado de uma classe de modelos de aprendizagem profunda conhecidos como modelos de difusão. Mais especificamente, ele se enquadra na categoria de modelos generativos. Esses modelos são projetados para gerar novos dados semelhantes aos dados em que foram treinados, permitindo que eles criem resultados novos e realistas com base em padrões e estruturas aprendidos.

Os modelos de difusão são inspirados no conceito de difusão na física, em que as partículas se espalham de áreas de alta concentração para áreas de baixa concentração ao longo do tempo. No contexto da aprendizagem profunda, os modelos de difusão simulam esse processo em um espaço de dados de alta dimensão. O modelo começa com ruído aleatório e refina iterativamente esse ruído por meio de uma série de etapas para gerar imagens coerentes e de alta qualidade.

A modelagem generativa, um tipo de aprendizado não supervisionado, envolve o treinamento de modelos para descobrir e aprender automaticamente os padrões nos dados de entrada. Depois de treinados, esses modelos podem gerar novos exemplos que se assemelham aos dados originais. Essa capacidade torna os modelos generativos particularmente úteis para tarefas como síntese de imagens, aumento de dados e muito mais.

Se você quiser saber mais sobre esses modelos, considere fazer nosso curso de Aprendizagem profunda em Python

O processo de difusão

O processo de difusão no Stable Diffusion envolve duas fases principais: o processo de difusão direta e o processo de redução de ruído reverso.

1. Processo de difusão direta:

Essa fase envolve a adição gradual de ruído aos dados de treinamento (imagens) em várias etapas até que as imagens se tornem ruído puro. Esse processo é matematicamente projetado para ser reversível.

2. Processo de redução de ruído reverso:

Durante essa fase, o modelo aprende a reverter o processo de adição de ruído. A partir do ruído aleatório, o modelo elimina o ruído da imagem de forma iterativa por meio de várias etapas, reconstruindo gradualmente uma imagem coerente e de alta qualidade. Esse processo inverso é orientado pelos padrões e estruturas aprendidos com os dados de treinamento.

Arquitetura do transformador de difusão multimodal (MMDiT)

O Stable Diffusion 3 apresenta uma nova arquitetura conhecida como Multimodal Diffusion Transformer (MMDiT). Essa arquitetura emprega conjuntos separados de pesos para representações de imagem e linguagem, aprimorando a capacidade do modelo de entender e gerar avisos baseados em texto. Ao usar caminhos distintos para o processamento de imagens e informações textuais, o MMDiT melhora a coerência e a precisão das imagens geradas, especialmente ao lidar com prompts e tipografia complexos.

Aplicações práticas de difusão estável

A difusão estável pode ser usada para uma variedade de aplicações práticas, incluindo:

  • Geração de imagens: Criação de novas imagens a partir de descrições textuais.
  • Modificação de imagem: Alteração de imagens existentes com base em avisos de texto.
  • Aprimoramento de imagem: Melhorando a qualidade das imagens de baixa resolução.

Esses recursos tornam o Stable Diffusion uma ferramenta avançada para artistas, designers, pesquisadores e qualquer pessoa interessada em explorar o potencial da IA generativa.

Aprimoramento de IA para iniciantes

Aprenda os fundamentos da IA e do ChatGPT do zero.
Aprenda IA De Graça

Como executar o Stable Diffusion on-line

Se quiser começar a usar o modelo de difusão estável imediatamente, você pode executá-lo on-line usando as seguintes ferramentas.

1. DreamStudio

A Stability AI, criadora do Stable Diffusion, tornou extremamente simples para os curiosos testarem seu modelo de texto para imagem com sua ferramenta on-line, o DreamStudio.

O DreamStudio concede aos usuários acesso à versão mais recente dos modelos Stable Diffusion e permite que eles gerem uma imagem em até 15 segundos.

DreamStudio UI

Interface de usuário do DreamStudio. Fonte da imagem: DreamStudio.

Ao escrever este tutorial, os novos usuários recebem 100 créditos gratuitos para experimentar o DreamStudio, o que é suficiente para 500 imagens usando as configurações padrão! Créditos adicionais podem ser comprados no aplicativo conforme sua conveniência, custando apenas US$ 10,00 por 1.000 créditos.

2. Cara de abraço

Hugging Face é uma comunidade e plataforma de IA que promove contribuições de código aberto. Embora seja altamente reconhecido por seus modelos de transformadores, o Hugging Face também fornece acesso ao modelo de difusão Stable mais recente e, como um verdadeiro amante do código aberto, é gratuito.

Para executar a difusão estável no Hugging Face, você pode tentar uma das demonstrações, como a demonstração Stable Diffusion 2.1.

A desvantagem do Hugging Face é que você não pode personalizar as propriedades como no DreamStudio, e leva muito mais tempo para gerar uma imagem.

Difusão estável do Hugging Face

Demonstração de difusão estável em um rosto abraçado. Imagem do autor.

Como executar a difusão estável localmente

Mas e se você quiser fazer experiências com o Stable Diffusion em seu computador local? Nós ajudamos você.

A execução do Stable Diffusion localmente permite que você faça experiências com várias entradas de texto para gerar imagens mais adaptadas às suas necessidades. Você também pode ajustar o modelo em seus dados para melhorar os resultados, considerando os dados fornecidos.

Isenção de responsabilidade: Você deve ter uma GPU para executar o Stable Diffusion localmente.

Etapa 1: Instalar o Python e o Git

Para executar o Stable Diffusion em seu computador local, você precisará do Python 3.10.6. Ele pode ser instalado no site oficial do Python. Se você tiver dúvidas, consulte nosso tutorial Como instalar o Python.

Verifique se a instalação funcionou corretamente abrindo o prompt de comando, digitando python e executando o comando. Isso deve imprimir a versão do Python que você está usando.

Isenção de responsabilidade: A versão recomendada para executar o Stable Diffusion é a Python 3.10.6. Recomendamos que você não prossiga sem essa versão para evitar problemas.

Em seguida, você deve instalar o sistema de gerenciamento de repositório de código Git. O Tutorial de instalação do Git pode ajudar, e nosso curso de Introdução ao Git pode aprofundar seu conhecimento sobre o Git.

Etapa 2: Criar uma conta no GitHub e no Hugging Face

O GitHub é um serviço de hospedagem de desenvolvimento de software em que os desenvolvedores hospedam seus códigos para que possam acompanhar e colaborar com outros desenvolvedores em projetos. Se você ainda não tem uma conta no Github, agora também é um bom momento para criar uma - confira o Tutorial do Github e do Git para iniciantes para obter ajuda.

O Hugging Face, por outro lado, é uma comunidade de IA que defende contribuições de código aberto. Ele é o centro de vários modelos de IA de vários domínios, incluindo processamento de linguagem natural, visão computacional e muito mais. Você precisará de uma conta para fazer o download da versão mais recente do Stable Diffusion. Você verá essa etapa mais adiante.

Etapa 3: Clonar uma interface de usuário da Web de difusão estável

Nesta etapa, você fará o download do Stable Diffusion Web-UI para o seu computador local. Embora seja útil criar uma pasta dedicada (por exemplo, stable-diffusion-demo-project) para essa finalidade, isso não é obrigatório.

1. Abra o Git Bash:

  • Certifique-se de que você tenha o Git Bash instalado em seu computador.

2. Navegue até a pasta que você deseja:

  • Abra o Git Bash e use o comando cd para navegar até a pasta em que você deseja clonar a Stable Diffusion Web-UI. Por exemplo:
cd path/to/your/folder

3. Clone o repositório:

  • Execute o seguinte comando para clonar o repositório Stable Diffusion Web-UI:
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

4. Verifique o clone:

  • Se o comando for executado com êxito, você verá uma nova pasta chamada stable-diffusion-webui no diretório escolhido.

Instale a difusão estável

Observação: Você pode encontrar instruções mais específicas para seu hardware e sistema operacional no repositório do Github da interface do usuário da Web do Stable Diffusion.

Etapa 4: Faça o download do modelo Stable Diffusion mais recente

1. Faça login no Hugging Face:

2. Faça o download do modelo Stable Diffusion:

3. Localize a pasta do modelo:

  • Navegue até a seguinte pasta em seu computador: stable-diffusion-webui\models\Stable-diffusion

4. Mova o modelo baixado:

  • Na pasta Stable-diffusion, você verá um arquivo de texto chamado Put Stable Diffusion Checkpoints here.
  • Mova o arquivo do modelo Stable Diffusion baixado para essa pasta.

Etapa 5: Configure a interface do usuário da Web do Stable Diffusion

Nesta etapa, você instalará as ferramentas necessárias para executar o Stable Diffusion.

1. Abra o prompt de comando ou o terminal.

2. Navegue até a pasta da interface do usuário da Web do Stable Diffusion:

  • Use o comando cd para navegar até a pasta stable-diffusion-webui que você clonou anteriormente. Por exemplo:
cd path/to/stable-diffusion-webui

3. Execute o script de configuração:

  • Quando você estiver na pasta stable-diffusion-webui, execute o seguinte comando:
webui-user.bat

Esse script criará um ambiente virtual e instalará todas as dependências necessárias para que você possa executar o Stable Diffusion. O processo pode levar cerca de 10 minutos, portanto, seja paciente.

Observação: Você pode encontrar instruções mais específicas para seu hardware e sistema operacional no repositório do Github da interface do usuário da Web do Stable Diffusion.

Etapa 6: Execute a difusão estável localmente

Depois que as dependências forem instaladas, um URL será exibido no prompt de comando: http://127.0.0.1:7860.

  • Copie e cole isso em seu navegador da Web para executar a interface do usuário da Web do Stable Diffusion.
  • Agora, você pode começar a executar prompts e gerar imagens!

Painel de difusão estável

IU da Web do Diffusion estável em execução local. Imagem do autor.

Conclusão

O Stable Diffusion representa um avanço significativo no campo da IA generativa. Ele oferece a capacidade de gerar imagens detalhadas e de alta qualidade a partir de descrições textuais. Se você deseja modificar imagens existentes, aprimorar imagens de baixa resolução ou criar visuais totalmente novos, o Stable Diffusion oferece um conjunto de ferramentas avançado e versátil.

Com as recentes atualizações e melhorias no Stable Diffusion 3 e Medium, os recursos do modelo foram aprimorados ainda mais, tornando-o líder no espaço de IA generativa.

A execução do Stable Diffusion localmente ou por meio de várias plataformas on-line, como DreamStudio e Hugging Face, permite que você explore e aproveite todo o seu potencial. Seguindo as etapas descritas neste guia, você pode configurar e começar a usar o Stable Diffusion para atender às suas necessidades criativas e práticas!

Saiba mais sobre a IA generativa

A IA generativa é um modo inovador de aprendizagem profunda que cria textos, imagens e outros conteúdos de alta qualidade com base nos dados em que foi treinada. Ferramentas como Stable Diffusion, ChatGPT e DALL-E são excelentes exemplos de como a IA generativa está transformando vários setores ao permitir novas formas de criatividade e inovação. À medida que essas tecnologias continuam a evoluir, elas abrem novas possibilidades para que artistas, desenvolvedores e pesquisadores ultrapassem os limites do que é possível.

Para os interessados em se aprofundar no mundo da IA generativa, aqui estão alguns recursos que você pode explorar:

Obtenha uma das melhores certificações de IA

Demonstre que você pode usar a IA de forma eficaz e responsável.

Perguntas frequentes

Posso executar o Stable Diffusion em um computador sem uma GPU dedicada?

A execução do Stable Diffusion requer um poder computacional significativo, normalmente fornecido por uma GPU dedicada. Embora seja teoricamente possível executá-lo em uma CPU, o processo seria extremamente lento e ineficiente. Para obter a melhor experiência, é recomendável que você use uma máquina com uma GPU poderosa que tenha pelo menos 6 GB de VRAM.

Como posso fazer o ajuste fino do Stable Diffusion com meu próprio conjunto de dados?

O ajuste fino do Stable Diffusion envolve o retreinamento do modelo em seu conjunto de dados específico para melhorar o desempenho dele para o seu caso de uso. Esse processo requer um bom entendimento de aprendizado de máquina e acesso a um ambiente de computação adequado. Em geral, você precisará preparar seu conjunto de dados, modificar os scripts de treinamento para incluir seus dados e, em seguida, executar o processo de treinamento usando uma GPU avançada. Instruções detalhadas sobre o ajuste fino de modelos podem ser encontradas na documentação de estruturas de aprendizado de máquina, como o PyTorch.

Confira nosso tutorial, Ajuste fino do Stable Diffusion XL com o DreamBooth e o LoRA, para obter mais informações.

Quais são alguns problemas comuns que posso encontrar ao executar o Stable Diffusion localmente e como posso solucioná-los?

Os problemas comuns incluem:

  • Erros de instalação: Certifique-se de que todas as dependências estejam instaladas corretamente e sejam compatíveis com seu sistema.
  • Erros de falta de memória: Reduza o tamanho da imagem ou do lote se sua GPU não tiver VRAM suficiente.
  • Desempenho lento: Verifique se os drivers da GPU estão atualizados e se o sistema não está executando outros processos intensivos.

Consulte a página de problemas do repositório GitHub e os fóruns da comunidade para obter dicas e soluções específicas para a solução de problemas.

Como posso otimizar o desempenho do Stable Diffusion na minha GPU?

Para otimizar o desempenho do Stable Diffusion em sua GPU, você pode usar o Stable Diffusion para fazer isso:

  • Atualize os drivers: Verifique se os drivers da GPU estão atualizados.
  • Ajuste as configurações: Reduza a resolução da imagem ou o tamanho do lote para que você se ajuste aos limites de VRAM da sua GPU.
  • Use bibliotecas otimizadas: Utilize bibliotecas e estruturas otimizadas, como CUDA e cuDNN, para GPUs NVIDIA.
  • Fechar processos em segundo plano: Libere recursos do sistema fechando processos em segundo plano desnecessários.
  • Monitore o desempenho: Use ferramentas de monitoramento para monitorar o uso da GPU e ajustar as configurações de acordo com o desempenho ideal.

Posso usar o Stable Diffusion para gerar animações ou vídeos?

Embora o Stable Diffusion tenha sido projetado principalmente para gerar imagens estáticas, é possível criar animações ou vídeos gerando uma sequência de imagens e combinando-as. Isso pode ser feito por você:

  • Geração quadro a quadro: Crie quadros individuais variando ligeiramente o prompt de entrada ou a semente para cada quadro.
  • Interpolação: Use técnicas para interpolar entre quadros-chave gerados pela difusão estável.
  • Software de edição de vídeo: Combine os quadros usando um software de edição de vídeo para produzir animações ou vídeos suaves. Observe que a criação de animações de alta qualidade pode exigir pós-processamento significativo e conhecimento especializado em edição de vídeo.

Photo of Kurtis Pykes
Author
Kurtis Pykes
LinkedIn
Temas

Saiba mais sobre IA generativa e aprendizagem profunda com estes cursos!

Certificação disponível

curso

Conceitos de IA generativa

2 hr
35.5K
Descubra como você pode começar a aproveitar a IA generativa de forma responsável. Saiba como os modelos de IA generativa são desenvolvidos e como eles afetarão a sociedade no futuro.
Ver DetalhesRight Arrow
Iniciar Curso
Ver maisRight Arrow
Relacionado

blog

Stability AI anuncia a difusão estável 3: Tudo o que sabemos até agora

Saiba mais sobre as novas atualizações do Stable Diffusion e descubra os recursos do modelo de texto para imagem da versão 3.
Richie Cotton's photo

Richie Cotton

tutorial

Dominando a retropropagação: Um guia abrangente para redes neurais

Mergulhe nos fundamentos da retropropagação em redes neurais com um guia prático para treinar e avaliar um modelo para um cenário de uso de classificação de imagens.
Zoumana Keita 's photo

Zoumana Keita

14 min

tutorial

Tutorial do DeepChecks: Automatizando os testes de machine learning

Saiba como realizar a validação de dados e modelos para garantir um desempenho robusto de machine learning usando nosso guia passo a passo para automatizar testes com o DeepChecks.
Abid Ali Awan's photo

Abid Ali Awan

12 min

tutorial

IA explicável - Entendendo e confiando nos modelos de aprendizado de máquina

Mergulhe na IA explicável (XAI) e saiba como criar confiança em sistemas de IA com LIME e SHAP para interpretabilidade de modelos. Entenda a importância da transparência e da justiça nas decisões baseadas em IA.
Zoumana Keita 's photo

Zoumana Keita

12 min

tutorial

Uma introdução ao uso do DALL-E 3: Dicas, exemplos e recursos

Descubra como usar o DALL-E 3 para criar imagens. Descubra o que é o DALL-E 3, seus principais recursos e como usar os prompts para obter os melhores resultados.
Kurtis Pykes 's photo

Kurtis Pykes

16 min

tutorial

Vendo como uma máquina: Guia para iniciantes em análise de imagens em aprendizado de máquina

Descubra como os computadores "veem" e interpretam imagens, as técnicas usadas para manipular imagens e como o aprendizado de máquina mudou o jogo.
Amberle McKee's photo

Amberle McKee

28 min

See MoreSee More