Instalación de ComfyUI en un entorno Conda
Objetivo inicial. Instalación de Comfyui.
El primer objetivo que me planteé para poder trabajar con generadores de imágenes con IA fue montar un sistema local para evitar la dependencia de las plataformas online. Averigüé que era posible siempre que se dispusiera de un ordenador de sobremesa con una buena tarjeta gráfica, preferiblemente NVIDIA, algo que yo acababa de adquirir, y me puse manos a la obra.
Investigando por la red y con ayuda de los chatboots habituales (Chatgpt, Gémini) y los buscadores de internet llegué a la conclusión que entre las soluciones posibles, lo que más me convenía era instalar Comfyui, por ser una de las más extendidas entre la comunidad, y así lo hice.
He de decir que tuve numerosos inconvenientes y algunas dificultades, pero al final lo conseguí. He aquí el resumen de mi experiencia.
¿Qué es ComfyUI?
ComfyUI es una interfaz gráfica de usuario (GUI) basada en nodos diseñada para crear flujos de trabajo personalizados y avanzados en la generación de imágenes y vídeos con IA. Permite un control preciso sobre cada paso del proceso (modelos, prompts, sampling) al conectar nodos, siendo más modular, eficiente y rápido que otras interfaces como Automatic1111 y derivados, como Forge.
Su creador, comfyanonymous, diseñó una interfaz visual donde cada paso matemático del proceso de generación de imágenes se convirtió en un bloque o nodo independiente que puedes conectar con cables virtuales.
Es adecuado para usuarios avanzados que buscan precisión en la creación de imágenes y vídeos, especialmente en tareas complejas, como pueden ser:
Generación de imágenes fotorrealistas y control artístico avanzado.
Aumento de resolución
Restauración de rostros/cuerpos.
Creación de animaciones o vídeos mediante la conexión de modelos de vídeo.
Es una aplicación modular, gratuita y de código abierto, que consume menos recursos de GPU que otras interfaces y permite reutilizar flujos de trabajo. Es compatible con modelos modernos como Stable Diffusion, Flux. , Qwen y otras tecnologías.
Su instalación requiere algunos conocimientos técnicos y su curva de aprendizaje es elevada, por lo que los primeros resultados no son inmediatos.
El propietario de ComfyUI es la empresa Comfy Organization Inc. que centraliza el desarrollo y soporte de esta plataforma de IA Ggenerativa. El control y liderazgo de la organización se divide entre sus creadores originales y firmas de inversión de capital de riesgo.
A pesar de pertenecer a una empresa, el código base de ComfyUI se mantiene como un software de código abierto, por lo que cualquier usuario u organización es libre de modificarlo o utilizarlo localmente.
Comfy Organization Inc. gana dinero a partir de la prestación de servicios relacionados con la plataforma, como son:
Planes de suscripción: Los usuarios que no quieren o pueden tener su propia plataforma pagan una tarifa mensual fija por una suscripción online (las hay de varios niveles)
Comisiones por "Nodos Asociados": en su interfaz en la nube incluye el acceso a modelos de IA comerciales o herramientas de terceros, no disponibles como software libre. Cuando un usuario añade un nodo de pago a su espacio de trabajo, paga por hacerlo.
Soluciones personalizadas de infraestructura para grandes corporaciones y estudios de animación. Esto incluye: Servidores dedicados con seguridad de datos avanzada, herramientas de colaboración y control de versiones en tiempo real para equipos de diseño, soporte técnico prioritario y consultoría corporativa
Como vemos, la plataforma libre es como el “enganche” para que determinados usuarios profesionales y empresas contraten los servicios profesionales.
Por o tanto, aunque podamos hacer muchas cosas, nunca alcanzaremos con una plataforma de software libre el mismo nivel de recursos que con un plan de suscripción o un contrato de servicios, pero “para investigar”, más que suficiente.
A partir de aquí se tratará de ver cómo podemos instalar los diferentes modelos y crear los flujos de trabajo pertinentes para cada tecnología con la que queramos trabajar. Aquí algunas de referencia con las que podremos trabajar, todas con sus correspondientes versiones, variantes y complementos
Stable Diffusion
Flux
Qwen
Hunyuan
Z-Image
LTX-Video
Wan
… y muchas otras
¿Por donde empezamos?
Instalación en Windows de Conda-ComfyUI
¿Qué necesitamos tener antes de la instalación?
Hardware adecuado, fundamentalmente una tarjeta NVIDIA
Instalación de Miniconda3 (gestiona diferentes versiones de Python en un mismo ordenador)
Una cuenta de GitHub
Python, en las versiones requeridas (en nuestro caso, 3.10.6)
es habitual problemas de incompatibilidad entre versiones de los diferentes elementos que participan en una instalación)
Acceso a HuggingFace, para la descarga de determinados modelos
Documento de explicación: https://docs.comfy.org/installation/manual_install#nvidia
Requisitos y elementos necesarios en la instalación base de ComfyUI
En la instalación de ComfyUI participan muchos elementos de software y se trata de primar la estabilidad sobre la modernidad, dicho de otra manera, no recomiendo utilizar por sistema las últimas versiones de software sino la última combinación de versiones que se ha demostrado estable. En es caso:
Miniconda + Python 3.10 (actualmente 3.12.13)
PyTorch CUDA 13.0 (actualmente pytorch version: 2.12.0+cu130)
ComfyUI (actualmente 0.26.2)
ComfyUI-Manager
OBSERVACIÓN: del momento en que hice la instalación inicial al día de hoy ha habido actualizaciones, de ahí que indique la versión con la que documenté este artículo y la versión que tengo instalada actualmente.
Hardware
Disponemos de una tarjeta de vídeo NVIDIA 5060TI de 16 Gb de VRAM, con tecnología CUDA y 32GB de memoria RAM.
Respecto al espacio en disco, se necesita bastante, en mi caso 1TB en disco SSD.
Instalación de Miniconda
Yo he optado por instalar previamente Miniconda, que no es estrictamente necesario, porque me he encontrado en la situación de tener que disponer simultáneamente de más de una instalación de Comfyui con versiones diferentes de elementos de software, algo que no se puede hacer si instalamos directamente el entorno. Un caso habitual es cuando he necesitado actualizar software interno a requerimiento de alguna extensión y no no he querido arriesgarme a hacerlo sobre mi instalación principal; en realidad esto lo aprendí después de hacerlo una vez y cargarme toda la instalación base y tener que volver a instalarlo todo.
Miniconda es una distribución ligera (unos 400Mb) y gratuita del software Anaconda, que funciona como un gestor de paquetes y entornos virtuales (Conda). A diferencia de Anaconda, es una instalación mínima que incluye solo Conda, Python y pocos paquetes esenciales, con la intención de ahorrar espacio y personalizar entornos de desarrollo.
Permite crear entornos aislados para evitar conflictos de versiones entre librerías en diferentes proyectos de programación. Por ejemplo, podemos crear un entorno Python 3.9 para un proyecto y Python 3.11 para otro, o bien, instalar librerías específicas diferentes para cada proyecto.
Para instalar “miniconda” seguimos el siguiente procedimiento:
(Vídeo explicando https://www.youtube.com/watch?v=AgnAs0nPEVg )
1-Vamos a la página del proyecto conda
Accedemos al apartado de descargas “Downoads”
En la parte inferior de la página encontraremos el botón de descarga de miniconda
Download miniconda instaleer
Descargamos el archivo instalador “Windows 64-Bit Graphical Instaler”, con el nombre
Miniconda3-latest-Windows-x86_64.exe
Ejecutamos el archivo, que instalará la versión
py313_26.1.1-1(64bits)
en la carpeta (para evitar permisos de administrador al cargar posteriormente otros paquetes)
C:\ProgramData\miniconda3
con las opciones siguientes activadas
Create shortcuts
Register Miniconda3 as the system Phyton 3.13
Clear the package cache at upon completion
Finaliza la instalación
2-Comprobamos que tenemos instalado Conda.
Accedemos al terminal de anaconda, que está ahora en nuestra lista de aplicaciones
Anaconda prompt
Ejecutamos el comando
conda list
Si vemos la lista de paquetes instalados, conda está correctamente funcionando.
3-Creamos un nuevo entorno de nombre
confyui (entorno de confy), desde el shell de conda, con la instrucción
conda create -n comfyui python=3.10 -y
activamos el entorno creado con el comando
conda activate comfyui
Ahora trabajaremos siempre dentro de este entorno virtual que podremos instalar junto a otros con versiones diferentes, si así lo necesitamos.
Instalación de la dependencia PiTorch para CUDA
PyTorch es una biblioteca de aprendizaje automático (machine learning) y redes neuronales de código abierto. Cuando se combina con NVIDIA, PyTorch aprovecha la tecnología CUDA, propia de las tarjetas gráficas NVIDIA, para ejecutar cálculos intensivos en las GPU de las tarjetas gráficas en lugar de la CPU o procesador. Esto acelera en gran manera el entrenamiento de modelos de inteligencia artificial, y otros procesos.
Para instalar PiTorh, desde el terminal de Conda y con el entorno que hemos creado para este proyecto, lanzamos la instrucción:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu130
Para comprobar que la instalación ha sido correcta, ejecutamos el comando:
python -c "import torch; print(torch.cuda.is_available())"
que ha de responder “True”
Instalación de ComfyUI
Una vez instalada la infraestructura anterior, la instalación de Comfyui la realizamos con el siguiente proceso:
1-Entramos en nuestro entorno “conda”
Terminal “Anaconda prompt”
conda activate comfyui
2-Clonamos el directorio correspondiente de GitHub, mediante el comando:
git clone https://github.com/comfyanonymous/ComfyUI.git ComfyUI
a la carpeta ..\ComfyUI
2.Accedemos a la carpeta
cd comfyui
3-Instalamos las dependencias
pip install -r requirements.txt
La versión instalada es la disponible en cada momento.
Ejecutat ComfyUI
Para ejecutar la aplicación, desde el gestor de comandos de Conda:
python main.py
En mi caso, como trabajo en un entorno Windows, tras consultas y pruebas he obtenido un archivo .BAT que ejecuto desde mi escritorio para el arranque de Confyui, con la siguiente estructura:
call C:\ProgramData\miniconda3\Scripts\activate.bat C:\ProgramData\miniconda3
call cd c:\users\pc\comfyui
call conda activate comfyui
call python main.py --cuda-malloc --port 8188
pause
Solo diré que funciona perfectamente.
Para acceder desde nuestro navegador basta con ejecutar
Entramos en el entorno de Comfyui, que no explicaré sino que me remitiré a la documentación oficial que se puede encontrar en ComfyUI Official Documentation, donde explican detalladamente la interfaz, los nodos integrados y hay tutoriales paso a paso.
También puede ser útil la wiki en español https://comfyui-wiki.com/es o los siguientes vídeos:
Lo que si me detendré es en la instalación de una extensión fundamental, el Comfyui-Manager.
Instalar ComfyUI Manager
ComfyUI-Manager es una extensión de la interfaz gráfica ComfyUI que funciona como un centro de gestión centralizado. Permite a los usuarios instalar, eliminar, actualizar y deshabilitar nodos personalizados (custom nodes) y modelos, mejorando drásticamente la usabilidad, eficiencia y la gestión del flujo de trabajo. Por lo tanto, conviene, por no decir que es imprescindible, su instalación.
Para instalar ComfyUI-Manager seguimos los siguientes pasos:
1-Abrimos la terminal de Conda y activamos la instancia de Conda deseada
conda activate comfyui
2-Entramos en la subcarpets “custom-nodes” de ComfyUi
cd C:\users\pc\comfyui\custom-nodes
2-Clonamos desde GitHub el manager
3-Salimos y volvemos a cargar Comfyui, para que se carguen las modificaciones.
Ahora, en el entorno gráfico de ComfyUI se observa que hay un nuevo botón “Manager” que antes no estaba.
Si la instalación se realiza con el interface de usuario en Español, mejor cambiarla a “English”
Configuración-Confy-Localización-Idioma-English
El motivo no es otro que la documentación oficial y mucha información que encontraremos se encuentra en este idioma y será más fácil seguirla si nuestro entorno está en ingles.
OBSERVACIÓN 1: A veces no se podrá instalar una determinada extensión desde Comfig Manager por el nivel de seguridad establecido por omisión. Para cambiar este nivel de seguridad temporalmente, se accede al archivo “..\ComfyUi\user\_manager\config.ini” y se modifica la línea:
security_level = normal → security_level = weak
OBSERVACIÓN 2: en ocasiones al instalar determinadas extensiones (normalmente las más modernas) tendremos un error del tipo
[ERROR] ERROR: This action requires BOTH: (1) 'allow_git_url_install = true' in config.ini ([default] section), AND (2) ComfyUI launched with a loopback --listen (127.0.0.1 or ::1) - currently listening on 127.0.0.1. BOTH values are read once at ComfyUI startup, so changing either one needs a restart, done with the server down: STOP ComfyUI, change the setting, then start it again. Both are independent of security_level. Reference: https://github.com/ltdrdata/ComfyUI-Manager#security-policy
Para solucionarlo deberemos añadir la siguiente línea al archivo “config.ini”
allow_git_url_install = true
Compartición de modelos entre instalaciones Conda-Comfyui
Me voy a adelantar para resolver un problema que se nos va a presentar cuando hagamos nuestra primera y sobre todo, nuestra segunda instalación de Comfyui en Conda y queramos ejecutar un flujo de trabajo.
Los modelos se guardan en cada instalación en la carpeta:
Confyui\models
en diferentes subcarpetas según el tipo de modelo y donde irán los nodos que lo carga a buscarlo.
Entonces, si tenemos varias instancias de Comfyui, ¿debemos tener los modelos copiados dentro de cada carpeta de modelos correspondiente?. Esto es un problema, ya que hay modelos que ocupan mucho, 25Gb, por ejemplo, y tener tres instancias supone un gasto extra de 50Gb en nuestro disco.
¿Podemos compartir los modelos entre las instalaciones que tengamos para no tener que copiar cada modelo en cada instalación?.
La solución está en tener una carpeta “Comfyui_models” ( o el nombre que más nos guste) a la que apuntaremos desde las dos (o tres o cuatro) instancias de Comfyui instaladas. Para ello, en cada instancia copiaremos, editaremos y guardaremos el siguiente archivo modificado
extra_model_paths.yaml
Dentro del archivo ya están las instrucciones de cómo de debe modificar; de todas maneras, aquí un ejemplo del contenido, si queremos compartir los modelos SD:
comfyui_models: base_path:
C:\users\pc\comfyui_models\models
checkpoints: checkpoints
Si más adelante comenzamos a trabajar con otros modelos, por ejemplo, comenzamos a trabajar con “ControlNet”, añadiremos la línea correspondiente al tipo de modelos y el fichero quedará así:
comfyui_models: base_path:
C:\users\pc\comfyui_models\models
checkpoints: checkpoints
controlnet: controlnet
No siempre es tan obvio la estructura de la línea a añadir y no siempre se encuentra la información de cómo debería ser, por lo que en estos casos tocaría probar con los posibles nombres, pero eso ya vendrá más adelante.
Espero que esta documentación sea útil a quien la lea. Hasta la próxima ocasión.

Comentarios
Publicar un comentario