SSD Nodes Learn Hosting plans →
Guias Matt ConnorPor Matt Connor · Atualizado 2026-08-07

Gerador de imagens IA autoalojado: hardware real

Veja o hardware necessário para rodar Stable Diffusion: CPU gera SD 1.5 em 1 a 2 minutos, SDXL leva 10 a 20 minutos e o modelo ocupa 6,94 GB.

O que um gerador de imagens de IA autoalojado realmente precisa

Um gerador de imagens de IA autoalojado é uma aplicação web e um ficheiro de modelo. A aplicação é o ComfyUI e funciona em qualquer máquina Linux. O modelo é o que determina o hardware necessário. Um checkpoint da classe SDXL é um único ficheiro de 6.94 GB e precisa de ficar na memória da GPU. Esse facto define todo o orçamento, por isso leia a comparação de hardware abaixo antes de alugar qualquer recurso.

O resumo honesto é este: um VPS apenas com CPU consegue instalar e servir o software, além de gerar imagens em 512x512 com um modelo Stable Diffusion 1.5 mais antigo em um ou dois minutos por imagem. A mesma máquina a executar SDXL em 1024x1024 demora dez a vinte minutos por imagem. Isso não significa que a configuração esteja avariada. É uma questão de capacidade de processamento, e este guia explica-a.

O tamanho do modelo determina a máquina

A geração de imagens executa um ciclo de redução de ruído. Uma renderização de 30 passos aplica o modelo completo à imagem 30 vezes, e cada passo lê todos os pesos. O SDXL em precisão intermédia ocupa cerca de 6.9 GB de pesos, por isso uma renderização de 30 passos transfere aproximadamente 200 GB pela memória antes de a imagem ficar disponível.

Uma GPU com 24 GB de memória de vídeo (VRAM, a memória soldada junto ao chip gráfico) lê a centenas de gigabytes por segundo e mantém os 6.9 GB na memória ao mesmo tempo. Uma VPS com CPU lê a RAM do sistema a dezenas de gigabytes por segundo e não tem hardware matricial para as convoluções, por isso o mesmo ciclo demora uma a duas ordens de grandeza mais tempo. Este é o mesmo argumento relacionado com a largura de banda da memória que determina o desempenho dos modelos de texto e vale a pena lê-lo juntamente com quando uma VPS com GPU compensa realmente o custo.

A geração de imagens difere da geração de texto num aspeto importante. Um modelo de chat transmite tokens, por isso uma máquina lenta continua a ser utilizável: as palavras aparecem enquanto lê. Uma imagem só aparece quando o último passo termina. Se for lenta, fica a olhar para uma barra de progresso.

A escala de hardware, com números reais

O bloco abaixo apresenta valores típicos para uma imagem SDXL em 1024x1024, com 30 passos e o sampler Euler, em julho de 2026. Considere-os como ordens de grandeza. O sampler, o número de passos e a resolução alteram esses valores.

ChartOne SDXL image, 1024x1024, 30 steps (typical, July 2026)
The data behind this chart
[
  {
    "label": "8 vCPU VPS, no GPU",
    "seconds_per_image": 780
  },
  {
    "label": "8GB VRAM GPU",
    "seconds_per_image": 32
  },
  {
    "label": "12GB VRAM GPU",
    "seconds_per_image": 18
  },
  {
    "label": "24GB VRAM GPU",
    "seconds_per_image": 9
  }
]

A linha da CPU indica 780 segundos, ou cerca de treze minutos. A placa de 24 GB leva 9 segundos. Essa é a diferença de desempenho que está a comprar.

Leia a escala desta forma. Abaixo de 8 GB de VRAM, o SDXL continua a funcionar porque o ComfyUI descarrega automaticamente camadas para a RAM do sistema e consegue utilizar uma placa com apenas 1 GB. O descarregamento acrescenta tempo em cada passo, por isso uma placa de 6 GB demora mais perto de um minuto por imagem do que de trinta segundos. Com 8 GB, o modelo base cabe na memória e a renderização decorre sem limitações relevantes. Com 12 GB, pode manter um ou dois ControlNet junto do checkpoint sem descarregamento. Com 24 GB, pode executar o SDXL, o refiner e o upscaling no mesmo workflow. Também pode começar a treinar adaptadores LoRA, o que requer muito mais memória do que a geração.

O que um VPS com CPU pode e não pode fazer

Ele pode fazer mais do que se espera e menos do que o marketing sugere. Seja específico quanto a esse limite.

Um VPS com CPU pode instalar o ComfyUI, disponibilizar a interface web, armazenar a sua biblioteca de modelos, executar a fila e gerar imagens sem qualquer GPU. Com Stable Diffusion 1.5 a 512x512 e 20 passos, espere cerca de 60 a 150 segundos por imagem em 8 vCPUs modernas com 16 GB de RAM. Para uma tarefa em lote executada durante a noite ou para um endpoint de imagens de baixo volume atrás de uma fila, isso é perfeitamente aceitável.

Um VPS com CPU não oferece uma experiência de trabalho interativa. Iterar sobre prompts significa gerar 20 imagens numa hora. A 13 minutos por imagem, consegue gerar 4. Também não permite treinar modelos. O fine-tuning de LoRA em CPU demora dias, não horas. Considere essa opção indisponível.

A regra de memória para execução apenas em CPU é diferente da regra para GPU. Os pesos são carregados na RAM do sistema. Por isso, precisa do tamanho do modelo mais o espaço de trabalho: cerca de 16 GB de RAM para SDXL e cerca de 8 GB para SD 1.5. Uma máquina com 4 GB inicia o ComfyUI, mas depois é terminada pelo out-of-memory killer durante a primeira geração. O processo desaparece com Killed em dmesg, sem qualquer traceback do Python.

Instalar o ComfyUI numa máquina com GPU

Estes são os comandos do projeto original. Comece por uma instalação limpa do Ubuntu 24.04 com o driver NVIDIA já instalado. Confirme primeiro o driver, porque, sem esta verificação, todas as falhas seguintes parecem iguais.

nvidia-smi

O comando deve mostrar uma tabela com a sua placa e uma versão do CUDA. command not found ou NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver significa que o driver está ausente ou que o módulo do kernel não foi carregado depois de uma atualização. Corrija isso antes de continuar, porque o ComfyUI pode recuar silenciosamente para a CPU e você culpará o software.

sudo apt update
sudo apt install -y git python3-venv python3-pip wget
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI
python3 -m venv venv
. venv/bin/activate
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu130
pip install -r requirements.txt

O ambiente virtual não é uma recomendação opcional. O PyTorch instala uma árvore extensa de dependências. Instalá-lo globalmente num servidor que executa outros serviços é uma forma de quebrar esses serviços. Confirme que o PyTorch consegue detetar a placa antes de prosseguir.

python -c "import torch; print(torch.cuda.is_available(), torch.cuda.get_device_name(0))"

True seguido do nome da sua placa significa que a pilha está a funcionar. False significa que o wheel instalado não é compatível com o driver, normalmente porque já existia em cache um wheel do torch apenas para CPU. Reinstale usando o URL do índice acima.

Obtenha um modelo e planeie o armazenamento

O ComfyUI não inclui pesos. Os checkpoints ficam em models/checkpoints, os ficheiros VAE em models/vae e os adaptadores LoRA em models/loras.

cd ~/ComfyUI/models/checkpoints
wget https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors

Prefira sempre .safetensors a .ckpt. Um ficheiro .ckpt é um objeto Python serializado com pickle, e carregá-lo executa código de quem o criou. O formato safetensors contém apenas tensores, por isso um ficheiro malicioso não consegue executar código.

O armazenamento é um custo que muitas pessoas esquecem. Um checkpoint base SDXL ocupa 6.94 GB. O refiner ocupa mais 6 GB. Um único modelo ControlNet ocupa 1.4 a 2.5 GB, um upscaler ocupa 60 a 350 MB e um LoRA ocupa 20 a 400 MB. Quem utiliza esta ferramenta com frequência descarrega um segundo e um terceiro modelo base na primeira semana. Reserve 100 GB de armazenamento para uma instalação funcional e monitorize também o diretório de saída: os ficheiros PNG de 1024x1024 ocupam 1 a 2 MB cada, e um batch não supervisionado pode encher silenciosamente um disco pequeno. Coloque models/ e output/ num volume que possa aumentar e faça cópias de segurança dos ficheiros JSON dos workflows com algo como cópias de segurança incrementais encriptadas para armazenamento de objetos. Os pesos podem ser descarregados novamente. Os workflows que ajustou não.

Execute e aceda com segurança

cd ~/ComfyUI
. venv/bin/activate
python main.py --listen 127.0.0.1 --port 8188

O ComfyUI fica disponível na porta 8188. Num servidor apenas com CPU, adicione --cpu. Esta opção força a utilização da CPU e evita a falha causada pela ausência de um dispositivo CUDA.

Associe o serviço a 127.0.0.1, não a 0.0.0.0. O ComfyUI não tem ecrã de início de sessão nem contas de utilizador. Qualquer pessoa que consiga aceder à porta pode colocar tarefas na fila, ler todas as imagens que gerou e instalar custom nodes. Isso permite executar código arbitrário no servidor. Em vez disso, aceda ao serviço através de um túnel SSH a partir do seu portátil.

ssh -N -L 8188:127.0.0.1:8188 you@your-server

Depois, abra http://127.0.0.1:8188 localmente. Se precisar de acesso real para vários utilizadores, coloque um reverse proxy com autenticação à frente do serviço e mantenha a aplicação associada a localhost. O mesmo princípio aplica-se a qualquer serviço self-hosted sem autenticação e é o padrão habitual em implementações do Docker Compose num VPS.

Mantenha-o em execução com systemd

Uma fila de renderização que termina quando a sua sessão SSH é fechada não é um serviço. Crie /etc/systemd/system/comfyui.service.

[Unit]
Description=ComfyUI
After=network-online.target

[Service]
User=comfy
WorkingDirectory=/home/comfy/ComfyUI
ExecStart=/home/comfy/ComfyUI/venv/bin/python main.py --listen 127.0.0.1 --port 8188
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now comfyui
systemctl status comfyui

active (running) e uma linha de log com To see the GUI go to: http://127.0.0.1:8188 indicam que o serviço está em execução. Observe que ExecStart especifica diretamente o interpretador dentro do ambiente virtual, porque o systemd não executa o seu perfil de shell e activate nunca acontece.

A recomendação prática por orçamento

Se quiser experimentar a geração de imagens e o custo for mais importante do que a velocidade, escolha um VPS com CPU e 16 GB de RAM, execute SD 1.5 a 512x512 e aceite esperar um ou dois minutos por imagem. Este é o ponto de entrada realista e custa uma fração de qualquer opção com GPU. Também é o local certo para alojar a biblioteca de modelos e os workflows enquanto decide.

Se itera diariamente nos prompts, alugue por hora, numa cloud de GPU, uma GPU com pelo menos 12 GB de VRAM e desligue-a quando parar. A geração de imagens é uma carga de trabalho intermitente, e deixar uma GPU inativa faturada mensalmente é a forma mais comum de gastar demasiado neste caso. Mantenha os checkpoints num armazenamento de blocos económico e monte-os.

Se servir outras pessoas ou treinar adaptadores LoRA, precisará de 24 GB de VRAM e de uma máquina que permaneça ligada. Nessa altura, a mesma máquina normalmente também se justifica para executar um modelo de linguagem local, que é a configuração descrita em alojar autonomamente um LLM com Ollama.

Seja qual for o nível escolhido, meça a sua própria máquina antes de confiar em qualquer valor publicado. Coloque o mesmo prompt na fila cinco vezes e leia os segundos por iteração que o ComfyUI apresenta na consola. Esse número indica a sua posição real na escala.

FAQ

Posso executar o Stable Diffusion sem uma GPU?

Sim. O ComfyUI funciona com python main.py --cpu e gera imagens reais sem uma placa gráfica instalada. Conte com cerca de 60 a 150 segundos por imagem para o Stable Diffusion 1.5 a 512x512, e com dez a vinte minutos para o SDXL a 1024x1024, em 8 vCPUs modernas. Isto é adequado para lotes executados durante a noite e endpoints de baixo volume. Não é adequado para iterar prompts, e o treino está completamente fora de alcance.

De quanta VRAM preciso para o SDXL?

8 GB executam o SDXL confortavelmente a 1024x1024. Abaixo disso, o ComfyUI transfere automaticamente camadas para a RAM do sistema e continua a funcionar, até cerca de 1 GB de VRAM, mas cada etapa transferida aumenta o tempo de execução. 12 GB permitem manter um ControlNet juntamente com o checkpoint, e 24 GB suportam o modelo base, o refiner e o upscaling no mesmo workflow. Esta é também a capacidade mínima prática para treinar adaptadores LoRA.

De quanto espaço em disco precisam os modelos?

O checkpoint base do SDXL ocupa 6.94 GB sozinho, e o refiner acrescenta cerca de 6 GB. Os modelos ControlNet ocupam 1.4 a 2.5 GB cada, os adaptadores LoRA ocupam 20 a 400 MB, e os upscalers ocupam até 350 MB. Reserve 100 GB para uma instalação funcional com alguns modelos base. Monitorize o diretório de saída separadamente, porque os ficheiros PNG a 1024x1024 ocupam 1 a 2 MB cada.

É seguro expor o ComfyUI na Internet pública?

Não. O ComfyUI não tem qualquer tipo de autenticação, e o sistema de nós personalizados instala e executa código Python a partir da interface. Por isso, uma porta aberta permite a execução remota de código no servidor. Faça o bind a 127.0.0.1, aceda através de um túnel SSH com ssh -N -L 8188:127.0.0.1:8188 you@your-server e coloque um reverse proxy com autenticação à frente se mais de uma pessoa precisar de acesso.

Porque é que o meu render foi terminado sem apresentar uma mensagem de erro?

O desaparecimento do processo com Killed em dmesg, sem traceback do Python, indica o mecanismo do Linux que termina processos por falta de memória, e não um erro do ComfyUI. Num sistema apenas com CPU, os pesos ficam na RAM do sistema. Por isso, o SDXL precisa de cerca de 16 GB e o SD 1.5 de cerca de 8 GB, além do espaço de trabalho. Adicione RAM, adicione swap ou mude para um modelo mais pequeno e uma resolução inferior.