Un archivo de flujo de trabajo depende de otros archivos
A menudo obtenemos diversos archivos de flujo de trabajo de la comunidad, pero con frecuencia nos encontramos con que el flujo de trabajo no se puede ejecutar directamente después de cargarlo. Esto se debe a que un archivo de flujo de trabajo depende de otros archivos además del propio flujo de trabajo, como entradas de recursos multimedia, modelos, nodos personalizados, dependencias de Python relacionadas, etc. Los flujos de trabajo de ComfyUI solo pueden ejecutarse normalmente cuando se satisfacen todas las dependencias relevantes. Las dependencias de los flujos de trabajo de ComfyUI se dividen principalmente en las siguientes categorías:- Recursos (archivos multimedia que incluyen audio, video, imágenes y otras entradas)
- Nodos personalizados
- Dependencias de Python
- Modelos (como los modelos de Stable Diffusion, etc.)
Recursos
Un modelo de IA es un ejemplo de un recurso. En la producción de medios, un recurso es algún archivo multimedia que proporciona datos de entrada. Por ejemplo, un programa de edición de video opera sobre archivos de video almacenados en el disco. El archivo de proyecto del programa de edición contiene enlaces a estos recursos de archivos de video, lo que permite una edición no destructiva que no altera los archivos de video originales. ComfyUI funciona de la misma manera. Un flujo de trabajo solo puede ejecutarse si todos los recursos requeridos se encuentran y se cargan. Los modelos de IA generativa, las imágenes, los videos y los sonidos son algunos ejemplos de recursos de los que puede depender un flujo de trabajo. Por lo tanto, se conocen como recursos dependientes o dependencias de recursos.Nodos personalizados
Los nodos personalizados son un componente importante de ComfyUI que amplía su funcionalidad. Son creados por la comunidad y se pueden instalar para agregar nuevas capacidades a tus flujos de trabajo.Dependencias de Python
ComfyUI es un proyecto basado en Python. Creamos un entorno de Python independiente para ejecutar ComfyUI, y todas las dependencias relacionadas se instalan en este entorno de Python aislado.Dependencias de ComfyUI
Puedes ver las dependencias actuales de ComfyUI en el archivo requirements.txt:comfyui-frontend-package después de que la versión correspondiente se estabiliza. Si necesitas cambiar a una versión diferente del frontend, puedes consultar la información de la versión aquí.
Dependencias de nodos personalizados
Gracias a los esfuerzos de muchos autores en la comunidad de ComfyUI, podemos extender la funcionalidad de ComfyUI usando diferentes nodos personalizados, lo que permite una creatividad impresionante. Por lo general, cada nodo personalizado tiene sus propias dependencias y un archivorequirements.txt separado.
Si usas ComfyUI Manager para instalar nodos personalizados, ComfyUI Manager normalmente instalará automáticamente las dependencias correspondientes.
También hay casos en los que necesitas instalar las dependencias manualmente. Actualmente, todos los nodos personalizados se instalan en el directorio ComfyUI/custom_nodes.
Debes navegar al directorio del complemento correspondiente en tu entorno de Python de ComfyUI y ejecutar pip install -r requirements.txt para instalar las dependencias.
Si usas la versión Portable para Windows, puedes usar el siguiente comando en el directorio ComfyUI_windows_portable:
Conflictos de dependencias
Los conflictos de dependencias son un problema común al usar ComfyUI. Es posible que descubras que, después de instalar o actualizar un nodo personalizado, los nodos personalizados instalados previamente ya no se encuentren en la biblioteca de nodos de ComfyUI, o que aparezcan ventanas emergentes de error. Una posible causa son los conflictos de dependencias. Puede haber muchas razones para los conflictos de dependencias, como:- Bloqueo de la versión de un nodo personalizado
open_clip_torch==2.26.1), mientras que otros complementos pueden requerir una versión superior (por ejemplo, open_clip_torch>=2.29.0), lo que hace imposible satisfacer ambos requisitos de versión al mismo tiempo.
Solución: Puedes intentar cambiar la dependencia de versión fija a una restricción de rango, como open_clip_torch>=2.26.1, y luego reinstalar las dependencias para resolver estos problemas.
- Contaminación del entorno
PyTorch pero requerir versiones diferentes de CUDA, y el complemento que se instale después romperá el entorno existente.
Soluciones:
- Puedes intentar instalar manualmente versiones específicas de las dependencias en el entorno virtual de Python para resolver este tipo de problemas.
- O ejecuta una segunda instancia de ComfyUI en su propio entorno de Python cuando necesites versiones incompatibles: los complementos se cargan en el entorno en el que corre ComfyUI, así que un entorno aparte por sí solo no ayuda.
- Intenta instalar los complementos uno por uno, reiniciando ComfyUI después de cada instalación para observar si ocurren conflictos de dependencias.
- Versiones de dependencias de nodos personalizados incompatibles con las versiones de dependencias de ComfyUI
Modelos
Los modelos son una dependencia de recursos importante para ComfyUI. Varios nodos personalizados y flujos de trabajo se construyen en torno a modelos específicos, como la serie Stable Diffusion, la serie Flux, Ltxv y otros. Estos modelos son una base esencial para crear con ComfyUI, así que necesitamos asegurarnos de que los modelos que usamos estén disponibles correctamente. Normalmente, nuestros modelos se guardan en el directorio correspondiente dentro deComfyUI/models/. Por supuesto, también puedes crear un extra_model_paths.yaml modificando la plantilla para que ComfyUI reconozca rutas de modelos adicionales.
Esto permite que varias instancias de ComfyUI compartan la misma biblioteca de modelos, reduciendo el uso de disco.
Software
Una aplicación avanzada como ComfyUI también tiene dependencias de software. Se trata de bibliotecas de código de programación y datos que la aplicación necesita para funcionar. Los Nodos Personalizados son ejemplos de dependencias de software. En un nivel aún más fundamental, el entorno de programación de Python es la dependencia última de ComfyUI. Se requiere la versión correcta de Python para ejecutar una versión concreta de ComfyUI. Las actualizaciones de Python, ComfyUI y los Nodos Personalizados se pueden gestionar desde la ventana del Administrador de ComfyUI.