O modelo de difusão mais poderoso e modular, GUI e back-end.
Esta interface do usuário permitirá que você projete e execute pipelines de difusão estáveis avançados usando uma interface baseada em gráfico/nós/fluxograma. Para alguns exemplos de fluxo de trabalho e ver o que o ComfyUI pode fazer, você pode conferir:
Interface de nós/gráfico/fluxograma para experimentar e criar fluxos de trabalho complexos de difusão estável sem a necessidade de codificar nada.
Suporta totalmente SD1.x, SD2.x, SDXL, difusão de vídeo estável, cascata estável, SD3 e áudio estável
Fluxo
Sistema de fila assíncrona
Muitas otimizações: reexecuta apenas as partes do fluxo de trabalho que mudam entre as execuções.
Gerenciamento inteligente de memória: pode executar modelos automaticamente em GPUs com vram de até 1 GB.
Funciona mesmo se você não tiver uma GPU com: --cpu (lento)
Pode carregar modelos/pontos de verificação de ckpt, safetensors e difusores. Modelos VAEs e CLIP independentes.
Incorporações/inversão textual
Loras (regular, locon e loha)
Hiperredes
Carregando fluxos de trabalho completos (com sementes) de arquivos PNG, WebP e FLAC gerados.
Salvando/carregando fluxos de trabalho como arquivos Json.
A interface de nós pode ser usada para criar fluxos de trabalho complexos, como um para correção de contratações ou outros muito mais avançados.
Composição da Área
Pintura com modelos regulares e com pintura interna.
ControlNet e adaptador T2I
Modelos de luxo (ESRGAN, variantes ESRGAN, SwinIR, Swin2SR, etc...)
Modelos unCLIP
GLIGEN
Mesclagem de modelos
Modelos LCM e Loras
SDXL Turbo
AuraFlow
HunyuanDiT
Prévias latentes com TAESD
Inicia muito rápido.
Funciona totalmente offline: nunca baixa nada.
Arquivo de configuração para definir os caminhos de pesquisa dos modelos.
Exemplos de fluxo de trabalho podem ser encontrados na página Exemplos
| Teclado | Explicação |
|---|---|
| Ctrl + Enter | Enfileirar o gráfico atual para geração |
| Ctrl + Shift + Enter | Enfileire o gráfico atual como o primeiro da geração |
| Ctrl + Alt + Enter | Cancelar a geração atual |
| Ctrl + Z/Ctrl + Y | Desfazer/Refazer |
| Ctrl + S | Salvar fluxo de trabalho |
| Ctrl + O | Carregar fluxo de trabalho |
| Ctrl + A | Selecione todos os nós |
| Alt + C | Recolher/descompactar nós selecionados |
| Ctrl+M | Ativar/desativar nós selecionados |
| Ctrl+B | Ignorar nós selecionados (age como se o nó tivesse sido removido do gráfico e os fios reconectados) |
| Excluir/Retroceder | Excluir nós selecionados |
| Ctrl + Backspace | Exclua o gráfico atual |
| Espaço | Mova a tela quando segurada e movendo o cursor |
| Ctrl/Shift + Clique | Adicionar nó clicado à seleção |
| Ctrl + C/Ctrl + V | Copie e cole nós selecionados (sem manter conexões com saídas de nós não selecionados) |
| Ctrl + C/Ctrl + Shift + V | Copiar e colar nós selecionados (mantendo conexões de saídas de nós não selecionados para entradas de nós colados) |
| Shift + Arrastar | Mova vários nós selecionados ao mesmo tempo |
| Ctrl+D | Carregar gráfico padrão |
Alt + + | Zoom na tela |
Alt + - | Diminuir zoom da tela |
| Ctrl + Shift + LMB + Arrastar verticalmente | Aumentar/diminuir zoom na tela |
| P | Fixar/desafixar nós selecionados |
| Ctrl+G | Agrupar nós selecionados |
| P | Alternar a visibilidade da fila |
| H | Alternar visibilidade do histórico |
| R | Atualizar gráfico |
| Clique duas vezes em LMB | Abra a paleta de pesquisa rápida do nó |
| Shift + Arrastar | Mova vários fios de uma vez |
| Ctrl + Alt + LMB | Desconecte todos os fios do slot clicado |
Ctrl também pode ser substituído por Cmd para usuários do macOS
Existe uma versão portátil independente para Windows que deve funcionar para rodar em GPUs Nvidia ou para rodar em sua CPU apenas na página de lançamentos.
Basta baixar, extrair com 7-Zip e executar. Certifique-se de colocar seus pontos de verificação/modelos de difusão estável (os enormes arquivos ckpt/safetensors) em: ComfyUImodelscheckpoints
Se você tiver problemas para extraí-lo, clique com o botão direito no arquivo -> propriedades -> desbloquear
Consulte o arquivo de configuração para definir os caminhos de pesquisa dos modelos. Na versão autônoma do Windows, você pode encontrar esse arquivo no diretório ComfyUI. Renomeie este arquivo para extra_model_paths.yaml e edite-o com seu editor de texto favorito.
Para executá-lo em serviços como paperspace, kaggle ou colab você pode usar meu Jupyter Notebook
Observe que algumas dependências ainda não suportam python 3.13, portanto, é recomendado usar 3.12.
Git clona este repositório.
Coloque seus pontos de verificação SD (os enormes arquivos ckpt/safetensors) em: models/checkpoints
Coloque seu VAE em: models/vae
Os usuários da AMD podem instalar rocm e pytorch com pip se ainda não o tiver instalado, este é o comando para instalar a versão estável:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm6.1
Este é o comando para instalar o nightly com ROCm 6.2 que pode ter algumas melhorias de desempenho:
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/rocm6.2
Os usuários da Nvidia devem instalar o pytorch estável usando este comando:
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu124
Este é o comando para instalar o pytorch todas as noites, que pode ter melhorias de desempenho:
pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu124
Se você receber o erro "Torch não compilado com CUDA habilitado", desinstale o torch com:
pip uninstall torch
E instale-o novamente com o comando acima.
Instale as dependências abrindo seu terminal dentro da pasta ComfyUI e:
pip install -r requirements.txt
Depois disso, você deverá ter tudo instalado e poderá prosseguir com a execução do ComfyUI.
O suporte para GPU Intel está disponível para todas as GPUs Intel suportadas pela extensão Intel para Pytorch (IPEX) com os requisitos de suporte listados na página de instalação. Escolha sua plataforma e método de instalação e siga as instruções. As etapas são as seguintes:
Comece instalando os drivers ou kernel listados ou mais recentes na página de instalação do IPEX vinculada acima para Windows e Linux, se necessário.
Siga as instruções para instalar o oneAPI Basekit da Intel para sua plataforma.
Instale os pacotes para IPEX usando as instruções fornecidas na página Instalação da sua plataforma.
Siga as instruções de instalação manual do ComfyUI para Windows e Linux e execute o ComfyUI normalmente conforme descrito acima depois que tudo estiver instalado.
Discussões e ajuda adicionais podem ser encontradas aqui.
Você pode instalar o ComfyUI no Apple Mac Silicon (M1 ou M2) com qualquer versão recente do macOS.
Instale o pytorch todas as noites. Para obter instruções, leia o treinamento Accelerated PyTorch no Mac Apple Developer guide (certifique-se de instalar o pytorch mais recente todas as noites).
Siga as instruções de instalação manual do ComfyUI para Windows e Linux.
Instale as dependências do ComfyUI. Se você tiver outra UI de difusão estável, poderá reutilizar as dependências.
Inicie o ComfyUI executando python main.py
Nota : Lembre-se de adicionar seus modelos, VAE, LoRAs etc. às pastas Comfy correspondentes, conforme discutido na instalação manual do ComfyUI.
pip install torch-directml Então você pode iniciar o ComfyUI com: python main.py --directml
python main.py
Tente executá-lo com este comando se tiver problemas:
Para 6700, 6600 e talvez outro RDNA2 ou anterior: HSA_OVERRIDE_GFX_VERSION=10.3.0 python main.py
Para AMD 7600 e talvez outras placas RDNA3: HSA_OVERRIDE_GFX_VERSION=11.0.0 python main.py
Somente partes do gráfico que possuem uma saída com todas as entradas corretas serão executadas.
Apenas as partes do gráfico que mudam de cada execução para a próxima serão executadas; se você enviar o mesmo gráfico duas vezes, apenas a primeira será executada. Se você alterar a última parte do gráfico, apenas a parte que você alterou e a parte que depende dela serão executadas.
Arrastar um png gerado na página da web ou carregar um fornecerá o fluxo de trabalho completo, incluindo as sementes que foram usadas para criá-lo.
Você pode usar () para alterar a ênfase de uma palavra ou frase como: (código bom:1.2) ou (código ruim:0.8). A ênfase padrão para () é 1.1. Para usar caracteres () em seu prompt real, escape-os como ( ou ).
Você pode usar {day|night}, para prompts curinga/dinâmicos. Com esta sintaxe, "{wild|card|test}" será substituído aleatoriamente por "wild", "card" ou "test" pelo frontend sempre que você enfileirar o prompt. Para usar caracteres {} em seu prompt real, faça escape deles como: { ou }.
Prompts dinâmicos também suportam comentários no estilo C, como // comment ou /* comment */ .
Para usar conceitos/embeddings de inversão textual em um prompt de texto coloque-os no diretório models/embeddings e use-os no nó CLIPTextEncode assim (você pode omitir a extensão .pt):
embedding:embedding_filename.pt
Use --preview-method auto para habilitar visualizações.
A instalação padrão inclui um método rápido de visualização latente de baixa resolução. Para habilitar visualizações de maior qualidade com TAESD, baixe taesd_decoder.pth, taesdxl_decoder.pth, taesd3_decoder.pth e taef1_decoder.pth e coloque-os na pasta models/vae_approx . Depois de instalados, reinicie o ComfyUI e inicie-o com --preview-method taesd para permitir visualizações de alta qualidade.
Gere um certificado autoassinado (não apropriado para uso compartilhado/de produção) e uma chave executando o comando: openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 3650 -nodes -subj "/C=XX/ST=StateName/L=CityName/O=CompanyName/OU=CompanySectionName/CN=CommonNameOrHostname"
Use --tls-keyfile key.pem --tls-certfile cert.pem para ativar TLS/SSL, o aplicativo agora estará acessível com https://... em vez de http://... .
Nota: Os usuários do Windows podem usar alexisrolland/docker-openssl ou uma das distribuições binárias de terceiros para executar o exemplo de comando acima.
Se você usar um contêiner, observe que o volume mount-vpode ser um caminho relativo, então... -v ".:/openssl-certs" ...criaria os arquivos key & cert no diretório atual do seu comando terminal prompt ou powershell.
Espaço Matrix: #comfyui_space:matrix.org (é como discord, mas de código aberto).
Veja também: https://www.comfy.org/
A partir de 15 de agosto de 2024, fizemos a transição para um novo frontend, que agora está hospedado em um repositório separado: ComfyUI Frontend. Este repositório agora hospeda o JS compilado (do TS/Vue) no diretório web/ .
Para quaisquer bugs, problemas ou solicitações de recursos relacionados ao frontend, use o repositório ComfyUI Frontend. Isso nos ajudará a gerenciar e resolver preocupações específicas do front-end com mais eficiência.
O novo frontend agora é o padrão para ComfyUI. No entanto, observe:
O frontend no repositório principal do ComfyUI é atualizado semanalmente.
Lançamentos diários estão disponíveis no repositório frontend separado.
Para usar a versão de front-end mais atualizada:
Para a versão diária mais recente, inicie o ComfyUI com este argumento de linha de comando:
--front-end-version Comfy-Org/ComfyUI_frontend@latest
Para uma versão específica, substitua latest pelo número da versão desejada:
--front-end-version Comfy-Org/[email protected]
Essa abordagem permite alternar facilmente entre o lançamento semanal estável e as atualizações diárias de última geração, ou até mesmo versões específicas para fins de teste.
Se precisar usar o frontend legado por qualquer motivo, você pode acessá-lo usando o seguinte argumento de linha de comando:
--front-end-version Comfy-Org/ComfyUI_legacy_frontend@latest
Isso usará um instantâneo do front-end legado preservado no repositório ComfyUI Legacy Frontend.
Veja esta página para algumas recomendações