ComfyUI para iniciantes: instale e monte um fluxo de texto para imagem nó por nó

Instale o ComfyUI portable no Windows, baixe um checkpoint do Stable Diffusion 1.5 e monte o grafo básico de texto para imagem a partir de uma tela vazia: Empty Latent Image, Load Checkpoint, prompts, KSampler, VAE Decode e Save Image, com o que cada ajuste faz.

Anton Tenitsky13 de outubro de 20267 min de leituraVersão em vídeo abaixo

Este guia foi traduzido do inglês com IA e pode conter erros. Leia o original.

Dois bules de porcelana branca sobre um fundo branco liso, gerados com o Stable Diffusion 1.5 no ComfyUI

O ComfyUI é uma interface baseada em nós para rodar modelos de imagem de IA. É muito avançado e, em alguns aspectos, mais capaz que ferramentas web pagas: nem sempre dá mais qualidade, mas roda localmente, é gratuito e você pode fazê-lo executar coisas muito específicas que nenhuma ferramenta web faz. Este é o primeiro passo: instalá-lo e montar do zero o grafo mais básico de texto para imagem, para entender o que cada nó faz. As primeiras gerações são bules de chá.

Em resumo

  • Instalação: baixe a versão portable da página do ComfyUI no GitHub, descompacte e execute run_nvidia_gpu.bat.
  • Modelo: Stable Diffusion 1.5 (v1-5-pruned-emaonly.safetensors) em ComfyUI/models/checkpoints.
  • O grafo: Empty Latent Image → Load Checkpoint → dois CLIP Text Encode de prompt → KSampler → VAE Decode → Save Image.
  • Padrões que funcionam: 20 steps, CFG 8, sampler dpm_2, scheduler karras para imagens fotorrealistas.

Instale o ComfyUI

Python

Instalei o Python 3.11.5 do python.org, uma versão compatível com o ComfyUI. Versões novíssimas do Python podem causar problemas de compatibilidade, ou não; é difícil saber ao certo. Baixe o instalador do Windows e siga os passos básicos. (A versão portable do ComfyUI abaixo também traz seu próprio Python embutido.)

ComfyUI portable

A página do ComfyUI no GitHub tem os arquivos, a documentação e uma lista útil de atalhos de teclado, que vale a pena consultar e memorizar.

  1. No Windows, use a versão portable: o link de download direto dá um zip. (A instalação para outros sistemas está mais abaixo na página.)
  2. Descompacte, abra a pasta e dê um duplo clique em run_nvidia_gpu.bat. Sem uma GPU utilizável, use a versão para CPU.
  3. A primeira inicialização baixa os módulos de que o ComfyUI precisa; dê 5 a 10 minutos. Depois ele abre no seu navegador.
A pasta do ComfyUI portable no Explorador de Arquivos do Windows, com pastas como custom_nodes, models, input e output
A pasta do ComfyUI: os modelos vão em models, seus renders caem em output.

Se ele não abrir com um fluxo já carregado, vá em Workflow → Browse Templates e escolha Image Generation, o template mais básico. Clique em Queue e ele avisa que ainda não há modelo.

Baixe um modelo

Stable Diffusion 1.5

Pegue o Stable Diffusion 1.5 no Hugging Face: abra Files and versions e baixe v1-5-pruned-emaonly.safetensors. Coloque-o em ComfyUI/models/checkpoints.

Prefira .safetensors a .ckpt. Um arquivo .ckpt é um pickle do Python, que pode conter código que roda quando ele é carregado; o safetensors é um formato que guarda só os números do modelo. Isso importa mais quando você baixa modelos de sites da comunidade.

Por que o 1.5 e não um modelo mais novo

Há muita confusão para iniciantes: Stable Diffusion 3.5, 2.1, SDXL, Flux, 1.5. Comece pelo 1.5:

  • É bem testado. O poder do ComfyUI é que você pode arrastar o fluxo de outra pessoa e ele funciona, e muitos custom nodes, plugins e fluxos precisam de um modelo 1.5 (ou SDXL), e mais raramente 3.5 ou Flux.
  • É rápido. Enquanto você aprende, quer muitas iterações, e a qualidade importa menos nessa fase.

O SD 1.5 é um modelo base. As pessoas o refinam com conjuntos de dados extras, e esses modelos dão resultados bem melhores. Às vezes brinco com o puro, mas mais frequentemente uso um modelo refinado como o epiCPhotoGasm.

Modelos refinados no Civitai

O Civitai tem uma enorme quantidade de modelos refinados para SD 1.5, SDXL, Flux e mais. Busque um estilo (anime, estilizado, um pintor clássico como Rembrandt, qualquer coisa) e confira o modelo base listado em cada página. Para bom fotorrealismo escolhi o epiCPhotoGasm, um modelo SD 1.5. Ele vai na mesma pasta checkpoints.

A página do modelo epiCPhotoGasm no Civitai com retratos de exemplo e um botão de download
epiCPhotoGasm no Civitai: um modelo SD 1.5 refinado para fotorrealismo.

De volta ao ComfyUI, Edit → Refresh Node Definitions encontra os novos arquivos. Para mudanças maiores, às vezes é preciso reiniciar o ComfyUI por completo.

Sua primeira imagem

Escolha um modelo no Load Checkpoint e clique em Queue. Mantenha a janela de comando aberta: ela mostra erros e quanto tempo cada imagem leva.

O template padrão de geração de imagens do ComfyUI com Load Checkpoint, dois prompts, KSampler, VAE Decode, Save Image e Empty Latent Image, e a lista de checkpoints aberta
O template padrão, com os dois checkpoints baixados na lista.

A interface em si é simples: salvar e exportar, desfazer e refazer, ajuda e documentação, uma biblioteca de nós para buscar nós, uma biblioteca de modelos e seus arquivos de fluxo. Clique de novo num ícone da barra lateral para esconder o painel.

Monte o grafo você mesmo

Comece de uma página em branco: Workflow → New. Dê um duplo clique na tela vazia para buscar um nó pelo nome.

1. Empty Latent Image: a tela

Adicione o Empty Latent Image. Ele define a resolução e o batch size, o número de imagens por execução (a contagem do lote ao lado do botão Queue faz um trabalho parecido).

É uma tela em branco no espaço latente: uma representação codificada e ruidosa em que o modelo trabalha, guardada como um tensor (uma matriz multidimensional de números). Não sou matemático; a ideia útil é que você manipula esse latente alimentando-o com informação: um prompt de texto, outra imagem, um guia de estilo ou ruído.

2. Load Checkpoint: o modelo

Adicione o Load Checkpoint («checkpoint» quer dizer modelo) e escolha o SD 1.5. Ele tem três saídas:

  • MODEL diz ao ComfyUI qual modelo é usado em todo o processo.
  • CLIP trata as entradas que guiam a imagem, como o seu prompt de texto.
  • VAE, um autoencoder variacional, codifica uma imagem no espaço latente e a decodifica de volta. Muitos checkpoints incluem um; você também pode carregar outro VAE para um visual diferente.
Um nó Load Checkpoint com saídas MODEL, CLIP e VAE e v1-5-pruned-emaonly selecionado
Load Checkpoint: um modelo, três saídas.

3. Dois prompts

Arraste a partir da saída CLIP e solte; o ComfyUI oferece nós compatíveis. Escolha CLIP Text Encode (Prompt). Copie-o (Ctrl+C, Ctrl+V) e conecte a cópia também. Normalmente você trabalha com dois prompts: um positivo para o que você quer e um negativo para o que não quer. Dê um duplo clique no título de um nó para renomeá-lo.

4. KSampler: onde tudo se junta

Arraste a partir de MODEL e escolha KSampler, o nó que resolve a imagem. Conecte o prompt positivo, o prompt negativo e o latente vazio. Os ajustes dele:

  • Seed com control_after_generate: fixed repete a mesma imagem, increment conta 1, 2, 3 para você rastrear as mudanças, randomize faz cada execução nova.
  • Steps: mais steps, mais qualidade, renders mais longos. Dois steps ficam feios; 80 ficam mais refinados mas demoram muito mais. Alguns modelos funcionam melhor com um número específico, então leia a documentação deles.
  • CFG (classifier-free guidance): valores menores dão mais liberdade ao modelo. Em 1–2 você obtém ruído ou uma imagem em branco; em 12, 15 ou 20 ele adere ao prompt com muito mais força e pode dar glitches. 8 é o padrão e um bom ponto de partida; experimente entre cerca de 4 e 10.
  • Sampler: o algoritmo que cria a imagem. Alguns servem para saída estilizada, outros para fotorrealismo; alguns são mais rápidos. Usei o dpm_2 para imagens fotorrealistas.
  • Scheduler: o padrão de ruído acrescentado durante a amostragem. O karras serve para imagens realistas.
  • Denoise: o quanto o resultado se afasta do latente de entrada. Com um latente vazio não tem efeito aqui; importa para a imagem para imagem.
Um close do nó KSampler com seed, control_after_generate, steps, cfg, sampler, scheduler e denoise
Os ajustes do KSampler, antes de trocar para dpm_2 e karras.

5. VAE Decode e Save Image

O VAE Decode transforma o latente (a matriz de números) numa imagem de verdade. Conecte a saída do KSampler e o VAE do checkpoint. Depois adicione o Save Image. Os resultados são salvos em ComfyUI/output.

Digite «teapot» no prompt positivo e execute. O ComfyUI destaca em verde o nó que está rodando no momento.

O KSampler com dpm_2 e karras alimentando o VAE Decode e o Save Image, que mostra um bule branco
O grafo pronto e um primeiro bule.

Melhorando o resultado

O primeiro bule não ficou tão bonito. O que ajudou:

  • Melhor redação: «white background, isolated, centered».
  • Um prompt negativo: às vezes ele fazia imagens de anime ou estilizadas, então coloquei essas palavras no prompt negativo.
  • Um modelo melhor: trocar do SD 1.5 puro para o epiCPhotoGasm.

Depois subi a resolução para 1024 × 1024. Quatro vezes os pixels levaram cerca de quatro vezes mais: de 5 a 23 segundos. Nesse tamanho ele insistia em fazer vários bules, então acrescentei «single teapot» ao prompt. Dizer «white background» também tendia a deixar o bule branco; você pode pedir um bule preto sobre fundo branco se quiser um. Ainda dá glitches de vez em quando. Enfileirei quatro e fui fazer um chá.

O nó Save Image mostrando uma xícara e dois bules sobre fundo branco, com a dica de Batch Count ao lado do botão Queue
Em 1024 × 1024 ele gostava de acrescentar bules extras, então o prompt ganhou «single teapot».

Esta é uma configuração bem básica que só arranha a superfície. Ganhe experiência mudando prompts e valores e observando o que muda; é assim que você pega o jeito do software. Próximo: instale o ComfyUI Manager e experimente a imagem para imagem.

Rodando sem uma GPU potente

O SD 1.5 roda em placas modestas. Para modelos mais pesados como o SDXL e o Flux, ou lotes longos, agora alugo GPUs; veja minha introdução ao RunPod.

Assista à versão em vídeo (19:22)

Tudo o que está acima também está no vídeo, se você preferir acompanhar na tela. O vídeo está em inglês.

Perguntas frequentes

Com qual modelo Stable Diffusion um iniciante deve começar no ComfyUI?

Com o Stable Diffusion 1.5. É rápido, e muitos fluxos compartilhados, custom nodes e plugins são feitos para ele (ou para o SDXL). Para imagens melhores, use um modelo SD 1.5 refinado do Civitai, como o epiCPhotoGasm.

Onde coloco os arquivos de modelo no ComfyUI?

Os checkpoints vão em ComfyUI/models/checkpoints. Depois use Edit → Refresh Node Definitions (ou reinicie o ComfyUI) para que apareçam na lista do Load Checkpoint.

Que CFG e quantos steps devo usar?

CFG 8 é um bom padrão; vale experimentar de 4 a 10. Valores muito baixos dão ruído, valores muito altos seguem o prompt com força demais e dão glitches. Mais steps significam mais qualidade, mas renders mais longos; cerca de 20 é um começo normal.

Por que o denoise não faz nada no meu fluxo de texto para imagem?

O denoise controla o quanto o resultado se afasta do latente de entrada. Com um latente vazio não há de onde se afastar, então ele não tem efeito. Importa na imagem para imagem.

Anton Tenitsky é artista 3D com mais de 15 anos em computação gráfica, que trabalhou com Nickelodeon, Gameloft, Marvel Rivals e muitos outros clientes. Mais sobre mim

Guias relacionados