ComfyLab
Los 10 Nodos Esenciales de ComfyUI (Guía Técnica + Referencia)

Los 10 Nodos Esenciales de ComfyUI (Guía Técnica + Referencia)

4GB VRAM VRAM Principiante 8 min
Savien

La diferencia entre un usuario que copia workflows y uno que los construye está en entender qué hace cada nodo. Cuando sabes qué entra y qué sale de cada bloque, puedes resolver errores, combinar nodos de formas nuevas y adaptar cualquier workflow que encuentres online.

Esta guía cubre los 10 nodos que aparecen en casi todos los workflows de ComfyUI. Si aún no lo tienes instalado, empieza por la guía de instalación en Windows.

🏗️ Workflow de Referencia: Nodos Esenciales

🧠 VRAM: 4GB - 8GB 📡 MODEL: SD 1.5 / SDXL

🏗️ Cómo leer los cables de colores

Antes de los nodos, el sistema de colores. Cada tipo de dato en ComfyUI tiene su color de cable:

ColorTipoDescripción
MoradoMODELEl modelo de difusión cargado
AmarilloCLIPEl encoder de texto
RojoVAEEl encoder/decoder de imágenes
NaranjaCONDITIONINGTexto procesado (prompt codificado)
RosaLATENTImagen en espacio latente (invisible)
AzulIMAGEImagen RGB visible
VerdeSTRINGTexto en bruto

Si intentas conectar dos cables de colores distintos, ComfyUI no lo permite. Cuando un workflow da error de conexión, busca el mismatch de colores.


🏗️ 1. CheckpointLoaderSimple

Qué hace: Carga el modelo principal (el archivo .safetensors de tu checkpoint) y lo descompone en tres componentes que el resto del workflow necesita.

Salidas:

  • MODEL (morado) → va al KSampler
  • CLIP (amarillo) → va a los CLIPTextEncode
  • VAE (rojo) → va al VAEDecode

Parámetro clave: ckpt_name — el selector desplegable que muestra todos los archivos en models/checkpoints/. Si acabas de añadir un modelo y no aparece, recarga la página.

Tip: Es el primer nodo de cualquier workflow. Sin él, nada funciona. Puedes tener varios CheckpointLoaders en el mismo workflow para comparar modelos en paralelo.


🏗️ 2. CLIPTextEncode

Qué hace: Convierte tu prompt de texto en un vector de embeddings que el modelo entiende. Es la traducción entre lenguaje humano y lenguaje de difusión.

Entradas:

  • CLIP (amarillo) ← viene del CheckpointLoaderSimple
  • text (campo de texto) ← tu prompt

Salida:

  • CONDITIONING (naranja) → va al KSampler

Siempre necesitas dos: uno para el prompt positivo (lo que quieres) y otro para el negativo (lo que quieres evitar). Ambos conectan a entradas distintas del KSampler.

Tip: Las palabras al inicio del prompt tienen más peso. Pon lo más importante primero. Los paréntesis amplifican el peso: (cinematic lighting:1.3) le da un 30% más de énfasis a esa frase.


🏗️ 3. EmptyLatentImage

Qué hace: Crea un “lienzo en blanco” en espacio latente. Define el tamaño de la imagen que vas a generar antes de que ocurra la difusión.

Salida:

  • LATENT (rosa) → va al KSampler

Parámetros:

  • width / height — ancho y alto en píxeles
  • batch_size — cuántas imágenes generar a la vez (1 por defecto)

Resoluciones óptimas para SDXL:

AspectoResolución
Cuadrado1024 × 1024
Horizontal1152 × 896
Vertical896 × 1152
Panorámico1344 × 768

No uses resoluciones arbitrarias con SDXL — el modelo fue entrenado con proporciones específicas y resoluciones fuera de ellas producen artefactos.


🏗️ 4. KSampler

Qué hace: Es el núcleo del workflow. Toma el modelo, los prompts codificados y el latente vacío, y genera la imagen eliminando ruido paso a paso.

Entradas:

  • model (morado) ← del CheckpointLoaderSimple
  • positive (naranja) ← prompt positivo codificado
  • negative (naranja) ← prompt negativo codificado
  • latent_image (rosa) ← del EmptyLatentImage

Salida:

  • LATENT (rosa) → va al VAEDecode

Parámetros clave:

ParámetroValor recomendadoQué controla
seed-1 (aleatorio)Patrón de ruido inicial
steps20–30Iteraciones de denoising
cfg6–8 (SDXL), 1–3.5 (Flux)Fidelidad al prompt
sampler_namedpmpp_2mAlgoritmo de denoising
schedulerkarrasRitmo de eliminación de ruido
denoise1.01.0 = desde cero, <1.0 = img2img

Tip: Para image-to-image (modificar una imagen existente en lugar de generar desde cero), sustituye el EmptyLatentImage por un VAEEncode conectado a un LoadImage, y baja el denoise a 0.5–0.8.


🏗️ 5. VAEDecode

Qué hace: Convierte el resultado del KSampler (un tensor matemático en espacio latente) en píxeles RGB visibles. Sin este nodo, la imagen generada es invisible.

Entradas:

  • samples (rosa) ← del KSampler
  • vae (rojo) ← del CheckpointLoaderSimple

Salida:

  • IMAGE (azul) → va al SaveImage o PreviewImage

Tip: Los modelos incluyen un VAE integrado, pero puedes usar uno externo de mayor calidad conectando un VAELoader independiente. Para SDXL, el VAE oficial de Stability AI (sdxl_vae.safetensors) produce colores más precisos que el que viene con algunos checkpoints de Civitai.


🏗️ 6. SaveImage

Qué hace: Guarda la imagen generada en disco, en ComfyUI/output/.

Entrada:

  • images (azul) ← del VAEDecode

Parámetro: filename_prefix — prefijo del nombre de archivo. Por defecto ComfyUI. El archivo final incluye un número de secuencia automático: ComfyUI_00001_.png.

PreviewImage vs SaveImage: PreviewImage muestra la imagen en el lienzo sin guardarla. Útil para pruebas rápidas. SaveImage siempre guarda. En producción, usa SaveImage.


🏗️ 7. LoadImage

Qué hace: Carga una imagen desde disco para usarla como entrada en workflows de image-to-image, ControlNet o IPAdapter.

Salidas:

  • IMAGE (azul) → para usarla visualmente
  • MASK (gris) → extrae el canal alfa si la imagen tiene transparencia

Tip: Puedes arrastrar y soltar imágenes directamente sobre el nodo LoadImage en la interfaz. También puedes usar imágenes desde el portapapeles haciendo clic derecho sobre el nodo.


🏗️ 8. LoraLoader

Qué hace: Aplica un LoRA (Low-Rank Adaptation) al modelo base. Los LoRAs son ajustes finos que modifican el estilo, los personajes o la forma en que el modelo responde a ciertos prompts, sin reemplazar el modelo completo.

Entradas:

  • model (morado) ← del CheckpointLoaderSimple
  • clip (amarillo) ← del CheckpointLoaderSimple

Salidas:

  • MODEL (morado) → al KSampler (modelo modificado)
  • CLIP (amarillo) → a los CLIPTextEncode (encoder modificado)

Parámetros:

  • lora_name — el archivo .safetensors en models/loras/
  • strength_model — cuánto afecta al modelo (0.0–1.0, típico: 0.7–1.0)
  • strength_clip — cuánto afecta al encoder de texto (típico: 0.7–1.0)

Puedes encadenar varios LoraLoaders: la salida MODEL del primero entra como MODEL al segundo. Así combinas múltiples LoRAs, aunque reducir strength de cada uno evita que se anulen entre sí.


🏗️ 9. ControlNetLoader + ControlNetApply

Qué hacen: ControlNet añade control estructural a la generación. Puedes forzar que la imagen siga la pose de una figura, la profundidad de una escena o el contorno de un boceto.

ControlNetLoader:

  • Carga el modelo ControlNet (van en models/controlnet/)
  • Salida: CONTROL_NET

ControlNetApply:

  • Entradas: CONTROL_NET, IMAGE (imagen de referencia), CONDITIONING
  • Salida: CONDITIONING modificado → va al KSampler como positive

Tipos de ControlNet más usados:

  • Canny — sigue los bordes de la imagen de referencia
  • Depth — respeta la profundidad (objetos cercanos/lejanos)
  • OpenPose — replica poses de cuerpo humano
  • Lineart — sigue líneas de bocetos o ilustraciones

Tip: Necesitas preprocesar la imagen de referencia antes de pasarla al ControlNet. El nodo AIO Aux Preprocessor del pack controlnet_aux hace eso automáticamente — instálalo desde ComfyUI Manager.


🏗️ 10. VAEEncode

Qué hace: El opuesto de VAEDecode. Convierte una imagen RGB en espacio latente para usarla como punto de partida en workflows img2img o inpainting.

Entradas:

  • pixels (azul) ← del LoadImage
  • vae (rojo) ← del CheckpointLoaderSimple

Salida:

  • LATENT (rosa) → al KSampler (en lugar del EmptyLatentImage)

Cuándo usarlo: Cuando quieres modificar una imagen existente en vez de generar desde cero. El KSampler parte del latente codificado de tu imagen y aplica el prompt encima, con un denoise menor a 1.0 para preservar la estructura original.


🏗️ El workflow básico ensamblado

Los primeros seis nodos se conectan siempre en este orden:

CheckpointLoaderSimple
  ├─ MODEL ──────────────────────────→ KSampler (model)
  ├─ CLIP ──→ CLIPTextEncode(+) ────→ KSampler (positive)
  ├─ CLIP ──→ CLIPTextEncode(-) ────→ KSampler (negative)
  └─ VAE ─────────────────────────────────────────┐

EmptyLatentImage ──────────────────→ KSampler (latent_image)

                              KSampler (LATENT) ──→ VAEDecode (samples) ←── VAE

                                               VAEDecode (IMAGE) ──→ SaveImage

A partir de aquí, todo lo avanzado (LoRAs, ControlNet, IPAdapter) se inserta en este flujo base sin romperlo.


Siguientes pasos: si quieres poner en práctica estos nodos, la guía de generación de imágenes explica los ajustes exactos del KSampler con SDXL y Flux. Para profundizar en prompts y ponderación, la guía de prompts de ComfyUI cubre la sintaxis (palabra:1.2) y el CFG Scale. Para transformar imágenes existentes, la guía de img2img cubre el parámetro denoise paso a paso.

Para usuarios avanzados, la arquitectura de nodos avanzada permite un control total.

Para optimizar tu flujo de trabajo, descubre los 10 mejores nodos personalizados de 2026.

Si buscas una base más sólida antes de continuar, los fundamentos de arquitectura de nodos explican el modelo mental detrás de cada conexión. Para formación estructurada de cero a experto, el curso completo de ComfyUI 2026 es el recurso más completo disponible en español.

Preguntas frecuentes

¿Cuál es el nodo más importante de ComfyUI?
El KSampler es el núcleo de cualquier workflow — sin él no hay generación. Los demás nodos (CheckpointLoaderSimple, CLIPTextEncode, VAEDecode) existen para alimentarlo con el modelo, los prompts y el espacio latente que necesita.
¿Por qué no puedo conectar dos cables de distinto color en ComfyUI?
ComfyUI usa un sistema de tipos estricto: cada color representa un tipo de dato diferente (MODEL, CLIP, LATENT, IMAGE...). Solo puedes conectar cables del mismo tipo. Si intentas conectar tipos incompatibles, la conexión se rechaza automáticamente.
¿Puedo usar varios LoRAs a la vez en ComfyUI?
Sí. Encadena varios nodos LoraLoader en serie: la salida MODEL del primero entra como MODEL al segundo. Reduce el strength de cada uno a 0.6-0.8 para que no se anulen entre sí. Puedes combinar tantos LoRAs como permita tu VRAM.
¿Qué es el denoise en el KSampler y cuándo cambiarlo?
El denoise controla cuánto ruido se aplica al inicio. Con 1.0 generas desde cero (text-to-image). Con 0.5-0.8 partes de una imagen existente y la modificas (image-to-image). Cuanto más bajo el valor, más estructura de la imagen original se conserva.
Compartir X LinkedIn

También te puede interesar