ИИгорь
146 subscribers
40 photos
29 videos
3 files
32 links
Новости и техники ИИ и 3D
Как поставить Stable Diffusion: https://yangx.top/Aigor3D/20
加入频道
Пост для тегов

#новости
#гайды
#текст
👍1
Главная новость прошлой недели – это, конечно, утечка незапланированный релиз превью версии новой модели SDXL от Stable Foundation.

Попробовать ее можно уже сейчас и на дискорде Stable Diffusion с помощью одного из ботов, или еще проще на сайте clipdrop.

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

Хотя официальной поддержки модели в Automatic1111 пока нет, как только модель выложили на торренты, сразу появился пайплайн для ComfyUI, в котором автор по своему разумению пытался наладить взаимодействие между двумя компонентами этой модели. Люди, приближенные к разработке модели, сразу сказали, что автор не угадал, и что официальный пайплайн будет выглядеть совсем иначе, да и текстовый энкодер нужен другой, и вообще релизная версия, которую планируют выпустить 18 июля, будет принципиально отличаться от тестовой не только по времени обучения, но и по более низкоуровневым принципиальным параметрам.

Несмотря на все это, даже со старым пайплайном на базовой модели получаилсь изображения, которые превосходили результаты SD 1.5 по многим параметрам. Меня впечатлило намного лучшее понимание промпта моделью. Она может генерить группы людей, чтобы они не были братьями-близнецами. Ну и, коечно, базовый размер 1024 пикселей — это другое дело. К тому же надо помнить, что это базовая модель. Люди, которые с разочарованием сравнивают SDXL с модельками с Civitai, кажется, стали забывать, как выглядела базовая 1.5.

Хочется верить, что эту модель не постигнет судьба SD 2, и мы увидим много хороших кастомных моделей на ее основе.
#новости
👍4
Желающим попробовать SDXL на собственном железе понадобится пока что установить ComfyUI. Рекомендую готовую portable сборку из раздела с релизами. Также вам понадобится, из торрента файлы sd_xl_base_0.9.safetensors и sd_xl_refiner_0.9.safetensors, все 90 гигов качать не надо. Модели надо положить в /models/checkpoints.

Настройка Комфи под SDXL содержится в json файле, который я приложил к этому посту. Автор этой схемы - уважаемый коллега @mrreplicart.
Похоже, что этот сетап намного ближе к тому, как на самом деле должна работать SDXL.
Я немного поменял сетап, отключил вывод промежуточного изображения, чтобы ускорить генерацию, добавил шагов, чтобы замедлить генерацию, добавил мой дежурный негативный промпт, вывел непонятные мне новые параметры размера из текстового декодера, чтобы посмотреть на что, они влияют.
👍4
Высокое разрешение

Когда SD только вышел, меня немного разочаровало маленькое разрешение изображений, на которых была обучена модель, и как следствие разрешение картинок, которые она по умолчанию лучше всего генерит. Это всего 512 x 512 пикселей. При попытке увеличить разрешение, возникала всем известная проблема, с двухголовыми персонажами, повторяющимися объектами и т.д.

С тех пор вышло много инструментов, которые позволяют делать изображения высокого разрешения. Сначала это были многочисленные ИИ-апскейлеры на базе GAN, и Хайрез Фикс, который начинает генерить изображение в низком разрешении, а потом переключается на более высокое, но не слишком, иначе может кончиться видеопамять. Потом появился Ultimate SD Upscaler, который после апскейла режет изображение на мелкие куски, которые нейронка может переварить, их обрабатывает по отдельности, и потом обратно сшивает. Этот метод позволяет делать изображения вообще любого разрешения, если у вас есть время ждать просчета всех тайлов.

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

А потом вышел Tile ControlNet, который не дает нейронке забывать общую картинку. О нем в следующем посте.

Я хотел приложить картинку с Бэтменом из Бэтменов, чтобы проиллюстрировать, как не надо делать, в итоге поработал по ней немного инпэинтиногом, чтобы скрыть швы между тайлами, и очень даже интересно получилось.
#текст
👏2👍1
Как генерить в 4к

В продолжение предыдущего поста, делюсь любимым способом делать изображения супер-высокого разрешения.

1. Сначала генерим хорошее исходное изображение размером в половину Full HD – 960 x 540. Можно использовать HiresFix, если получается не супер. Надо добиться, чтобы картинка максимально вас устраивала по композиции.

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

2. Отправляем картинку в img2img, вместе с промптом, ставим разрешение FullHD (1920x1080) обязательно включаем ControlNet в режиме Tile. Как я говорил, это позволяет сетке не забывать, как изображение выглядело изначально. Секрет в том, что этот контрол нет работает даже без тайлов. Он позволяет хорошо сохранять композицию даже на высоких значениях денойза. Я предлагаю начать со значения 0.7 и смотреть что будет. Если картинка слишком пестрит и меняется, понижать денойз, если получается недостаточно детализированная и четкая – повышать. Можно результат снова отправлять в Img2Img и прогонять по второму и третьему разу без апскейла. Так я и изменил Бальмору до неузнаваемости.

3. Снова апскейлим то, что у нас в итоге получилось, до 4k (3840×2160). На этот раз нам придется использовать Ultimate SD Upscaler, потому что видеопамяти видюхи скорее всего у вас не хватит, чтобы обработать такую картинку за раз. Стандартный тайловый апскейлер с контролнетом работать не умеет, к сожалению. Поставьте в настройках USDU, какой-то приличный GAN апскейлер, например, UltraSharp, это может повлиять на результат. На этом этапе может быть стоит понизить значение денойза и удалить из промпта объекты, которые генерятся там, где их не должно быть, например, в облаках.

Сразу скажу, то генериться будет долго. У меня на очень быстрой видюхе последний этап занимает примерно минут 6. У кого-то это может занять и полчаса. Ну и как всегда не бойтесь пробовать разные настройки и параметры, самые крутые результаты получаются из happy little accidents.

#гайды
2👏2👍1
00062-1981611024.png
23.5 MB
Вот результат техники из предыдущего поста в оригинальном разрешении - 5440 x 3072, т.е. это даже больше, чем 4к.

Гайд я писал с рассчетом на людей, которые хотя бы более-менее уже ориентируются в Auto1111. Если у вас какой-то этап не выходит, пишите, объясню более подробно.
👍2
Как поставить Stable Diffusion?

Это несложно, шагов на первый взгляд много, но все они простые.
Необходимо иметь современную видеокарту, как минимум c 4 гб памяти, желательно Nvidia, желательно RTX. Инструкции по установке для AMD можно найти на гитхабе Automatic1111.

1. Скачиваем и устанавливаем обычный гит (64 бит, не портабл) и гитхаб десктоп. Регаемся на гитхабе, логинимся в гитхаб десктоп. Если не хочется, то можно использовать традиционную командую строку, это одновременно и проще и сложнее, по крайней мере, региться не надо.

2. Заходим на Гитхаб Automatic1111, самого популярного интерфейса для SD, жмем кнопку < > Code – Open in GitHub Desktop. В проге выбираем, где у нас будет папка с сеткой. Желательно на быстром и просторном диске.

3. Скачиваем правильную версию Python. Нужно именно 3.10.6, на этой странице последний вариант. При установке обязательно надо поставить галку Add Pyhon 3.10 to PATH, чтобы SD мог его найти.

4. Скачиваем модель. Например, Realistic Vision. Для стилизованных картинок мне нравится RPG Artist Tools. Файлы моделей кладем в папку с нейронкой в подпапку models\stable-diffusion.

5. Скачиваем VAE. Это, грубо говоря, немного улучшенный переводчик с нейросетевого на человеческий. Улучшает контраст и делает лучше лица. Некоторые модели с пометкой NoVae, вообще без этого файла будут работать некорректно и выдавать непонятный мусор. Кладем в models\VAE

7. Запускаем файл Webui-user.bat. При первом запуске будет достаточно долгая установка. Минут 20, в зависимости от сокрости интернета. Дальше будет запускаться за несколько секунд.

Можно в принципе генерить, но обязательно посмотрите следующий пост, там важные настроечки. А в этом уже лимит по знакам.

#гайды #какпоставить
🔥9👍2
Важные настройки Automatic1111.
(Это все во вкладке Settings)

1. Stable Diffusion – SD VAE – выбираем VAE, который мы скачали.

2. Там же ставим галку With img2img, do exactly the amount of steps – для лучшего контроля Img2img.

3. Optimizations – Cross attention ставим sdp - scaled dot product. Генериться будет значительно быстрее. Если что, это теперь вместо xformers.

4. Compatibility - For hires fix, use width/height – Проще использовать хайрес фикс для генерации больших картинок.

5. Live previews – можно поставить настройки, как на картинке, чтобы в реальном времени видеть, как картинка генерится. На скорость генерации это почти никак не влияет, я тестил.

Не забываем нажать Apply Settings вверху.
Если что-то не работает, пишите в комменты, будем разбираться.

#гайды #какпоставить
👍6
Раз уж обещал рассказывать про 3д, хочу поделиться классной нейронкой для генерации карт окружения.

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

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

#инструменты
👍53
Stable Diffusion на телефоне*

*при наличии компьютера

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

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

1. Если вы отошли недалеко, и находитесь в одной локальной сети с компьютером (подключены к одному WiFi), надо добавить в файл webui-user.bat параметр --listen. Вот таким образом: set COMMANDLINE_ARGS= --listen (два дефиса пред listen).
Теперь надо запустить сектку и узнать адрес компьютера в локальной сети. Для этого открываем командную строку (Ctrl+R -> CMD), там пишем ipconfig. В строчке IPv4 Address видим свой локальный айпишник. К этому адресу надо добавить порт 7860 через двоеточие, получится примерно так: 192.168.1.3:7860
Теперь это все вставляем в адресную строку браузера на телефоне / ноуте / другом компьютере. Если все сделали правильно, откроется привычный интерфейс, и вы сможете пользоваться SD с другого устройства.

2. Если вы отошли далеко, например, в другую страну, то вместо --listen в файле webui-user.bat пишем --share. Сохраняем этот файл и запускаем, смотрим внимательно в окно с командной строкой, ищем строчку Running on public URL: https://xxxxx.gradio.live
Этот адрес надо скопировать и отправить самому себе. По нему можно подключиться к домашнему компьютеру из любой точки мира, где есть интернет. Можно проверить, отключив вайфай на телефоне и пройдя по ссылке через мобильный интернет. Разумеется, уходя, компьютер с запущенной сеткой придется оставить работать. Наверняка есть способы удаленно разбудить компьютер и через AnyDesk, например, запустить сетку, но это уже другая история.

Напоследок надо сказать, что при включенном удаленном доступе вы не можете устанавливать новые расширения. Это сделано, чтобы злобный умышленник, получивший вашу ссылку, не мог установить и запустить вредоносный код на вашем компьютере. Отключить это можно параметром --enable-insecure-extension-access

#гайды
5🔥1👏1
Нейросети все еще не умеют в текст, но уже лучше стараются.

Нагенерил в SDXL 0.9, это отобранные результаты. Где-то получше, где-то похуже, по сравнению с крокозябрами из SD 1.5, конечно, прогресс заметен. Инересно, как с этим будет в релизной версии. Заодно, протестил работу SDXL в Auto1111. Базовая модель работает хорошо и быстро, но пока не прикрутили имплементацию рефайнера.

Кстати, если очень надо, нормальный текст легко можно генерить с помощью ControlNet.
5