ComfyUI Setup Manager: менеджер профилей вместо бэкапов на 50 ГБ
Разработчик создал инструмент для управления установками ComfyUI, который вместо копирования гигабайтов папок сохраняет небольшие профили с инструкциями воспроизведения рабочей конфигурации. Менеджер умеет устанавливать, обновлять, откатывать и восстанавливать окружения, контролируя зависимости и конфликты пакетов.
Для пользователей ComfyUI это решает реальную боль управления сложными окружениями с хрупкими зависимостями. Подход может стать стандартом для других AI-инструментов с похожими проблемами dependency hell.
Проблема: хаос зависимостей в ComfyUI
Пользователи ComfyUI хорошо знакомы с ситуацией: установил один custom node — три других перестали работать. NumPy обновился, PyTorch заменился, один узел требует старую версию библиотеки, другой — новую. Вчера всё работало, сегодня консоль полна ошибок IMPORT FAILED.
Обновления ещё опаснее: обновить код ComfyUI без зависимостей — фронтенд рассинхронизируется. Обновить зависимости — сломаются старые узлы. Компилируемые расширения добавляют проблем, завязываясь на конкретные версии Python, PyTorch, CUDA или ROCm.
Решение: профили вместо бэкапов
Традиционный подход — держать несколько полных копий рабочих установок с виртуальными окружениями. Работает, но медленно, жрёт место и превращается в хаос. Python venv вообще не предназначены для портативных бэкапов — они должны быть воспроизводимыми.
Разработчик создал ComfyUI Setup Manager — standalone приложение с текстовым интерфейсом (Textual) и полноценным CLI. Ключевая идея: рабочая установка сохраняется как небольшой набор воспроизводимых инструкций, а не как гигантская папка.
Как работает
Формат .comfyuisetup записывает:
- Репозиторий ComfyUI и точный Git-коммит
- Установленные custom nodes и их источники
- Полный список Python-пакетов с версиями
- Совместимость с Python, ОС, PyTorch, ускорителями
- Локальные изменения в коде
- Требования к моделям и workflow (без копирования самих моделей)
При установке профиля менеджер использует проверенные версии пакетов, избегая повторного решения зависимостей для каждого узла отдельно. Затем проверяет зависимости и запускает ComfyUI для верификации импорта узлов.
Обновления работают безопасно: сначала показывается diff изменений, создаётся rollback-снапшот, затем проверяется консистентность. При провале — автоматический откат.
Поддерживаются общие библиотеки моделей и workflow: разные установки (stable/experimental/dev) могут использовать одни чекпоинты, LoRA, VAE без дублирования.
Ограничения и статус
Это не магия: если два узла требуют несовместимые версии одной библиотеки, нужны отдельные установки. Цель — выявлять конфликты раньше, не дать незаметно сломать рабочую систему, упростить возврат к стабильному состоянию.
Проект open source (Apache 2.0), есть установщики для Windows, Linux, WSL2, macOS. Автор просит тестировать на некритичных установках и присылать фидбек.
Ключевые выводы
- Управление зависимостями в ComfyUI превратилось в серьёзную проблему — обновление одного узла может сломать несвязанные компоненты
- Хранение полных копий установок с venv неэффективно: медленно, требует много места, сложно управлять
- Профильный подход (сохранение инструкций воспроизведения вместо копий файлов) радикально сокращает размер бэкапов и ускоряет восстановление
- Автоматическая верификация импорта узлов и откат при ошибках критичны для безопасных обновлений
- Общие библиотеки моделей между установками устраняют дублирование многогигабайтных файлов
Автор: Никита Громов · Источник: reddit.com
**Это классический пример того, как DIY-инструмент вырастает из реальной боли.** ComfyUI — мощная, но хрупкая система: Python dependency hell в чистом виде, где обновление одного узла может уронить три других через транзитивные зависимости. Разработчик устал держать по 50 ГБ на каждый «рабочий снапшот» и сделал то, что должно было быть с самого начала.
Подход разумный: сохранять не состояние, а инструкции воспроизведения. Формат профилей напоминает Docker Compose или Nix, только для Python-окружений. Откаты, верификация импортов, diff перед обновлениями — всё то, чего не хватает в vanilla ComfyUI. Проект молодой, баги наверняка есть, но направление правильное. Если зайдёт в комьюнити, может стать де-факто стандартом управления ComfyUI-установками. Попробовать стоит на тестовом окружении — хуже точно не будет.
Комментарии