Serie ComfyUI (IV) — Workflow de cambio de cara (Face Swap con ReActor)
- josejotxe
- 13 dic 2025
- 8 Min. de lectura
Continuamos la serie dedicada a ComfyUI, la herramienta visual para crear y automatizar flujos de IA en local. En esta cuarta entrega aprenderás a construir y ejecutar un workflow para cambiar la cara de una persona por la de otra dentro de una imagen, de forma rápida, precisa y totalmente local.
Para ello utilizaremos ReActor, uno de los módulos más potentes para face swap dentro de ComfyUI. Este módulo permite cargar un rostro origen, analizarlo con modelos especializados y sustituirlo en la imagen base, manteniendo iluminación, perspectiva y coherencia visual.

El flujo que usaremos se llama: 📁 WF_ComfyUI_CambioDeCara.json Y podrás descargarlo al final del artículo para cargarlo directamente en tu ComfyUI
🎯 Qué vas a lograr
Cambiar el rostro de una persona por el de otra directamente en tu equipo.
Ejecutar un workflow de face swap 100% local, sin subir imágenes a la nube.
Usar el módulo ReActor para obtener reemplazos limpios y coherentes.
Cargar y combinar imágenes base y rostros con total control.
Ajustar parámetros del modelo facial para obtener resultados más naturales.
Guardar automáticamente tu imagen final con el nuevo rostro.
Entender cada nodo del workflow para reutilizarlo, ampliarlo o integrarlo en otros proyectos.
🧩 Requisitos
Para ejecutar este flujo necesitarás tener instalados los siguientes componentes:
💻 ComfyUI funcionando correctamente.
🧠 comfyui-reactor-node — módulo ReActor para face swap.
🖼️ Dos imágenes:
Una imagen base (donde se cambiará la cara).
Una imagen rostro (cara que sustituirá a la de la imagen base).
💾 Espacio para guardar los resultados (ComfyUI/output/).
⚙️ Instalación de ReActor
Puedes instalar el nodo directamente desde Pinokio:
En ComfyUI → Custom Nodes, busca:
comfyui-reactor-node
Pinokio lo instalará automáticamente en la carpeta adecuada.
💡 Nota práctica
Si cargas este workflow y falta algún nodo, ComfyUI te avisará automáticamente. Desde el mensaje puedes abrir directamente la pestaña Custom Nodes e instalar el nodo faltante con un clic.
🗂️ Crear o cargar el workflow en ComfyUI
Tienes dos maneras de trabajar con este flujo:
🅰️ Opción A — Cargar el workflow ya creado
Descarga el archivo JSON adjunto:📁 WF_ComfyUI_CambioDeCara.json
Abre ComfyUI.
En el menú superior, selecciona: Workflow → Load
Elige el archivo descargado. Verás aparecer en el lienzo todos los nodos conectados y configurados. Puedes hacer zoom y arrastrar con el ratón para explorarlos.

🅱️ Opción B — Crear el workflow desde cero
Si prefieres aprender cómo se construye paso a paso, puedes partir de un flujo vacío y añadir los nodos uno a uno siguiendo las indicaciones de la siguientes secciones de este artículo, donde te explicamos en detalle qué hace cada bloque, cómo se conecta y qué parámetros conviene modificar en cada uno.

⚙️ El workflow: estructura general
Este flujo carga dos imágenes (base y rostro), un modelo facial y ejecuta el reemplazo mediante ReActor.
Nº | Nodo | Función principal |
1️⃣ | Load Image – Imagen Base | Carga la imagen donde se realizará el cambio de cara. |
2️⃣ | Load Image – Rostro | Carga la imagen cuyo rostro se utilizará en la sustitución. |
3️⃣ | ReActorLoadFaceModel | Carga el modelo facial (.safetensors) que define los rasgos y la precisión del swap. |
4️⃣ | ReActorFaceSwap | Realiza la sustitución del rostro combinando la imagen base, la imagen rostro y el modelo. |
5️⃣ | PreviewImage | Muestra el resultado en ComfyUI. |
6️⃣ | SaveImage | Guarda automáticamente la imagen final. |
7️⃣ | CR Text | Comentarios internos con instrucciones del workflow. |
🧱 Entendiendo el workflow paso a paso
A continuación explicamos los nodos que componen este flujo para que puedas entender cómo funciona internamente el proceso de face swap con ReActor.
Cada nodo cumple un papel concreto dentro del pipeline.
1️⃣ Load Image – Imagen Base
• Qué hace: carga la imagen original sobre la que quieres reemplazar el rostro.
• Qué tocar: selecciona la foto base (persona, personaje, retrato…).
• Conexiones del nodo: su salida IMAGE se conecta a la entrada input_image del nodo ReActorFaceSwap.
2️⃣ Load Image – Rostro
• Qué hace: carga la imagen del rostro que quieres insertar en la imagen base.
• Qué tocar: elige una foto clara, frontal o ligeramente de perfil, del rostro origen.
• Conexiones del nodo: su salida IMAGE se conecta a la entrada source_image del nodo ReActorFaceSwap.
3️⃣ ReActorLoadFaceModel
• Qué hace: Carga el modelo facial que ReActor utilizará para reconocer, reconstruir y fusionar el rostro en la imagen destino. Estos modelos contienen información sobre proporciones, geometría facial, detección de landmarks, blending avanzado y reconstrucción 3D ligera. En pocas palabras: definen cómo se interpreta el rostro y cómo se integra en la imagen base.
• Qué tocar: En este nodo puedes seleccionar diferentes archivos .safetensors que cambiarán la calidad, realismo y estilo del face swap. El workflow viene configurado con: Ekanteeka.safetensors porque ofrece un equilibrio excelente entre velocidad, precisión y estabilidad visual.
• Conexiones del nodo: Su salida FACE_MODEL se conecta al nodo ReActorFaceSwap, alimentándolo con el modelo facial que dictará cómo se realiza el intercambio.

⭐ Modelos compatibles con ReActor y sus diferencias
ReActor permite utilizar distintos modelos faciales, que determinan el “estilo” o la precisión del intercambio. Aquí tienes un resumen de los más habituales:
🔹 Ekanteeka.safetensors (el que usamos en este workflow)
Ventajas:
Gran estabilidad en rostros complejos.
Excelente reconstrucción de facciones incluso en ángulos difíciles.
Muy natural en retratos realistas.
Blending suave entre piel, sombra y textura.
Ideal para: Fotos reales, retratos profesionales, escenas con iluminación variada.
Es uno de los modelos más equilibrados entre calidad y rendimiento.
🔹 inswapper_128.onnx (modelo principal del swap)
Este modelo no se carga con ReActorLoadFaceModel, sino dentro del nodo ReActorFaceSwap, pero funciona en combinación con el modelo facial.
Ventajas:
Muy rápido.
Resultados sólidos en la mayoría de los casos.
Excelente para rostros centrados.
Ideal para: Cambios de cara rápidos y situaciones controladas.
🔹 GFPGAN / Restore Models
Aunque no son modelos de swap propiamente dichos, pueden combinarse para mejorar la nitidez del rostro después del intercambio.
Ventajas:
Mejora detalles finos (ojos, labios, piel).
Perfecto para imágenes de baja resolución.
Ideal para: Composiciones con rostros algo borrosos o imágenes resultantes que necesiten un refinado extra.
🔹 Modelos personalizados de la comunidad (ReActor+)
Hay modelos creados por la comunidad que afectan principalmente al blending y a la expresividad facial.
Algunos efectos comunes:
Mejor conservación de expresiones.
Estilos más cinematográficos.
Mejor emparejamiento de tono de piel.
Ideal para: Proyectos creativos, cine, contenido digital.
4️⃣ ReActorFaceSwap
Este es el nodo central del workflow: el encargado de realizar el intercambio de rostro combinando la imagen base, la imagen rostro y el modelo facial.
• Qué hace: es el núcleo del workflow. Realiza la sustitución facial combinando:
input_image → imagen base
source_image → rostro que queremos usar
face_model → modelo facial cargado antes
• Qué tocar: Puedes ajustar parámetros como:
enabled: para habilitar o no el cambio de rostro.
Modelo de intercambio (inswapper_128.onnx).
Es el modelo que realiza el intercambio real del rostro.
Podrías cambiarlo por otros modelos basados en el Inswapper (inswapper_256.onnx → más detalle, más lento, inswapper_128_fp16.onnx → optimizado para GPUs modernas)
Detector de rostros (por defecto YOLOv5l): detecta la cara dentro de la imagen base.
Modelo de mejora (GFPGANv1.4.pth): refina el rostro resultante, aumentando nitidez y corrigiendo artefactos.
Intensidad del face swap (face boost): 1.0 es un swap completo, y un 0.0 es un blending extremadamente sutil.
Blend Factor: define cómo se mezcla la textura de piel entre el rostro nuevo y la imagen base. Es un valor entre 0 y 1. Recomendable usar 0.5.
Género del rostro origen/destino (male, female, no)
• Conexiones del nodo:
Recibe las 3 entradas principales
Su salida IMAGE va a PreviewImage y SaveImage
5️⃣ PreviewImage
• Qué hace: muestra el resultado final del swap antes de guardarlo.
• Qué tocar: nada. Es simplemente visualización.
• Conexiones del nodo: recibe la salida IMAGE desde ReActorFaceSwap.
6️⃣ SaveImage
• Qué hace: guarda la imagen procesada en la carpeta de salida (ComfyUI/output/).
• Qué tocar: puedes cambiar la ruta si deseas guardarlo en otro directorio.
• Conexiones del nodo: recibe la salida IMAGE desde ReActorFaceSwap.
7️⃣ CR Text
• Qué hace: proporciona un comentario dentro del propio workflow explicando su uso.
• Qué tocar: nada; es puramente informativo.
• Conexiones del nodo: no participa directamente en el procesamiento.
▶️ Cómo usarlo
1️⃣ Abre ComfyUI.
2️⃣ En el menú superior selecciona:Workflow → Load
3️⃣ Carga el archivo:📁 WF_ComfyUI_CambioDeCara.json
4️⃣ En Load Image – Imagen Base, selecciona la imagen donde quieres cambiar la cara.
5️⃣ En Load Image – Rostro, selecciona la imagen con el rostro que quieres insertar.
6️⃣ Asegúrate de que el modelo facial está cargado en ReActorLoadFaceModel.
7️⃣ Pulsa Run.
El workflow realizará automáticamente el cambio de cara y guardará la imagen final en la carpeta de salida (ComfyUI/output/).

💡 Consejos y buenas prácticas
Usa imágenes claras y bien iluminadas. Cuanto mejor se vea el rostro, más preciso será el face swap.
Elige un rostro origen frontal o con un ángulo similar al de la imagen base. ReActor funciona especialmente bien cuando las poses son compatibles.
Prueba distintos modelos faciales. Modelos como Ekanteeka producen resultados naturales, pero otros pueden dar mayor detalle o expresividad.
Ajusta face boost y blend si el resultado no encaja bien. Un blend más bajo conserva más textura de la imagen original.
Si la detección de rostro falla, cambia el detector.YOLOv5l es el más equilibrado, pero SCRFD funciona muy bien con ángulos complicados o rostros pequeños.
Combina este flujo con otros workflows de ComfyUI.Por ejemplo:
Añadir nuevos fondos
Aplicar upscale
Refinar la imagen con GFPGAN o ESRGAN
Integrarlo dentro de un pipeline de diseño o generación IA
🧩 Mejorando el workflow: procesamiento por lotes
Una de las mayores ventajas de ComfyUI es que puedes encadenar y combinar workflows para crear procesos más complejos y automatizados.El workflow básico de cambio de cara funciona con dos imágenes, pero puede ampliarse fácilmente para:
procesar todas las imágenes de una carpeta,
generar resultados en lote y sin supervisión,
y combinar varias imágenes en una sola para comparar imagen base + rostro + resultado.

Para ilustrarlo, hemos preparado un segundo flujo: 📁 WF_ComfyUI_CambioDeCara_PorLotes.json
🔄 ¿Qué añade este workflow respecto al anterior?
1️⃣ LoadImageListFromDir //Inspire
• Qué hace: Permite seleccionar una carpeta completa y cargar automáticamente todas las imágenes que contiene, enviándolas al flujo una por una.
• Qué tocar: indica la ruta de la carpeta donde están las imágenes a las que les quieres cambiar la cara.
2️⃣ ImageConcatMulti
Qué hace: Concatena varias imágenes en una sola. En este flujo se concatenan exactamente tres imágenes:
image_1: rostro origen (LoadImage)
image_2: imagen base (desde Reroute)
image_3: imagen resultado del swap (ReActorFaceSwap)
Que tocar:
inputcount: número de imágenes de entrada. 3 en nuestro caso
direction: como coloca las imágenes que recibe de entrada ("right" → formato horizontal (las tres imágenes una al lado de la otra)
match_image_size: true → mantener la misma altura para todas

🌐 Recursos útiles
🧩 ComfyUI: repositorio oficial de ComfyUI.
🌍 Hugging Face: uno de los mayores repositorios de IA del mundo, donde encontrarás miles de modelos —incluidos los compatibles con Stable Diffusion y ComfyUI— listos para descargar y usar.
🎨CivitAI: plataforma comunitaria donde los usuarios comparten modelos, estilos, LoRAs y nodos específicos para ComfyUI, clasificados por categoría, versión y nivel de complejidad.
💙 Serie ComfyUI en Lozkorp:
Serie ComfyUI (III) — Workflow para quitar fondo a un conjunto de imágenes
(Actual) Serie ComfyUI (IV) — Workflow para cambio de cara
🔗 Workflow descargable: Puedes descargar el archivo completo y cargarlo directamente en ComfyUI:
Workflows de este artículo:
👉 WF_ComfyUI_CambioDeCara.json
👉 WF_ComfyUI_CambioDeCara_PorLotes.json
🗺️ Conclusión
Con esta cuarta entrega de la serie ComfyUI, ya conoces cómo construir un workflow completo para cambiar el rostro de una imagen de forma totalmente local, controlando cada paso del proceso usando ReActor.Este tipo de flujos abre un abanico enorme de posibilidades creativas y técnicas:
modificaciones para cine, diseño o publicidad
generación de datasets sintéticos
pruebas de modelos de IA
ilustración y arte digital
automatizaciones masivas aplicando un mismo rostro a múltiples imágenes
Además, gracias a su estructura modular, puedes combinar este workflow con otros (como la concatenación visual o el procesado por lotes) para generar comparativas automáticas, control de calidad, o auditorías visuales, tal como hemos visto.
Descarga y prueba los Workflows en tu ComfyUI, experimenta con distintos modelos faciales, cambia los detectores y ajusta los parámetros. Cada configuración aporta matices diferentes, y explorar esas variaciones forma parte del aprendizaje y de la diversión.
💙 Si te ha gustado esta entrega, no olvides visitar www.lozkorp.com para más artículos sobre IA en local, workflows, diseño, creatividad y automatización.





















Comentarios