Logotipo de VRAMfarm VRAMfarm
ES
Registrarse

11 de noviembre de 2026 · Equipo de VRAMfarm

ComfyUI en una GPU alquilada: tus modelos, LoRA, nodos personalizados y el error 502

Grafo de nodos de ComfyUI abierto en el navegador junto a una terminal que descarga un LoRA: ComfyUI en una GPU alquilada

Pulsaste Abrir ComfyUI un minuto después del lanzamiento y te salió un error 502 o una página en blanco. No hay nada roto: en un servidor nuevo, ComfyUI primero se instala (unos 5 minutos en el primer lanzamiento) y después una app lista para usar descarga entre 7 y 70 GB de modelos en segundo plano. El panel te avisa cuando de verdad está listo; mientras tanto, un par de comandos en la terminal te dicen por dónde va.

App lista para usar o ComfyUI vacío

Las dos opciones son gratis; solo pagas el tiempo de GPU, desde 0,59 € la hora en una RTX 4090, y el tráfico de lo que descarga el servidor. La diferencia está en lo que se descarga por ti.

Opción al lanzar Qué se descarga solo Tamaño VRAM mínima
ComfyUI vacío ComfyUI y un checkpoint pequeño de SD 1.5 para probar ~2 GB 6–8 GB
SDXL SDXL base 1.0 ~7 GB 12 GB
Flux Flux.1 schnell, fp8 ~17 GB 16 GB
HiDream HiDream-O1 dev, fp8, con su codificador de texto ~18 GB 24 GB
Qwen-Image Qwen-Image, codificador de texto, VAE, LoRA de 4 pasos ~32 GB 24 GB
Qwen Image Edit Qwen-Image-Edit, codificador de texto, VAE, LoRA de 4 pasos ~33 GB 24 GB
Vídeo Wan 2.2 5B Wan 2.2 TI2V 5B, codificador de texto, VAE ~17 GB 24 GB
Vídeo Wan 2.2 14B Parejas de texto a vídeo e imagen a vídeo, LoRA de 4 pasos ~70 GB 48 GB

Elige una app lista para usar cuando tu modelo esté en la lista: los archivos acaban en las carpetas correctas y el workflow integrado correspondiente funciona a la primera. Elige el ComfyUI vacío cuando traigas tu propio montaje, por ejemplo un checkpoint de SD 1.5 o de Pony sacado de Civitai. Si tu checkpoint se basa en SDXL (Pony, Illustrious y la mayoría de los ajustes finos de SDXL), la app de SDXL también es un buen punto de partida, porque el VAE y el workflow base ya están ahí.

Para comparar tarjetas, consulta qué GPU elegir para Flux, SDXL y ComfyUI o la página de la plantilla de ComfyUI.

¿Cuándo está listo ComfyUI? Error 502, página en blanco y modelos que faltan

Un lanzamiento pasa por tres fases, y cada una tiene su síntoma si abres la página demasiado pronto.

  1. Arranca la máquina (normalmente 2–5 minutos). Se activan SSH y Jupyter. La dirección de ComfyUI todavía no responde.
  2. ComfyUI se instala y arranca (unos minutos más). La dirección devuelve 502 o una página en blanco hasta que el proceso de ComfyUI está escuchando.
  3. Se descargan los modelos, archivo a archivo. La interfaz ya funciona y los modelos van apareciendo en las listas a medida que llegan. Si ejecutas un workflow ahora, verás «missing model», «Value not in list» o una lista de problemas, porque el archivo aún no está. Wan 2.2 14B es el lento: unos 70 GB, hasta 10–15 minutos.

El panel muestra cuándo está lista la app y te envía una notificación, así que lo más sencillo es esperarla. Si prefieres comprobarlo tú, abre Jupyter → File → New → Terminal y ejecuta:

tail -n 20 /workspace/comfyui.log            # "To see the GUI go to: http://0.0.0.0:8188" significa que la interfaz está en marcha
find /workspace/ComfyUI/models -name "*.part"  # los archivos que aún se descargan terminan en .part
du -sh /workspace/ComfyUI/models              # compáralo con el tamaño de la app en la tabla de arriba
tail -n 30 /workspace/gf-install.log          # errores de instalación, si ComfyUI no llega a arrancar

Si el log termina con un error de Python en vez de con la línea «To see the GUI», ComfyUI no ha arrancado; envía a soporte las últimas líneas de los dos logs. Si el log muestra esa línea pero la página sigue dando 502, ComfyUI acaba de levantarse: espera un minuto y recarga.

Esperar cuesta dinero, así que conviene saber cuánto. La fase 1 es gratis: la facturación empieza cuando el servidor está listo, de modo que la instalación y la descarga de modelos de las fases 2 y 3 se facturan por minuto. Esperar 15 minutos por Wan 14B en una RTX A6000 cuesta unos 0,18 €, más el tráfico de 70 GB de modelos con la tarifa de la máquina.

Empieza con una plantilla de workflow integrada

En ComfyUI, abre Workflow → Browse Templates. Las plantillas están agrupadas por tarea: texto a imagen, edición de imagen, vídeo, escalado y más. Con una app lista para usar, la plantilla de ese modelo (Flux schnell, SDXL, Qwen-Image, Wan 2.2, etc.) usa exactamente los archivos que hemos descargado, así que puedes pulsar Run en cuanto termine la descarga.

Otras plantillas pueden necesitar modelos que no tienes. En ese caso ComfyUI muestra un diálogo con cada archivo que falta y la carpeta a la que pertenece. En la versión de navegador, el botón de descarga de ese diálogo guarda el archivo en tu ordenador, no en el servidor. Copia el enlace y descárgalo en el servidor, como se explica en la siguiente sección.

Los workflows que guardas en la barra lateral izquierda se almacenan en /workspace/ComfyUI/user/default/workflows, así que viajan con la carpeta guardada.

Añade tus propios checkpoints y LoRA

Todo vive en /workspace/ComfyUI/models/. La carpeta decide qué nodo puede ver el archivo:

Carpeta Qué va ahí Lo carga
checkpoints Archivos de modelo todo en uno (SD 1.5, SDXL, Pony) Load Checkpoint
diffusion_models Pesos del modelo sin codificadores (Flux dev, Wan, Qwen-Image) Load Diffusion Model
text_encoders Codificadores CLIP, T5, UMT5, Qwen-VL Load CLIP, DualCLIPLoader
vae Archivos VAE Load VAE
loras LoRA LoraLoader
controlnet Modelos de ControlNet Load ControlNet Model
upscale_models ESRGAN y escaladores parecidos Load Upscale Model
embeddings Textual inversions se usan en el prompt como embedding:name

Descarga directamente en el servidor desde la terminal de Jupyter. En Hugging Face, copia el enlace resolve del archivo, no el enlace blob: el enlace blob es una página web, y wget guardaría 50 KB de HTML con nombre .safetensors.

cd /workspace/ComfyUI/models/loras
wget -O my-style.safetensors "https://huggingface.co/<user>/<repo>/resolve/main/<file>.safetensors"

Para repositorios completos o modelos con acceso restringido, es más cómoda la herramienta de línea de comandos de Hugging Face:

pip install -U huggingface_hub
hf download <user>/<repo> <file>.safetensors --local-dir /workspace/ComfyUI/models/checkpoints
# modelos con acceso restringido (Flux dev y otros): primero acepta la licencia en la web y después
export HF_TOKEN=<your read token>

Los enlaces de Civitai suelen necesitar tu propio token de API al final de la URL (?token=...) y un nombre de archivo, porque la URL de descarga no lo lleva: wget -O model.safetensors "https://civitai.com/api/download/models/<id>?token=<token>".

Los archivos de tu portátil se suben con el botón de subida de Jupyter o con scp, usando el host y el puerto del comando SSH de Mis servidores (guía de la clave SSH). Con archivos de varios gigas, descargar desde el origen suele ser muchísimo más rápido que subirlos desde casa.

Cuando el archivo esté en su sitio, pulsa R en ComfyUI o recarga la página, y aparecerá en el desplegable del nodo. Las descargas cuentan como tráfico con la tarifa por GB que la máquina muestra antes del lanzamiento.

Nodos personalizados sin ComfyUI Manager preinstalado

En nuestros servidores no viene instalado ComfyUI Manager. Puedes añadirlo tú en un minuto, o saltártelo e instalar los nodos directamente. Las dos cosas se hacen en la terminal de Jupyter.

Instalar ComfyUI Manager:

cd /workspace/ComfyUI/custom_nodes
git clone https://github.com/Comfy-Org/ComfyUI-Manager comfyui-manager
pip install -r comfyui-manager/requirements.txt

O instalar un solo nodo directamente:

cd /workspace/ComfyUI/custom_nodes
git clone https://github.com/<author>/<node-repo>
pip install -r <node-repo>/requirements.txt   # si el repositorio lo incluye

ComfyUI solo carga los nodos nuevos al arrancar, así que reinícialo:

pkill -f "main.py --listen"
cd /workspace/ComfyUI && nohup python main.py --listen 0.0.0.0 --port 8188 > /workspace/comfyui.log 2>&1 &

Recarga la pestaña del navegador al cabo de unos 30 segundos. Con el Manager instalado tienes un botón Manager; su opción Install Missing Custom Nodes es la solución más rápida cuando el workflow de otra persona se abre con nodos en rojo. El Manager tiene niveles de seguridad y, como aquí ComfyUI escucha en la red, puede negarse a hacer algunas acciones más arriesgadas, como instalar desde una URL de Git cualquiera. Instalar desde su propia lista funciona; para todo lo demás, usa git clone como arriba.

Las versiones recientes de ComfyUI incluyen además un gestor integrado que se activa con una opción de arranque. Si ves manager_requirements.txt en /workspace/ComfyUI, puedes ejecutar pip install -r manager_requirements.txt y añadir --enable-manager al comando de arranque en lugar de clonar nada.

Un aviso: un nodo personalizado es código Python normal y corriente con acceso total al servidor, incluidos tus modelos y resultados. Instala nodos de repositorios de confianza y, mejor, de los conocidos y con actividad reciente.

Conserva modelos, LoRA y nodos entre sesiones

El disco del servidor se borra al detenerlo. Para conservar tu trabajo, usa Guardar y detener en Mis servidores. Así se guarda /workspace: tus propios checkpoints y LoRA, custom_nodes, los workflows guardados y la carpeta output. En el siguiente lanzamiento la carpeta se restaura antes de que arranque ComfyUI, aunque sea en otra tarjeta, así que tus modelos aparecen en las listas desde el principio. El almacenamiento cuesta 0,03 € por GB al mes; una carpeta de 20 GB con LoRA y checkpoints cuesta veinte veces eso, bastante menos de un euro.

Tres cosas que debes saber:

  • Los modelos base de una app lista para usar no se guardan. Se vuelven a descargar solos en el siguiente lanzamiento, así que no pagas almacenamiento por 17–70 GB de pesos públicos.
  • Los paquetes de Python no están en /workspace. Las carpetas de los nodos personalizados vuelven, pero las librerías que instalaste para ellos con pip, no. Después de restaurar, reinstálalas y reinicia ComfyUI:
for d in /workspace/ComfyUI/custom_nodes/*/; do [ -f "$d/requirements.txt" ] && pip install -r "$d/requirements.txt"; done
  • Restaurar es una descarga. La carpeta guardada llega a la máquina nueva como tráfico, con la tarifa de esa máquina. Te ahorra tiempo y conserva tus propios archivos, pero no te ahorra tráfico.

Si detienes el servidor sin guardar, los archivos se pierden. Un servidor inactivo (2 horas sin SSH, Jupyter ni carga en la GPU, luego un correo y luego una hora más) guarda la carpeta antes de detenerse. Tienes más detalles en qué pasa con tus archivos al detener una GPU.

Generación por lotes con la API de ComfyUI

Para 200 fotos de producto o una lista de prompts, no hace falta pulsar Run 200 veces. Cualquier ComfyUI acepta trabajos por HTTP.

  1. Monta y prueba el workflow en el navegador.
  2. Guárdalo con Workflow → Export (API) y sube workflow_api.json a /workspace.
  3. Abre el JSON y apunta los ID de los nodos que quieres cambiar, por ejemplo el nodo CLIPTextEncode con tu prompt y el KSampler con la semilla.
  4. Pon un prompt por línea en /workspace/prompts.txt y ejecuta esto en el servidor:
import json, random, time, urllib.request

URL = "http://127.0.0.1:8188"
PROMPT_NODE, SAMPLER_NODE = "6", "3"   # los ID de tu propia exportación
wf = json.load(open("/workspace/workflow_api.json"))

def call(path, data=None):
    req = urllib.request.Request(URL + path, data=data, headers={"Content-Type": "application/json"})
    return json.load(urllib.request.urlopen(req))

for text in [l.strip() for l in open("/workspace/prompts.txt") if l.strip()]:
    wf[PROMPT_NODE]["inputs"]["text"] = text
    wf[SAMPLER_NODE]["inputs"]["seed"] = random.randint(0, 2**32 - 1)
    pid = call("/prompt", json.dumps({"prompt": wf}).encode())["prompt_id"]
    print("queued", pid, text[:50])

while call("/queue")["queue_running"] or call("/queue")["queue_pending"]:
    time.sleep(10)
print("done, images are in /workspace/ComfyUI/output")

Lánzalo con nohup python batch.py > batch.log 2>&1 & para que siga funcionando cuando cierres el navegador. ComfyUI pone los trabajos en cola y los va haciendo uno a uno; los resultados van a /workspace/ComfyUI/output, que puedes comprimir en zip y descargar desde Jupyter.

Un presupuesto aproximado: con la cola llena, Flux schnell (4 pasos) renderiza una imagen de 1024×1024 en unos 2,5–5 segundos en una RTX 4090, según el workflow. Doscientas imágenes a unos 4 segundos cada una son menos de 15 minutos de trabajo; con la descarga del modelo y la preparación del script, cuenta con media hora, unos 0,30 € de tiempo de GPU.

También puedes enviar las mismas peticiones desde tu ordenador a la dirección de ComfyUI que aparece en Mis servidores. Para lanzar un servidor para el lote y detenerlo después desde un script, usa la API de VRAMfarm: detenerlo en cuanto la cola se vacía es lo que mantiene barato un trabajo por lotes.

Preguntas sobre el tema

¿Qué GPU necesito para ComfyUI?

Depende del modelo de tu grafo: SDXL funciona con 12 GB, Flux schnell en fp8 con 16 GB, Qwen-Image y Wan 2.2 5B piden 24 GB y Wan 2.2 14B necesita 48 GB. Una RTX 4090 con 24 GB cubre casi todo el trabajo de imagen.

¿Puedo usar Flux dev en lugar de Flux schnell?

Sí, descárgalo tú en models/diffusion_models o models/checkpoints. En Hugging Face es un modelo con acceso restringido: aceptas allí su licencia y lo descargas con tu propio token. Lee la licencia antes de usarlo en trabajos de pago.

¿ComfyUI se actualiza solo en cada lanzamiento?

Un servidor nuevo instala el ComfyUI actual desde GitHub. Si restauras una carpeta guardada, vuelve con ella la versión de ComfyUI que guardaste, y así tus nodos personalizados siguen funcionando.

¿Por qué se me cobra tráfico por descargar modelos?

Todo lo que descarga el servidor, incluidos los modelos de una app lista para usar, cuenta como tráfico con la tarifa por GB de la máquina, que ves antes de lanzar. Una app de Flux de 17 GB descarga unos 17 GB; una de Wan 14B, unos 70 GB.

Encuentra la GPU en la que cabe tu modelo

Elige un modelo y verás la tarjeta más barata con VRAM suficiente, con facturación por minuto en euros.