- Implemented a text-based table formatter for batches. - Updated Load CSV node to show a table preview in the workflow. - Added a new Preview Batch node for visualizing any batch data. - Added a JavaScript extension to handle node visualization. - Updated English and Spanish documentation.
5.4 KiB
🔁 ComfyUI Sequential Batcher & Video Loop Master (Beta v0.9.3)
Important
Esta versión se encuentra actualmente en fase BETA. Hemos completado la transición de la terminología de "Job" a Batch (Lote) para alinearnos con los estándares de ComfyUI y el nombre del proyecto.
La herramienta definitiva para crear flujos de trabajo iterativos complejos y procesamiento de vídeo fotograma a fotograma en ComfyUI. Diseñada para manejar tareas pesadas (como generación de vídeo de alta resolución con Wan2.2 o LTX Video) sin colapsar tu GPU, utilizando bucles secuenciales inteligentes en lugar de procesamiento por lotes masivo que agota la VRAM.
🚀 ¿Por qué usar esto?
El procesamiento por lotes (batch) estándar de ComfyUI procesa todo a la vez (tensores 4D). Para vídeo o lotes grandes, esto provoca errores de Falta de Memoria (OOM). Sequential Batcher te permite "dividir" estas tareas y procesarlas una a una (secuencialmente) dentro de una sola ejecución de "Queue Prompt", para luego "reunir" los resultados en un solo lote o archivo de vídeo.
🛠️ Instalación
- Clona este repositorio en
custom_nodes/comfyui-sequential-batcher. - Reinicia ComfyUI.
- Las dependencias (
torch,numpy) se gestionarán automáticamente si usas ComfyUI Manager gracias al archivorequirements.txt.
📖 Conceptos Clave
- SEQUENCE (Secuencia): Una lista simple de valores (números, textos, etc.).
- BATCH (Lote): Una colección estructurada de "pasos". Cada paso tiene Atributos con nombre.
- Iteración: La magia ocurre en nodos como
Batch To List,Image Batch To ListoLatent Batch To List. Cuando ComfyUI detecta una salida tipo "Lista" de estos nodos, ejecuta todos los nodos conectados a continuación una vez por cada elemento de la lista.
🎞️ Flujo de Vídeo (Wan2.2 / LTX-Video / Modelos Futuros)
Los modelos de vídeo generan muchos fotogramas que pueden superar fácilmente los 24GB de VRAM.
- Split (Dividir): Usa
Latent Batch To Listpara convertir tu latente de vídeo en una lista de fotogramas individuales. - Process (Procesar): Conecta a tu KSampler o VAE Decoder. ComfyUI procesará el Fotograma 1, luego el 2, luego el 3... ahorrando memoria.
- Gather (Reunir): Usa
Latent List To Batch(oImage List To Batchsi decodificaste primero) para reconstruir el lote completo de vídeo para guardarlo.
🔢 Referencia Detallada de Nodos
🔄 Categoría Bucles (🔁 Sequential Batcher/Loop)
- 🔁 Sequential Loop Index: La forma más sencilla de iniciar un bucle.
- Entrada:
count(Cuántas veces ejecutar). - Salida:
index(0, 1, 2...). Útil para semillas (seeds) o selección de elementos.
- Entrada:
- 🔁 Repeat: Toma cualquier entrada y la repite N veces.
- Entrada:
input(Cualquiera),count(INT). - Salida:
output(Lista de la misma entrada repetida).
- Entrada:
🛠️ Categoría Lote (🔁 Sequential Batcher/Batch)
- 📂 Load CSV: Carga un archivo CSV como un Lote (Batch). Ahora incluye una vista previa de la tabla en el flujo de trabajo.
- Entrada:
path(Ubicación del archivo),delimiter,quotechar. - Entrada Opcional:
index(Para elegir una fila específica). - Salida:
batch(La lista completa),current_attributes(Diccionario de la fila seleccionada),count(Total de filas).
- Entrada:
- 📊 Preview Batch: Muestra una tabla del contenido del lote en el flujo de trabajo.
- Entrada:
batch,index(Resaltar fila específica),max_rows.
- Entrada:
- 🛠️ Make Batch: Convierte una secuencia en un objeto "Batch".
- Entrada:
sequence(Los datos),name(El nombre del atributo, ej: "cfg_scale").
- Entrada:
- 🖇️ Combine Batches: Fusiona varios lotes.
- Modos:
zip(por parejas) oproduct(todas las combinaciones posibles).
- Modos:
- 🔄 Batch To List: CRÍTICO. Convierte un Lote en un flujo de atributos que activa el bucle secuencial.
- 📥 Get Attribute: Extrae un valor específico del paso actual del lote por su nombre.
🖼️ Categoría Imagen y Latente (🔁 Sequential Batcher/Image & /Latent)
- 🖼️ Image Batch To List: Divide un tensor [N,H,W,C] en N imágenes separadas.
- 🖼️ Image List To Batch: Reconstruye un lote a partir de imágenes iteradas.
- 🎞️ Latent Batch To List: Divide latentes de vídeo fotograma a fotograma para un procesamiento seguro en VRAM.
- 🎞️ Latent List To Batch: Une fotogramas individuales de nuevo en un lote latente de vídeo.
- ⏳ Progress Bar: Genera un indicador visual de progreso.
💡 Consejos Pro y Casos de Uso
📝 Uso de CSV para Prompts y Escenas
Puedes crear un CSV con columnas como prompt, negative_prompt y seed.
- Usa 📂 Load CSV para cargar tu archivo.
- Conecta
batcha 🔄 Batch To List. - Usa 📥 Get Attribute para pasar el
prompta tu CLIP Text Encode. - Cada fila de tu CSV se procesará como un "fotograma" o "trabajo" en la secuencia.
🎬 Tiempos de Escena para Vídeo
Si tienes un CSV con frame_start y prompt, puedes usarlo para cambiar los prompts en puntos específicos de un bucle de generación de vídeo.
🧪 XY Plots
Usa 🖇️ Combine Batches en modo product para crear "XY Plots" (ej: probar cada Prompt contra cada valor de CFG).
🔍 Iteración Automática de Modelos
Usa 🔍 Model Finder para iterar automáticamente a través de una carpeta de LoRAs o Checkpoints.