ComfyUI config: обзор файлов настроек и путей моделей — вопрос о слое. Параметры сервера живут во флагах запуска, поиск моделей — в YAML, приложение Desktop — в своём окне Settings, Manager — в config.ini. Ниже пять маршрутов выбора, полный YAML, команда и две проверки.
Пять маршрутов выбора слоя настройки
Один файл «config для всего ComfyUI» искать неудобно: у сервера, поиска моделей, приложения и Manager разные точки настройки. Начните с задачи.
| Задача | Где менять | Что проверять |
|---|---|---|
| Добавить каталог уже скачанных checkpoint к ручной установке core | YAML с base_path и checkpoints плюс флаг --extra-model-paths-config |
Строка Adding extra search path checkpoints в логе и имя модели в Load Checkpoint |
| Поменять output ручной установки | Флаг --output-directory |
Команда запуска содержит нужный путь; файл после генерации появляется там |
| Общие модели нескольких новых Comfy Desktop instances | Desktop Settings → Storage → Shared Models → + Add Shared Directory | Каталог виден в списке; значок DOWNLOADS отдельно определяет место новых скачиваний |
| Общая папка вывода Desktop | Desktop Settings → Storage → Shared Output | В панели указан выбранный путь; это настройка приложения |
| Политика Manager | config.ini, путь показан в startup log | Редактируется файл из лога; не понижать security_level ради настройки модели |
В документации Comfy Desktop описано, что панель настроек делится на пять вкладок: Preferences, Updates, Storage, Advanced и Logs. Вкладка Storage устроена вокруг идеи sharing: вместо изолированных моделей, входов и выходов у каждого instance вы задаёте общие каталоги, доступные всем. Каждый каталог в Shared Models сканируется всеми instance, а новые модели скачиваются в тот, что помечен значком DOWNLOADS. Кнопка + Add Shared Directory добавляет ещё один каталог моделей, а меню ⋯ на строке каталога позволяет назначить его целью загрузок или убрать из списка; удаление каталога сохраняет файлы на диске.
Вкладка Advanced в той же документации отвечает за Default Install Location, PyPI Mirror URL, переключатель китайских зеркал Git и PyPI, аппаратное ускорение отрисовки Desktop и Cache Directory. Смена аппаратного ускорения требует перезапуска приложения. Вкладка Logs даёт кнопку Open logs folder, которая открывает каталог с app.log.
Для ручной установки core слой другой: пути задаются флагами командной строки. В файле comfy/cli_args.py проекта ComfyUI определены --base-directory для базового каталога моделей, custom_nodes, input, output, temp и user, а также --extra-model-paths-config, принимающий один или несколько YAML-файлов. Флаги --output-directory, --temp-directory, --input-directory и --previews-directory переопределяют соответствующие каталоги поверх --base-directory. Отдельно есть --user-directory с абсолютным путём и --models-directory.
Пятый маршрут — Manager. В документации ComfyUI-Manager сказано, что начиная с V3.38 Manager использует защищённый системный путь: для ComfyUI v0.3.76+ с System User API это <USER_DIRECTORY>/__manager/, а для более старых версий — <USER_DIRECTORY>/default/ComfyUI-Manager/. Без опций <USER_DIRECTORY> по умолчанию равен ComfyUI/user и задаётся флагом --user-directory. Путь к config.ini показывается в сообщениях startup log.
Полный YAML, абсолютные пути и команда
Практический случай — ручная установка core на Linux. ComfyUI расположен в /home/valery/ComfyUI. Уже скачанный checkpoint лежит в /home/valery/zc-models/checkpoints/sd_xl_base_1.0.safetensors. В соседних /home/valery/zc-models/loras и /home/valery/zc-models/vae находятся соответствующие файлы, если они нужны workflow. Пример не скачивает и не создаёт веса; имя checkpoint должно совпадать с реально имеющимся файлом.
Создайте /home/valery/ComfyUI/zc_models.yaml со всем следующим содержимым:
zc_shared:
base_path: /home/valery/zc-models/
checkpoints: checkpoints
loras: loras
vae: vae
zc_shared — имя раздела, не имя ноды. checkpoints внутри него — тип каталога; справа задан подпуть относительно base_path. Официальный example-файл проекта показывает ту же структуру: base_path указывает на существующую установку или центральную папку с моделями, а ключи вроде checkpoints, loras, vae задают подпути. Ключ is_default помечает папки, которые должны идти первыми и использоваться как каталоги по умолчанию, например для загрузок.
Файл специально назван zc_models.yaml, поэтому передаётся явно:
cd /home/valery/ComfyUI
python main.py --extra-model-paths-config /home/valery/ComfyUI/zc_models.yaml --disable-auto-launch
Это инструкция для окружения Python, в котором установлена данная копия ComfyUI. Для Windows Portable используется его embedded Python и собственный каталог; запускать системный python из Linux-примера там не нужно. Если ваша копия использует стандартный extra_model_paths.yaml в корне, официальная инструкция допускает переименование example-файла; здесь показан явный альтернативный путь.
Две проверки: строка loader и модель в списке
Проверка №1, до выбора модели: в startup log должна появиться строка Adding extra search path checkpoints /home/valery/zc-models/checkpoints. Это эталон, выведенный из текущего loader. Если строки нет, применение нужного YAML не доказано: проверьте точную команду и путь. Если есть строка с другой папкой, исправьте base_path или подпуть. Ошибка YAML останавливает чтение раньше этой проверки.
Проверка №2, после запуска нужного экземпляра: откройте Load Checkpoint и найдите sd_xl_base_1.0.safetensors. Если путь в логе верен, а имени нет, убедитесь, что именно этот файл существует в checkpoints и не лежит в лишней вложенной папке. Видимость файла не доказывает совместимость любого workflow: архитектуру графа и модель выбирают отдельно. Для этих двух проверок генерация не требуется.
Как loader собирает путь, видно в utils/extra_config.py проекта ComfyUI: он читает YAML, берёт base_path, раскрывает переменные окружения и ~, при относительном пути присоединяет каталог самого YAML, затем для каждого ключа соединяет base_path с подпутём, нормализует результат и регистрирует поисковый путь через folder_paths.add_model_folder_path. Перед регистрацией в лог идёт строка Adding extra search path. Относительный base_path считается от каталога YAML. Подпути категорий добавляются к base_path; при отсутствии base_path относительные подпути считаются от каталога YAML. В этом примере base_path абсолютный, поэтому перенос самого YAML не меняет заданные пути моделей.
Новый Desktop и старый archived desktop README
В новых версиях Comfy Desktop общие модели нескольких установок настраиваются через Desktop Settings → Storage → Shared Models. Старый archived Desktop README рассматривайте отдельно: сначала проверьте поколение установленного приложения. Для текущей оболочки используйте интерфейс и data locations из актуальной официальной страницы Desktop Settings.
Документация Comfy Desktop приводит такие каталоги данных. На Windows: app data в %APPDATA%\Comfy Desktop, логи в %APPDATA%\Comfy Desktop\logs, установки в %LOCALAPPDATA%\Comfy-Desktop\ComfyUI-Installs, общие данные в %LOCALAPPDATA%\Comfy-Desktop\ComfyUI-Shared. Новые установки кладут крупные данные под %LOCALAPPDATA%\Comfy-Desktop; если каталоги ComfyUI-Installs или ComfyUI-Shared уже были в профиле пользователя до обновления, они сохраняются на прежнем месте. При установке приложения на другой диск крупные данные живут в <drive>\Comfy-Desktop\.
На macOS: app data в ~/Library/Application Support/Comfy Desktop, логи в ~/Library/Logs/Comfy Desktop, установки в ~/ComfyUI-Installs, общие данные в ~/ComfyUI-Shared. На Linux: config в ~/.config/comfyui-desktop-2, data в ~/.local/share/comfyui-desktop-2, cache в ~/.cache/comfyui-desktop-2, state в ~/.local/state/comfyui-desktop-2, логи в ~/.config/comfyui-desktop-2/logs. Документация поясняет, что на Linux Electron хранит пользовательские данные под именем пакета comfyui-desktop-2.
Различие слоёв удобно держать в таблице.
| Слой | Где живёт настройка | Кто её читает |
|---|---|---|
| Сервер core | Флаги main.py |
Процесс ComfyUI при старте |
| Поиск моделей | YAML и --extra-model-paths-config |
Loader utils/extra_config.py |
| Приложение Desktop | Desktop Settings, вкладки Storage и Advanced | Оболочка Desktop |
| Manager | config.ini в __manager |
ComfyUI-Manager |
Manager: config.ini, уровни и переменные
В документации ComfyUI-Manager перечислены файлы конфигурации: config.ini для базовых настроек, channels.list для списка каналов, pip_overrides.json для пользовательских сопоставлений pip-пакетов, pip_blacklist.list для запрета установки пакетов, pip_auto_fix.list для авто-восстановления, а также каталоги snapshots/, startup-scripts/ и components/.
В config.ini есть секция [default] с ключами git_exe, use_uv, default_cache_as_channel_url, bypass_ssl, file_logging, windows_selector_event_loop_policy, model_download_by_agent, downgrade_blacklist, security_level, always_lazy_install и network_mode. Режим сети принимает значения public, private и offline; в закрытой сети используется приватная база нод через channel_url, а офлайн-режим внешних соединений не делает и опирается на кэш.
Уровни безопасности описаны так: strong не разрешает высокорисковые и средние функции, normal не разрешает высокорисковые и оставляет средние, normal- не разрешает высокорисковые при указанном --listen с адресом, не начинающимся с 127., weak разрешает всё. К высокому риску документация относит установку по git url, pip install, установку custom nodes вне канала по умолчанию и починку custom nodes; к среднему — удаление и обновление, установку custom nodes из канала по умолчанию, восстановление и удаление снапшота, перезапуск; к низкому — обновление ComfyUI.
Переменные окружения Manager: COMFYUI_PATH для пути установки, GITHUB_ENDPOINT для обратного прокси GitHub, HF_ENDPOINT для обратного прокси Hugging Face. В примерах документации показано перенаправление запросов GitHub через прокси и смена endpoint Hugging Face. Для ускорения загрузок Manager можно настроить на aria2 по отдельному руководству проекта.
Отдельно в документации Manager описан файл extra_model_paths.yaml: настройки применяются по секции, помеченной is_default, а ключи custom_nodes и download_model_base задают путь установки custom nodes и путь скачивания моделей.
Частые вопросы
Где находится config.ini у ComfyUI-Manager?
Путь к файлу показывается в сообщениях startup log. Начиная с V3.38 Manager использует защищённый системный путь: для ComfyUI v0.3.76+ с System User API это <USER_DIRECTORY>/__manager/, для более старых версий — <USER_DIRECTORY>/default/ComfyUI-Manager/. Без опций <USER_DIRECTORY> равен ComfyUI/user и задаётся флагом --user-directory. Редактируйте файл из лога.
Как подключить общую папку моделей к ручной установке ComfyUI?
Создайте YAML с секцией, где указаны base_path и подпути вроде checkpoints, loras, vae. Передайте его флагом --extra-model-paths-config при запуске main.py. Loader прочитает файл, соединит base_path с подпутями и зарегистрирует поисковые пути. Проверьте строку Adding extra search path в логе.
Почему модель не появляется в Load Checkpoint после правки YAML?
Сначала убедитесь, что в логе есть строка Adding extra search path с нужным каталогом. Если строка есть, а имени нет, проверьте, что файл лежит именно в этом каталоге и не спрятан в лишней вложенной папке. Ошибка синтаксиса YAML останавливает чтение раньше регистрации путей. Видимость файла не доказывает совместимость с конкретным workflow.
Где Comfy Desktop хранит данные на Linux?
Config в ~/.config/comfyui-desktop-2, data в ~/.local/share/comfyui-desktop-2, cache в ~/.cache/comfyui-desktop-2, state в ~/.local/state/comfyui-desktop-2, логи в ~/.config/comfyui-desktop-2/logs. Документация поясняет, что Electron хранит пользовательские данные под именем пакета comfyui-desktop-2. Общие модели и вывод задаются на вкладке Storage.
Как поменять каталог вывода у ручной установки?
Используйте флаг --output-directory при запуске main.py; он переопределяет соответствующий каталог поверх --base-directory. Для временных файлов есть --temp-directory, для входных — --input-directory, для превью — --previews-directory. Проверьте, что команда запуска содержит нужный путь.
