Блог создается при поддержке Failover Bar и Anarchic Pro

Локальные нейросети для генерации изображений

November 25, 2024 . 5 минут на чтение статьи

Каждый в какой-то момент задумывался, как ему сгенерить картинку с помощью нейросетей так, чтобы она принадлежала тебе, а не создателям Kandinskiy, Midjourney и других популярных нейросетей. Ну или, по крайней мере, чтобы свидетельств генерации вами этого изображения не осталось в логах публичных AI-сервисов.

Для этого можно использовать Stable Diffusion. Но есть нюанс. В отличие от текстовых нейронок, которыми можно пользоваться через API и WebUI, для изображений точно нужен какой-то графический интерфейс. Можно, конечно, писать всё в питоне, но это максимально не интуитивно, и заставляет руками собирать по гитхабу необходимые утилиты, которые иначе запакованы в UI в виде "расширений".

Я проверил несколько готовых UI для Stable Diffusion, чтобы вам не пришлось. Пойдем от сложных навороченных (которые, скорей всего, и будут использоваться в проде), к самым простым (чтобы быстро получить картинку).

Прежде, чем начнем:

  • Вам все еще нужен приличный GPU с хотя бы 8 гигабайтами видеопамяти. По сравнению с Midjourney, результатов генерации все еще придется ждать очень, очень долго.

  • Для владельцев Macbook. Так как в свежие Mac на платформе M нельзя воткнуть внешний GPU от Nvidia Tesla, или "народную" видеокарту типа RTX 3080, все эти UI не имеют готовых сборок под Mac. Я их тоже не тестировал, так как мой личный Mac всё ещё под Intel, и мощности его дискретной видеокарты едва хватает на запуск Disco Elysium. Если у вас есть только Macbook, и вам нужен упрощенный интерфейс для Stable Diffusion, посмотрите на Diffusion Bee.

Чекпоинты и лоры

Кроме программы-UI, вам нужны файлы состояния нейросетки, из которых вы будете генерировать изображения.

Конечно, вместе c UI идут какие-то базовые настройки. Но обычно они сосут. Без загрузки дополнительных моделей, ваши картинки будут выглядеть максимально бесполезно и кринжово. Например, вот как выглядит дефолтный промт ConfyUI "из коробки":

  • Для работы вам понадобятся так называемые checkpoints. Так как на своем домашнем компьютере невозможно за приемлемое натренировать нейросетевую модель, их придется откуда-то добыть. Самый простой способ достать чекпоинты для аниме и NSFW - загрузить их с Civitai. Это большие файлы, размеры начинаются от 5 гигабайт. Загружаете их в директорию с чекпоинтами и ваш UI их подхватывает.

  • Кроме чекпоинтов могут понадобиться LORA. Пример использования LORA для ComfyUI ессть здесь. Эта статья - обзорная, поэтмому я не могу рассказать про каждый из интерфейсов подробно, вам придется разбираться самостоятельно. Смысл в том, что вначале ты грузишь чекпоинт, и потом передаешь его в лору.

Например, вот что получается при одновременном применении двух моделек со скриншотов, приведенных выше, по запросу "beatiful asian girl with katana, standing in the middle of a burning magical cyberpunk city". Это не самые лучшие результаты генерации, но достататочно безопасные, чтобы не объяснять их Роскомнадзору.

Для профессионалов и продакшена

Первое место: ComfyUI

Ссылка на GitHub

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

Проблемы: очень сложно, если надо быстро что-то запустить, ни в чем не разбираясь.

Прямо на GitHub выложена готовая версия для Windows + Nvidia. Просто качаешь, распаковываешь, запускаешь — и у тебя готовый генератор картинок. Важно, что для работы готовой сборки все еще нужно загрузить чекпоинты в директорию ComfyUI/models/checkpoints внутри дистрибутива. Скачать актуальные чекпоинты Stable Diffusion можно здесь.

Другой важный лайфхак: если у вас тоже запущено 100500 серверов на локальном компьютере, и дефолтные порты типа 8080 давно закончились, то поменять порт можно в файле run_nvidia_gpu (или run_cpu), добавив порт вот так: .\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --port 27777. Это относится и ко всем остальным UI с веб-интерфейсом, как прописывать в них порты - оставлю читателю этой статьи в качестве упражнения.

StableSwarm UI

Ссылка на GitHub

Упрощенный фронтенд к ComfyUI для тех, кому нужно быстро нагенерить картинку.

Достаточно расширяем на манер ComfyUI, но прост в использовании на уровне А1111. Можно объединять несколько компьютеров, чтобы генерить картинки быстрее.

Изначально проект поддерживался самими Stability AI, но потом они чего-то не поделили, и автор проекта переехал в свой личный репозиторий.

Нет готового билда, чтобы сразу запускать. В приниципе, такому молододму проекту это можно простить. Нужно установить по инструкции, инструкция есть в README.

Stable Diffusion WebUI ("A1111")

Ссылка на GitHub

Самый популярный интерфейс, в народе называющийся A1111. Это его оригинальная версия - доверенная, проверенная, зарекомендовавшая себя, в отличие от множества кастомных форков.

Куча расширений и настроек. Довольно стабильный.

Выжигающая мозг светлая тема по-дефолту. Кто вообще еще использует светлые темы?

Установка описана в инструкции. Для Windows есть готовая сборка, для Linux придется повозиться в терминале.

SD.Next

Ссылка на GitHub

Форк A1111 с более свежими фичами, дополнительными моделями и возможностью выбора между Modern UI и Standard UI.

Темная тема по-умолчанию.

С инсталляцией придётся повозиться, потому что делается она через консоль и требует клонирования репозитория..

Modern UI:

Standard UI:

Для новичков

InvokeAI

Ссылка на GitHub

Позволяет быстро сгенерировать картинку и имеет некоторое количество настроек. Пытается развиваться в сторону редактора графа фильтров, как ConfyUI, только с более "человекопонятным" интерфейсом. С точки зрения визуального дизайна - самый приличный интерфейс из всех в этом топе.

Есть автоматический инсталлятор.

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

Fooocus

Ссылка на GitHub

Самый новичковый интерфейс из всех. Есть поле для ввода промпта, и поле для отображения картинки, всё.

Есть готовый файл для простой установки и запуска на Windows.

Автоматически улучшает ваши промпты с тем же вайбом, как это делает Midjourney.

Настроек почти никаких нет, но и не нужно (отсутствие настроек - это фича).



🍺 Поблагодарить автора

Не забывайте подписаться на наши ресурсы, там есть ништяки: