[ЛОНГ] Делаем нейрохрючево без регистрации и СМС
Думаю многим хотелось побаловаться генерацией изображений, но все, что может предложить интернет - это, в лучшем случае, пара бесплатных генераций, либо плати подписку на сервис, а хотелось бы любой ценой, но бесплатно и желательно без цензуры. Решение подобной дилеммы имеется - накатить завод по производству нейрокак себе на ПК:
Этап первый - ComfyUI:
Это основа, база, с помощью которой вы будете выстраивать процесс генерации из нужных вам частей, но что самое главное она дружит с большинством видеокарт, у нее простой интерфейс и уже готовые шаблоны:
Там же есть ссылка на Github c версией приложения, использующей веб интерфейс, однако я рекомендую установить локальную версию, т.к. у нее слегка более удобный интерфейс, она автоматически качает и кладет по папкам нужные для готовых шаблонов файлы.
Устанавливаем и при первом запуске, если у вас уже не установлен Git, то ComfyUI попросит вас его загрузить, предоставив ссылку на скачивание , тоже качаем и устанавливаем, там будет много этапов, но ничего менять не нужно, просто жмем далее пока не отстанет, после чего навсегда забываем о его существовании (очень вкратце, Git - это система версий для огромного количества приложений, чтоб автоматически обновлять или откатывать версии и компоненты).
Далее, уже в ComfyUI выбираем свою видеокарту, приложение само все для вас установит:
Итак, мы добрались до интерфейса:
Не будем задерживаться и идём сразу вот сюда:
Очень важный фильтр, убирает все шаблоны, работающие через Gemini, Grok и пр. - это платно, это нам не надо😡, к тому же там модели работают через интернет:
Далее фильтруем по популярности и необходимым задачам, в данном случае - текст в изображение:
Да, тут есть не только генерация изображения из текста (text2image), но и редактирование изображения (image2image), изображение в видео (image2video), текст в видео (text2video)и так далее и тому подобное. Но мы, для примера, пока остановимся на вот этой text2image сборке:
После выбора у нас появляется вкладка с самой сборкой и уведомлением об ошибке, нажимаем на это уведомление:
И выбираем скачать все:
В левой части экрана, вот здесь, можно увидеть процесс загрузки:
Пока все это счастье грузится, удалите ноду с ссылками и гайдом по установке. Он нужен для WebUI версии, т.к. в ней нет автоматического раскладывания по папкам, а тут написано что и куда пихать:
После завершения загрузки перезапускаем ComfyUI и Voilà, у вас готовая ИИ модель для генерации изображений, которую уже заранее для вас настроили, причем даже с примерами того как надо вводить промпт:
Пишем по-английски, короткими фразами через запятые: сначала главный объект, потом его детали (внешность, одежда, окружение), затем стиль и свет. В конце добавляем качество, вроде highly detailed, ultra realistic, 8k.
Негативный промпт (в конкретном случает его нет, но будет далее) тоже пишем списком через запятые, только указываем то, чего НЕ должно быть в кадре: плохое качество (blurry, low quality), ошибки (deformed, extra fingers), лишние объекты и артефакты.
Так-же не стоит ставить высокое разрешение, по моим личным тестам fullHD - предел большинства моделей (не всех, например текущая справляется и с QHD в 16:9, но все равно может быть не стабильна), в portrait или 1:1 формате, иначе могут возникнуть артефакты, разрешение выше зачастую уже просто каша. Лучше всего 1024х1024, 800х1200 и 1200х1600 (я чаще всего пользуюсь именно им).
Как тогда генерить в высоком разрешении? Идём в раздел с шаблонами и фильтруем "увеличение изображения" (апскейл) моделей:
Далее тот же процесс но вместо текста мы переносим или выбираем через проводник необходимую для апскейла картинку.
Вот несколько примеров того, что можно нагенерировать с помощью шаблонов:
Все что было выше - крайне базовые настройки для тех кто совсем не хочет заморачиваться, тем не менее готовых шаблонов в ComfyUI хватает для многого.
А дальше начинается настоящий гайд:
Ведь хочется разных стилей, хочется лучше контролировать процесс, детали, нужно нечто более специализированное и... без цензуры. О да, генерировать сиси с писями можно будет какие угодно.
Однако нужно научиться это делать:
Civitai - поиск картинок и загрузка моделей:
Площадка, распространяющая модели, а также где люди делятся результатом с гайдом по его достижению, а это для нас очень важно.
Для начала переходим на вкладку изображений, фильтруем необходимый временной промежуток (я выбрал год) и метод - рекомендую самые забираемые (most collected), т.к. забирают их не просто так, а потому что автор пишет гайд на получение подобного результата:
Если вам нужна генерация NSFW контента (тех самых сись с писями), то я, во избежании ШБ или бана, не стану давать прямую ссылку, но вот этот красный баннер с соответствующим описанием тут не просто так висит:
Выбираем понравившуюся картинку, главное проверьте есть ли необходимое описание c гайдом и ссылками на модели справа от изображения. Я, например выбрал вот эту аниме мадмуазель:
Качаем все модели из списка справа:
После чего надо распихать их по нужным папкам, которые находятся по вот этому пути (если при установке ComfyUI вы не выбрали иной): C:\Users\ISQUI\Documents\ComfyUI\models
Как мы видим все папки проименованы в соответствии с моделями. В моем случае имеется одна Lora и одна Checkpoint модели, соответственно раскидываю я их в эти две папки (какой из файлов Lora, а какой Сheckpoint, написано справа от ссылок на них):
Думаю понятно, что upscale модели в папку "upscale_models", embedding в папку "embeddings" и т.п.
После этого заходим в ComfyUI или перезапускаем если он уже был открыт.
Выстраиваем модель:
Проще всего с нуля выстраивать через встроенный список с поиском:
1. Переносим ноду, что будет загружать основной checkpoint и в списке внутри нее выбираем нужную модель:
2. Добавляем ноду, управляющую слоями CLIP и сразу ставим значение -2:
Подобное значение используется не только для этой генерации, но и в 99,9% случаев.
Что делает нода, можно узнать наведя курсор на ее название.
3. Добавляем загрузчик Lora, так же внутри выбираем нужную модель и настраиваем силу:
Lora, если сильно упростить - это специалист по стилю или деталям. Основной чекпоинт уже готов для использования и спокойно генерирует требуемые изображения, а лора нужна, чтобы привести ее к нужному стилю, добавить необходимые детали и пр. Не редко их добавляют последовательно по несколько штук для комбинации стилей или, например добавления определенных татуировок.
Сила Lora - то как, собственно, сильно она будет влиять на итоговую генерацию. В нашем случае сила 1 и ничего менять не нужно:
4. Добавляем positive и negative промпты:
5. Добавляем KSampler:
6. Добавляем управление разрешением и количеством генераций:
7. Добавляем декодировщик:
8. Добавляем ноду через которую будем смотреть и сохранять изображение:
9. Все это СО-Е-ДИ-НЯ-ЕМ:
10. Настраиваем наше великолепие:
Немного пояснений:
•CFG - то как сильно модель генерация будет соответствовать промпту, чем ниже тем больше креатива.
•Sampler - как именно картинка “очищается” от шума. Разные сэмплеры - это разный характер:
DPM++ 2M (dpmpp_2m) - баланс, чётко, стабильно.
DPM++ SDE (dpmpp_sde) - мягче, кинематографичнее.
Euler (euler) - быстрый, иногда грубый.
Euler a (euler_ancestral) - более хаотичный, креативный.
•Scheduler - как меняется “сила шума” по шагам (на каком шаге сколько шума убирать, насколько плавно идти к финалу).
•Seed - это число, с которого начинается генерация шума (прям как в Minecraft). Один и тот же: seed, промпт, настройки - получишь одинаковую картинку, т.е. буквально 1в1 - как раз то к чему мы идём (как вы могли заметить на одном из скриншотов выше я уже повторил генерацию автора). Справа от поля ввода сида можно изменить то как он будет меняться после генерации и будет ли меняться вообще.
Дальше выставляем разрешение как у меня:
Почему такое? Автор не указал разрешение для генерации, но написал, что использовал HighRez-Fix (генерация -> апскейл -> генерация -> результат):
И скачав его картинку, можно увидеть разрешение, поделив которое на 4 мы и узнаем изначальное.
11. Остался только промпт:
В целом, можно уже не использовать промпт автора, а начудить чего нибудь своего:
Теперь все в ваших руках:
Можно добавить upscale модель в workflow:
Или еще одну Lora, можно скопировать весь Workflow, заменить некоторые части и смотреть какой результат будет при немного разных вводных, тем более есть специальная нода для сравнения изображений, так же имеется куча расширений с кастомными нодами и еще океан всего.
Вот например мне недавно по работе (я проболтался, что настроил себе нейронку на компе), дали задачу всевозможные фотографии сотрудников привести к более официальному виду, как на паспорт, т.е. убрать все руки, аксессуары, обрезать 3:4, чтоб лицо занимало 70-80% изображения, также сохранить название фоток и еще заапскейлить, а их так-то больше 500. С помощью кастомных нодов на сохранение изображения, загрузку изображения, распознавание лица, апскейл и image2image моделей просто выстроил Workflow, что сделал все вышеперечисленное автоматически, а в ручную я бы не только умер прогонять и обрезать каждую фотку, но ещё и не успел бы.
P.S.
Почему так много картинок и текста? - Хотел как можно понятнее объяснить для абсолютного новичка, чтоб ни у кого не было и шанса на ошибку: "распишу, на***, поминутно, где кто берет модели, бл***, кто сломал workflow, бл**, купил Grok, Decode встал. Lora еб****, чрез две недели, бл***, ты умрешь от беспрерывной дрочки на аниме порево."
Какой комп нужен для этого? - Не особо мощный, для комфортной генерации картинок хватит и 8ми гиговой 3060, да даже 2060 на 6гб VRAM должна справиться, просто раза в 2-3 дольше.