ArtificialGuyBR

Home / Blog / ComfyUI

ComfyUI para usuarios A1111: grafo, nodos, atajos, hábitos

Guía de grafo de nodos para migrantes de A1111: lee el grafo, cinco nodos iniciales, atajos de teclado y hábitos que evitan flujos rotos.

8 sources cited ComfyUI

ComfyUI para usuarios A1111: grafo, nodos, atajos, hábitos

TL;DR

  • ComfyUI es un grafo de nodos — cada caja es una operación discreta (cargar, codificar, muestrear, decodificar) con cables tipados (MODEL, CLIP, VAE, CONDITIONING, LATENT, IMAGE). Conceptos core
  • Comienza con cinco nodos: Load Checkpoint → CLIP Text Encode (×2) → KSampler → VAE Decode → Save Image. Primera generación
  • Aprende cuatro atajos: Ctrl+Enter (a la cola), Ctrl+B (bypass), R (actualizar), Espacio+arrastrar (desplazar). README
  • Adopta dos hábitos: respalda los flujos antes de editar y usa --disable-all-custom-nodes para aislar problemas. Troubleshooting docs

¿Por qué ComfyUI parece ajeno tras Automatic1111?

Automatic1111 presenta pestañas y deslizadores; ComfyUI presenta un grafo acíclico dirigido — cajas conectadas por cables donde cada nodo realiza una operación. Los datos fluyen de izquierda a derecha mediante tensores tipados.

Si has usado un editor de nodos en Nuke, Blender o Unreal, piensa en ello como un entorno de programación visual de bloques reutilizables.

Esta arquitectura significa:

  • Ves todo el pipeline — sin txt2img/pestañas/extras.
  • La reutilización está integrada — cualquier subgrafo se guarda, comparte o elimina.
  • Ejecución perezosa — solo vuelve a ejecutar los nodos cuyas entradas cambiaron.

Core concepts: "a collection of program objects called nodes that are connected to each other, forming a network", where "only parts of the graph that change from each execution to the next will be executed". Source


Leyendo el grafo: tipos de datos y dirección

Cada cable transporta un tensor tipado (pasa el cursor para ver). Los seis tipos que vas a encontrar:

Tipo¿Qué transporta?Producido porConsumido por
MODELRed de denoising (UNet)Load CheckpointKSampler, ControlNet Apply
CLIPCodificador de textoLoad CheckpointCLIP Text Encode
VAEConversor LATENT↔píxelLoad CheckpointVAE Decode, VAE Encode
CONDITIONINGEmbeddings de promptCLIP Text EncodeKSampler
LATENTTensor de imagen comprimidoEmpty Latent Image, KSamplerKSampler, VAE Decode
IMAGETensor píxel (H×W×3)VAE Decode, Load ImageSave Image, Preview Image

Direction rule: los datos fluyen output → input. Un cable rojo indica incompatibilidad de tipo — pasa el cursor para ver el esperado vs. el actual. Source


Los cinco nodos para text-to-image

Olvida la biblioteca de nodos. Arrastra estas al lienzo en orden:

  1. Load Checkpoint (CheckpointLoaderSimple) — selecciona el archivo .safetensors. Salida: MODEL, CLIP, VAE. CheckpointLoaderSimple docs
  2. CLIP Text Encode (×2) — prompts positivo y negativo. Recibe CLIP, salida CONDITIONING.
  3. KSampler — el nodo de denoising. Recibe MODEL, ambos CONDITIONINGs, un LATENT (de Empty Latent Image), más seed, steps, cfg, sampler_name, scheduler, denoise. Salida: LATENT con denoising aplicado.
  4. VAE Decode — convierte LATENT → IMAGE usando la VAE del paso 1.
  5. Save Image — escribe el IMAGE en disco y muestra un preview. Primera generación

Cables de izquierda a derecha: Checkpoint → (CLIP a ambas Text Encode) → (MODEL + ambos CONDITIONING + LATENT al KSampler) → (LATENT del KSampler + VAE a VAE Decode) → (IMAGE a Save Image).

Cheat sheet de parámetros

ParámetroNodoValor inicial¿Por qué importa?
ckpt_nameLoad Checkpointv1-5-pruned-emaonly-fp16.safetensorsArquitectura y pesos del modelo
cfgKSampler8.0Adherencia al prompt; >10 suele quemar
sampler_nameKSamplereuler_ancestralRápido; prueba dpmpp_2m para calidad
schedulerKSamplernormalkarras puede afilar los detalles
denoiseKSampler1.01.0 = txt2img; <1.0 = img2img

Source: KSampler embedded docs, tutorial de primera generación.


Atajos de teclado para aprender el primer día

ComfyUI incluye un juego completo de atajos (documentado en el README de GitHub). Los que ahorran más fricción a los migrantes de A1111:

AcciónAtajo¿Cuándo lo usas?
Colar promptCtrl + EnterReemplaza al gran botón naranja de Generar
Cancelar generaciónCtrl + Alt + EnterDetener un trabajo descontrolado
Deshacer / rehacerCtrl + Z / Ctrl + YLa edición de grafo es destructiva; el deshacer te salva
Saltar nodos seleccionadosCtrl + BDesactiva ControlNet/IP-Adapter sin borrar
Agrupar nodosCtrl + GColapsa clusters visuales
Desplazar lienzoEspacio + arrastrarEvita arrastrar cables por error
Ajustar vista. (punto)Enmarca todo el grafo al instante
Actualizar grafoRRecarga tras añadir checkpoints nuevos

Tres ajustes de UI que cambiar ahora:

  1. Configuración → Comfy → Menú → Usar menú nuevo: ACTIVO — barra lateral con Recursos, Nodos, Modelos, Flujos, Plantillas. Leer más
  2. Configuración → Comfy → Idioma — admite EN, ZH, RU, FR, JA, KO.

Hábitos que previenen flujos rotos

1. Respalda antes de reconectar

Arrastra un archivo .json del flujo sobre el lienzo para cargarlo. Antes de mover nodos, pulsa Ctrl+S. El archivo original se queda intacto; estás editando la copia viva del navegador.

Source: "It's easy to break stuff and not necessarily easy to fix." — Civitai artículo 9471

2. Usa la herramienta mano para navegar

Barra inferior derecha: pulsa el ícono de flecha para alternar modo mano. En modo mano, desplazas sin seleccionar o mover nodos. El modo flecha te permite reconectar cables — pero un arrastre descuidado mueve un nodo y desordena cables. Civitai 9471

3. Aísla fallos de nodos personalizados con búsqueda binaria

Cuando un flujo lanza cajas rojas o "ModuleNotFoundError":

  1. Arranca con python main.py --disable-all-custom-nodes.
  2. Si funciona, reactiva la mitad de tus nodos personalizados, reinicia y prueba.
  3. Repite hasta localizar el culpable.

Comfy CLI automatiza esto: comfy-cli node bisect start → marca bueno/malo → comfy-cli node bisect reset. Source

4. Lee las cajas rojas de izquierda a derecha

Busca ese archivo en tu disco (Windows: Everything de Voidtools es excelente). Colócalo en la carpeta que referencia el menú, pulsa R para actualizar y selecciónalo.

5. Prefiere CheckpointLoaderSimple

El viejo CheckpointLoader pide la configuración y el checkpoint por separado. CheckpointLoaderSimple necesita solo el nombre del checkpoint y divide MODEL/CLIP/VAE automáticamente. El nodo legacy está deprecado. CheckpointLoaderSimple docs

6. Salta, no borres

¿Necesitas comparar con/sin ControlNet? Selecciona el nodo y pulsa Ctrl+B. Se atenúa y los cables pasan. Pulsa Ctrl+B de nuevo para volver a habilitar. Borrar obliga a reconectar cables. Source: "Bypass selected nodes (acts like the node was removed from the graph and the wires reconnected through)."


Errores comunes y soluciones

SíntomaCausa probableSolución
ModuleNotFoundError: No module named 'xyz'Dependencia del nodo personalizado faltante o entorno Python incorrectoEjecuta pip install -r requirements.txt dentro de la carpeta del nodo, o usa Manager → Install Missing Nodes
Caja roja en Load Checkpoint, desplegable vacíoEl checkpoint no está en models/checkpoints/Mueve el .safetensors ahí y pulsa R
KSampler corre pero Save Image no muestra nadaCable faltante hacia VAE Decode o VAE sin conectarConecta KSampler → VAE Decode → Save Image; conecta la VAE desde Load Checkpoint
PyTorch no compilado con CUDAInstalación solo-CPU de PyTorchReinstala: pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu130
Nodos faltantes (cajas grises "Unknown")Nodos personalizados no instaladosManager → Install Missing Nodes; o clona el repositorio Git en custom_nodes/
Imagen generada es un color sólidodenoise muy bajo o cfg extremoPon denoise=1.0 para txt2img; mantén cfg entre 5–9

FAQ

¿Cuáles son los nodos más importantes de ComfyUI para principiantes?

Load Checkpoint, CLIP Text Encode (positivo + negativo), KSampler, VAE Decode, Save Image. Esos cinco forman cada pipeline de text-to-image. Todo lo demás — ControlNet, IP-Adapter, upscalers — se conecta a esta espina. Leer más

¿Cómo cargas un modelo en ComfyUI sin conocer el nombre de archivo?

Suelta un .safetensors en ComfyUI/models/checkpoints/ (o una subcarpeta). Pulsa R en el lienzo. El menú desplegable de Load Checkpoint se actualiza y muestra el nuevo archivo.

¿Cuál es la diferencia entre los nodos LATENT e IMAGE?

Empty Latent Image crea un tensor comprimido en blanco que KSampler somete a denoising. VAE Decode convierte ese LATENT en un IMAGE (píxeles). Save Image lo escribe en disco. Nunca ves píxeles hasta después de VAE Decode.

¿Cómo paso de ControlNet sin borrar el nodo?

Selecciona el nodo y pulsa Ctrl+B. Se grisaha y los cables pasan. Pulsa Ctrl+B de nuevo para volver a habilitar.

¿Qué hace el parámetro 'seed'?

Seed inicializa el tensor de ruido aleatorio. Misma seed + mismas entradas = salida idéntica. control_after_generate ofrece random, increment/decrement y fixed.

¿Por qué mi flujo devuelve resultados en caché en lugar de regenerar?

ComfyUI solo vuelve a ejecutar nodos cambiados. Si ninguna entrada varía, devuelve la salida en caché. Cambia un prompt, seed o parámetro para forzar la reejecución.