[!NOTE] Автоматический перевод Эта статья была автоматически переведена с оригинальной английской версии.

Stable Diffusion на macOS: инструменты для генерации изображений — DiffusionBee, ComfyUI, A1111 и Fooocus

Запуск изображений модели локально на macOS в основном является вопросом выбора инструментальной среды. Draw Things, DiffusionBee, ComfyUI, AUTOMATIC1111 и Fooocus имеют много общего, однако отличаются по способу настройки, поддержке модель, контролю рабочего процесса, наличию расширений и возможностям автоматизации.

Приложение с функцией перетаскивания элементов позволяет быстро начать работу; граф узлов требует больше времени для освоения, но открывает более широкий доступ к пайплайн. На чипах Apple Silicon такие факторы, как само приложение, семейство модель, уровень точности, размер изображения и алгоритм работы, влияют на возможность успешного формирования результата. Выберите интерфейс, соответствующий типу задачи, которую необходимо выполнить, а затем протестируйте конкретные модель и настройки.

Кратко. Используйте Draw Things или DiffusionBee в тех случаях, когда для выполнения задачи достаточно нативного приложения. Обращайтесь к ComfyUI, если необходимо анализировать саму схему, передавать её или автоматизировать процессы. Выбирайте AUTOMATIC1111 только тогда, когда рабочий процесс напрямую зависит от его интерфейса или расширений. Рассматривайте Fooocus как стабильный вариант работы с моделью SDXL, а не как способ получить поддержку текущих модель: официальный проект этого инструмента обеспечивает лишь ограниченную долгосрочную поддержку.

Файл модель не является портабельным рабочим процессом

Слои рабочего процесса локальной генерации изображений

Несколько приложений могут загружаться одновременно. .safetensors файлы, однако наличие совпадающего расширения не гарантирует совместимости. Для полноценной работы пайплайн также может потребоваться определённая архитектура, кодировщик текста, VAE, планировщик, ControlNet, LoRA, токенизатор или конфигурация, специфичная для данного приложения.

Записать единицу выпуска, сгенерировавшую изображение:

Данный запись имеет большее значение, чем популярность приложения. Один и тот же семя всё равно может привести к получению другого изображения после изменения бэкенд, модель, сэмплера или уровня точности.

Объединённая память является общедоступной, а не неограниченной

Бюджет общей памяти для алгоритма диффузии в Apple Silicon

Благодаря Apple Silicon CPU и GPU могут обращаться к одному пулу памяти. Это устраняет необходимость в отдельной границе копирования, однако macOS и все запущенные приложения конкурируют за ту же объёмную базу памяти.

При генерации изображений пиковая нагрузка включает не только чекпоинт веса, но и другие факторы:

peak memory ≈ model components
            + intermediate activations
            + attention and runtime workspace
            + loaded adapters and control models
            + application and OS memory

Разрешение, размер пакета данных, архитектура модель, точность представления значений, процесс увеличения разрешения, инструмент ControlNet, а также наличие загруженных компонентов — всё это влияет на конечный результат. Не стоит покупать или выбирать машину на основе универсальных таблиц с указанием объёма памяти в формате «8/16/32 ГБ». Обязательно протестируйте планируемый рабочий процесс и отслеживайте уровень нагрузки на память. Режим работы, при котором генерация возможна только за счёт постоянного использования области обмена, не является стабильным и комфортным вариантом.

Выбор в зависимости от состояния, которое необходимо контролировать

ИнструментПолезный интерфейс управленияОперационные компромиссы
Рисование объектовНативный интерфейс Apple с встроенными модели, адаптерами, ControlNet и скриптамиГустой интерфейс, специфичный для конкретного продукта; необходимо проверить поддержку именно семейства модель
DiffusionBeeУпакованное приложение для macOS с встроенным рабочим процессом генерацииУдобство превыше детальной проверки на уровне графа; необходимо проверять частоту выпусков и поддерживаемые семейства.
ComfyUIявная графика узлов, рабочие процессы JSON, API, а также пользовательские узлыУвеличивается количество движущихся компонентов; графы и узлы сторонних поставщиков превращаются в зависимости
AUTOMATIC1111Веб-интерфейс на основе форм, скрипты, API, а также обширная площадка для расширенийВ архитектуре Apple Silicon существуют задокументированные ограничения по функционалу и производительности; расширения способствуют расширению границ доверия.
FooocusУпрощённый рабочий процесс SDXL, ориентированный на промптОфициально доступна только в ограниченной версии LTS с исправлением багов; рекомендации для Mac являются неофициальными и прошли лишь минимальную проверку.

Эта таблица не является рейтингом. Она указывает, в каком месте находится состояние рабочего процесса: внутри приложения, между формами или в графе, который можно просмотреть.

Рисование объектов: нативное взаимодействие и скриптинг

Рисование объектов Это приложение для платформы Apple, предназначенное для локальной генерации изображений. В его текущей документации рассматриваются модели, LoRAs, ControlNet, текстовая инверсия, Core ML, а также скриптинг на JavaScript с версионированием.

Используйте этот вариант тогда, когда работа должна оставаться внутри нативного приложения, но требует более высокого уровня контроля, чем возможен с помощью обычного окна промпт. Перед тем как полностью перейти на его использование, необходимо импортировать именно те компоненты модель, которые понадобятся, и протестировать один типичный процесс редактирования, адаптации или управления. Термин «нативный» относится к интерфейсу и способу реализации; он не гарантирует поддержку или оптимальную скорость работы в любой новой архитектуре.

DiffusionBee: готовый к использованию рабочий процесс для macOS

DiffusionBee эта десктопная программа объединяет процессы загрузки пакетов модель и выполнения типовых задач по их генерации. В документации к проекту упоминается поддержка технологий преобразования изображений в изображения, инпейнтинга, аутпейнтинга, ControlNet, LoRA, SDXL, а также отдельных режимов работы с моделью Flux.

Выбирайте этот вариант тогда, когда установка и встроенный интерфейс пользователя имеют большее значение, чем экспорт графа пайплайн. Перед загрузкой крупного модель обязательно ознакомьтесь с последней версией продукта и его точной архитектурой: наличие такой опции, как «поддержка Flux», не гарантирует загрузки всех производных компонентов, квантизация, или вспомогательных элементов.

ComfyUI: рабочий процесс представляет собой артефакт

ComfyUI Этот подход представляет процесс генерации в виде графа узлов. Рабочий процесс может храниться как JSON независимо от его результата, что позволяет сделать пайплайн объектом проверки и версионирования. Кроме того, его экзекьютор способствует избежанию повторных вычислений тех сегментов графа, входные данные для которых не изменились.

Текущая версия ComfyUI Desktop поддерживает процессоры Apple Silicon и управляет собственной средой выполнения, однако официальная документация для macOS по-прежнему обозначает её как бета-версию. Инсталляция через Homebrew также доступна:

brew install comfyui

Выбирайте ComfyUI в тех случаях, когда пайплайн обладает ветвями, переиспользуемыми компонентами, несколькими модели и возможностями автоматизации. Обеспечивайте совместное хранение JSON, версии приложения, версий ядерных узлов, ревизий пользовательских узлов и манифеста модель.

Пользовательские узлы представляют собой исполняемые зависимости, а не безвредные настройки по умолчанию. Обязательно изучите их исходный код, установите соответствующие скрипты, фиксируйте версии компонентов и изолируйте рабочую среду. Граф, созданный неизвестным автором, может содержать код и модели, которые вы ещё не проверяли.

AUTOMATIC1111: совместимость с существующим веб-интерфейсом

AUTOMATIC1111 Stable Diffusion WebUI Предоставляет доступ к настройкам генерации через интерфейс браузера и поддерживает скрипты, расширения, а также API. Выбирайте этот вариант, когда требования предусматривают использование существующего учебного пособия, инструмента автоматизации или расширения.

В официальном руководстве Apple Silicon описаны исключения и ограничения по производительности, в том числе низкая эффективность при обучении моделей. Перед тем как использовать конфигурацию с большим количеством расширений, необходимо убедиться, что требуемая функция корректно работает в целевой версии macOS и версиях PyTorch.

Расширения выполняют код внутри среды приложения. Необходимо фиксировать их версии, тщательно проверять обновления и поддерживать работу сервиса в режиме локального доступа, если только удалённый доступ не предусмотрен специально и защищён.

Fooocus: ограниченная альтернатива эпохи SDXL

Fooocus Он намеренно скрывает множество технических решений за узкоспециализированным рабочим процессом промпт, что может оказаться полезным в тех случаях, когда его стандартные настройки соответствуют поставленной задаче.

Текущий файл README проекта указывает, что Fooocus построен на основе SDXL и получает ограниченную долгосрочную поддержку, заключающуюся исключительно в устранении багов. В нем также говорится, что версия для Mac не проходила тщательных тестов, и установка на эту платформу считается неофициальной. Это делает Fooocus подходящим выбором лишь в рамках уже существующих рабочих процессов, а не стандартным решением для новых архитектур или долгосрочных инфраструктур macOS.

Запустить один типичный тест приемки

Путь принятия решений при выборе рабочего процесса для образов macOS

Используйте небольшой набор данных для проверки перед тем, как полностью перейти на использование данного инструмента:

  1. Воспроизвести базовый результат преобразования текста в изображение на основе сохранённого семени и настроек.
  2. Запустить самую ресурсоёмкую необходимую операцию: инпейнтинг, ControlNet, LoRA, увеличение разрешения или многоэтапную обработку по графу.
  3. Перезагрузить приложение и повторить рабочий процесс, используя сохранённые результаты.
  4. Измерить холодный старт, время генерации, максимальное нагрузка на память и размеры выходного изображения.
  5. Перенести рабочий процесс на чистый пользовательский аккаунт или компьютер и перечислить все отсутствующие зависимости.
  6. Проверить настройки подключения к локальной сети, процесс загрузки данных, параметры аналитики, лицензии и происхождение модель.

Не следует сравнивать инструменты с разными чекпоинты, разрешениями, количеством шагов или точностью и называть полученный результат рантайм бенчмарк.

Практический стандартный вариант

Для исследовательской работы начните с нативного приложения и документации, описывающей модель. Переходите на ComfyUI тогда, когда сам процесс обработки данных становится ценным: когда его необходимо пересмотреть, повторить, автоматизировать или передать кому-то ещё. Используйте AUTOMATIC1111 или Fooocus в тех случаях, когда существующая зависимость делает их специфические функции полезными.

Прочным активом является не скриншот качественного результата, а самый маленький воспроизводимый набор идентичностей, параметров, зависимостей и состояния рабочего процесса модель, способный снова привести к тому же результату.

Список литературы