Talking_Sword Posted January 15 Report Posted January 15 Заметил на данном форуме интерес к нейросетям, но многие тут пользуются онлайн-генераторами. Как мне кажется, онлайн-генераторы не дают всех возможностей. По крайней мере, из того, что видел. В частности видел здесь даже попытки сгенерировать конкретных аниме-персонажей. Эти онлайн-генераторы не будут вам генерировать аниме-персонажей. Это все равно что просить художника, плохо разбирающегося в аниме нарисовать этих же самых персонажей, при этом не предоставив никаких "референсов". Хотя это переродилось в один интересный конкурс. Сейчас я объясню вам, как пользоваться Stable Diffusion. Вы увидете, насколько лучше могут быть результаты. Для начала нужно зарегистрироваться на Civitai. Это будет основной сайт для вас, на котором вы будете брать ресурсы для нейросетей. Также, там сразу же лучше зайти в настройки и включить "Show mature content" в "Content Moderation", там же выключить "Blur mature content", включить все "Browsing Levels". Дело в том, что на сайте по умолчанию действует цензура, из-за которой бывает даже нельзя зайти на страницы некоторых чекпоинтов, не смотря на то, что они не предназначены для генерации исключительно NSFW-контента. Короче говоря, будет просто свободнее ходить по сайту. Далее, идем на такой сайт, как GPUDC.ru. По данному сайту есть даже видео: Но я постараюсь объяснить здесь вкратце. На данном сайте можно арендовать рабочую станцию. Это нужно, если ваш компьютер "не тянет" нейросети. Конечно, лучше делать это на своем компьютере. Кстати, @SealedTimer какая у вас конфигурация компьютера? В первую очередь важно, какая видеокарта. Может у вас такое железо, которое потянет запуск нейросетей полностью локально. Для начала найдите на своем компьютере такую программу, как "Подключение к удаленному рабочему столу". Нужна Windows 7 или новее. Регистрируемся на GPUDC.ru, пополняем баланс, для начала много не надо. Хватит 100 рублей. После этого идем в раздел "Рабочие станции". Выбирете рабочую станцию. Не нужно сразу выбирать дорогой вариант, нам сначала нужно все установить и настроить, так как нам сначала дадут "голую" систему. Дело в том, что платим не за генерацию, а за машинное время, даже если вы ничего не будете делать, у вас все равно будут капать деньги, пока машина работает. А нам для начала нужно все скачать и установить, для этого больших мощностей не нужно. Ищите самый дешевый вариант за 6 рублей в час. После выбора варианта выбирете образ для загрузки "Windows 10 Workstation". После того, как вы арендовали рабочую станцию, начинается подготовка к ее запуску. Процесс это не очень быстрый, по моим прикидкам занимает где-то 12 минут. Обратите внимание, что на открывшейся странице статус автоматически не обновляется! Подождите где-то 8 минут, после чего периодически обновляйте страницу. Внимание! Сразу же, после того, как рабочая станция начинает работать, с вас сразу же начинают снимать деньги, даже если вы не подключились к ней! Поэтому и нужно следить за статусом. После того, как машина запустится появятся данные для подключения. Нам нужен протокол RDP. Открываем на своем компьютере "Подключение к удаленному рабочему столу", подключаемся по предоставленным данным. Далее, перед вами откроется рабочий стол удаленного компьютера. Нужно открыть браузер Edge. Некоторые еще советуют установить Chrome, но мне это кажется ни к чему, так как для наших задач вроде бы и Edge нормально работает, он же почти то же самое, что и Chrome. Для начала зайти сюда, скачать webui_forge_cu121_torch21.7z. Прокрутите страницу ниже, туда, где latest. Я кстати не знаю точно, чем отличаются webui_forge_cu121_torch231.7z и webui_forge_cu124_torch24.7z, когда я скачивал, их вроде еще не было. Скачивать нужно именно на удаленной рабочей станции. Туда конечно есть способы закинуть файлы, но у меня как-то все медленно получалось, скачать прямо там удобнее и быстрее. После скачивания нужно распаковать архив куда-нибудь, куда у нас есть права доступа. Самое тупое, но надежное - на рабочий стол. Для начала запускаем "update.bat". После того, как все обновится, идем на Civitai, тоже не на своем компьютере. Логинимся. Для того, чтобы что-нибудь сгенерировать, нужен чекпоинт. Грубо говоря, это основная модель, в которой содержатся основные данные для генерации. Условные рекомендации от пользователя Forgettable с форума Old-Games.RU: AutismMix_confetti (аниме) Everclear (реализм) Toonify (мультики) Так же, он же позже постил там в теме по нейросетям ссылку на такой чекпоинт, как BeMyPony-SemiAnime2. Он же там же находил еще какой-то интересный чекпоинт, но сейчас не могу найти ссылку. От себя могу порекомендовать Stuffy Mix XL. Может ничего выдающегося в нем и нет, но мне в целом понравился. В некоторой степени иногда рисует даже посимпатичней AutismMix_confetti. Также нам понадобится VAE. Пока слишком сложно будет объяснить, что это такое, если интересно поищите в интернете "stable diffusion vae" (без кавычек). Конечно генерироваться будет и без него, но его желательно использовать. Для чекпоинтов SDXL подойдет SDXL VAE. По идее, он должен подойти и для Pony. А вот для SD 1.5 он не подойдет. Вообще, нужно учитывать совместимость, для SDXL\Pony используются свои модели, для SD 1.5 - другие. Честно говоря, не помню, какие VAE есть для SD 1.5, можно самому найти на Civitai. Пока нам это все равно не нужно. Теперь нужно переместить файлы чекпоинтов из папки загрузки в webui\models\Stable-diffusion\, VAE в webui\models\VAE\. Теперь можно закрыть все на удаленном компьютере и завершить работу удаленной системы через меню пуск. Далее, уже на нашем компьютере в браузере на той странице с арендой выбираем завершение работы с сохранением образа. Сохранение образа займет где-то полчаса. После того, как образ сохранился, можно перейти наконец-то к запуску. Снова идем в раздел "Рабочие станции", теперь уже выбираем рабочую станцию, на которой будем запускать нейросеть. Многие конечно берут RTX для работы с нейросетями, так как они быстро генерируют изображение. Но я бы посоветовал для начала взять 1xP100 16GB за 15 рублей в час. Дело в том, что генерируют-то RTX быстро, но больше времени у нас по моим расчетам будет уходить на работу с интерфейсом, на ввод всяких параметров, а платим мы не за генерацию, а за машинное время, поэтому даже когда вы просто работаете с интерфейсом, у вас "капают" деньги. А P100 дешевле в плане аренды. Теперь в качестве образа для загрузки нужно выбрать "Сохраненный образ 0". Далее запускаем и подключаемся так же, как уже было расказано выше. Запускаться все будет снова так же долго. Ждем и проверяем вручную, запустилось или нет. После запуска снова подключаемся к удаленной рабочей станции, как уже делали раньше. Заходим (на удаленном компьютере, конечно) в папку, куда мы уже раньше распаковали архив, запускаем файл "run.bat". Хотя перед этим нужно проверить, есть ли в папке "webui" папка "localizations", уж не знаю почему, но у меня почему-то этой папки изначально не было, хотя в архиве она присутствовала, такое чувство, что она пропала после запуска "update.bat", без нее у меня ничего не запускалось. Если папки нет, создаем ее. Первый запуск будет идти дольше, чем обычно, нужно подождать. Если все прошло успешно, то откроется браузер, в котором будет веб-интерфейс. Сверху будет два выпадающих списка: Stable Diffusion Checkpoint - выбираем там чекпоинт, который скачали, возможно он будет там уже выбран. SD VAE - как уже говорил, для того, чтобы генерировать картинки, нам очень желателен VAE, выбираем там sdxl_vae.safetensors, который уже скачали. Конечно, там есть пункт "Automatic", но я не знаю, как там реализован автовыбор VAE, мне как-то спокойнее выбирать вручную. И еще, помните, для чекпоинтов SDXL нужны свои VAE, для SD 1.5 - свои, и не только VAE, для LoRA и некоторых других вещей то же самое. Вообще, SDXL вроде как совместимо с Pony, у меня вроде SDXL-модели работали с LoRA от Pony и наоборот, и что SDXL, что Pony работали с SDXL VAE. А вот для чекпоинтов SD 1.5 нужно будет скачать другой VAE, но мы сейчас будем использовать SDXL. Ниже идет панель со вкладками: txt2img, img2img и т.д. - это другие режимы, пока они нам не нужны, разве что PNG Info может пригодится - на этой вкладке можно посмотреть параметры генерации из другого изображения, созданного нейросетью, но из любого изображения, даже если оно было создано нейросетью вынуть параметры нельзя, нужно, чтобы они были прямо в файле изображения, они могут удалиться при редактировании, конвертировании в другой формат (например, JPEG), ну и сам автор может удалить такие метаданные из файла. Там же есть кнопка "Send to txt2img", которая позволяет автоматически заполнить поля данными из изображения на вкладке генерации. Но с этим нужно быть аккуратней - у автора картинки могут быть файлы, которых нет у вас, также могут "подхватиться" имена файлов, которые отличаются от ваших, благодаря чему будет генерироваться что попало. Но удобно использовать, чтобы скопировать параметры с картинок, которые вы генерировали раньше. Ниже два поля для ввода запроса - Prompt и Negative Prompt. В Prompt нужно вводить то, что мы хотим видеть на картинке, В Negative Prompt - то, что НЕ хотим видеть, иногда очень полезно. Как заполнять эти поля, объясню ниже. Далее выпадающий список "Sampling method" - выбор семплера. Forgettable с форума Old-Games.RU советовал использовать "Euler a". Sampling Steps - количество шагов. По идее, чем больше, тем качественее. Но слишком много тоже говорят ни к чему, вряд ли нужно больше 60. По идее, самый популярный вариант - 20-25, скорее нужно начать с такого. Ниже разрешение картинки - выбираем из списка: Спойлер 1024 x 1024 1152 x 896 896 x 1152 1216 x 832 832 x 1216 1344 x 768 768 x 1344 1536 x 640 640 x 1536 (можно выставить и другое, но, скорее всего, на выходе будет брак, и да, это все для моделей SDXL, для SD 1.5 там другие, более низкие) CFG Scale - не очень понятный для меня параметр. Скажу только то, что слишком большие его значения дают "наркоманский" результат. Здесь есть объяснение данного параметра, если интересно. На мой взгляд, лучше всего выбирать значения между 3-7. Слишком низкие значения тоже нежелательны - картинка будет блеклой и "унылой". Оптимальное значение будет наверно 7. Некоторые чекпоинты "чувствительны" к этому значению, больше семи там начнется уже полная наркомания, для них сгодится что-то вроде трех, для других 7 - что-то вроде среднего значения, там иногда можно поднять и выше - нужно эксперементировать. Seed - случайное число, нужное нейросети для того, чтобы сгенерировать картинку. Одинаковые значения Seed дают похожие картинки (в теории), если остальные параметры генерации совпадают, в том числе и запрос, то картинки и вовсе будут одинаковые. Соответственно разные значения будут давать разные картинки. По умолчанию там стоит значение "-1" (минус один) - это означает, что число каждый раз будет генерироваться случайно. Рядом есть кнопка с зелеными стрелочками по кругу - взять число с предыдущей сгенерированной картинки. Эта кнопка очень полезна, если вы сгенерировали какую-нибудь картинку, но вам что-то не понравилось, вы решили поменять параметры генерации. Тогда очень желательно нажать эту кнопку, чтобы картинка не поменялась радикальным образом, чтобы можно было только подкрутить какие-нибудь параметры, сохраняя "общий вид" картинки. Кнопка с кубиком вбивает значение "-1", как мы уже знаем, это случайное число каждый раз. Значение в это поле можно вписать даже вручную, все, что не равно "-1" - какое-то фиксированное значение, "-1" - случайное. Остальное на данном этапе нам пока не нужно, можно изучить потом. Теперь о том, как писать запросы. Тут все зависит от того, знакомы ли вы с таким сайтом, как Danbooru и\или его аналогами. Если вы пользовались такими сайтами, то видели, что к каждой картинке на Danbooru (и других таких сайтах) идет куча тегов, так вот, запрос в Stable Diffusion будет составляться из таких же ключевых слов, как на данных сайтах. И да, ниакого Русского языка, забудте об этом. Лично я открыл для себя Danbooru еще в 2009 году, поэтому для меня это все было уже "как родное". Единственное что, на *booru-сайтах стандарт - теги разделяются пробелами, а пробелы в самих тегах заменяются нижним подчеркиванием "_". То есть как-то так: "1girl blonde_hair blue_eyes ...". В Stable Diffusion вроде бы нужно использовать пробелы в тегах, а теги разделять запятой как-то так: "1girl, blonde hair, blue eyes, ...". Но тут некоторые говорят, что не все так однозначно, якобы наоборот, в Stable Diffusion все нужно писать так же, как на Danbooru - "1girl blonde_hair blue_eyes ...". Тут однозначного ответа не знаю, большинство все-таки разделяет запятыми, поэтому и я так делаю. Лично я еще немало проставлял теги на анмиешных артах - есть самописный аналог Danbooru, работающий локально - не все картинки, которые я туда добавляю, берутся с *booru-сайтов, поэтому и теги бывает неоткуда брать, приходится проставлять самому, поэтому это уже привычный для меня процесс, уже просто вижу картинку и представляю, какие для нее теги подходят. Так и если нужно сгенерировать что-то нейросетью, то тоже, представляю в голове картинку и сразу прикидываю, какие теги нужны. Но наверно те, кто это читает, не занимались добавлением тегов на *booru-сайтах, возможно еще нет такой привычки. Но тогда можно просто найти на Danbooru что-то похожее на то, что вам нужно, а затем взять оттуда теги, при этом поменяв некоторые под свои нужды. Sankaku не советую, там какие-то нестандартные теги. Только сразу предупреждаю, Danbooru, Gelbooru и многие другие *booru-сайты заблокированны Роскомнадзором - используйте пути обхода блокировок. Единственное что, вопрос в том, сколько же нужно брать тегов. На Danbooru тегами стараются описать почти все, что можно, нейросети возможно столько не нужно, скорее всего, будет достаточно лишь тех, которые описывают ключевые детали, остальное нейросеть "дофантазирует", вообще, можно даже оставить оба поля пустыми и сгенерировать так картинку - даже при совершенно пустых полях нейросеть что-нибудь да сгенерирует. Вроде бы, некоторые даже говорят, что лишние теги даже "вредны" - якобы только "путают" нейросеть. Второе поле, как уже говорил, - Negative Prompt это то, что НЕ хотим видеть на картинке. Некоторые туда прописывают теги, связанные с "плохой" рисовкой, типа "bad anatomy, bad hands" и т.д. и т.п. в надежде улучшить рисовку и избавиться от огрехов нейросети, но другие говорят, что все это бесполезно и даже может быть вредно (возможно лишние теги, опять же, только "путают" нейросеть). Я лично придерживаюсь такого же мнения, разве что наверно лучше только прописывать в Negative Prompt "monochrome" (без кавычек), так картинки вроде получаются насыщенее. Все это правда актуально для аниме-картинок, для моделей, выдающих реалистичные изображения вроде бы используется "естественный язык" для запросов, я реализм не пробовал генерировать, мне это не особо интересно. Теперь можно попробовать сгенерировать свою первую картинку - выставляем настройки, как было сказанно выше, придумываем запрос, нажимаем кнопку "Generate" справа от полей для ввода запроса. На данный момент пока все. Пока что не нужно пытаться сгенерировать конкретных персонажей, все равно выйдет какая-то ерунда. Для того, чтобы генерировать конкретных персонажей, нужна LoRA, о которой раскажу в следующий раз, если конечно соберусь написать еще пост. Также, есть еще такой хороший сайт AiGem, на котором очень доходчиво объяснены некоторые вещи по Stable Diffusion. Можете почитать. Единственное что, сайт заблокирован, так как он Украинский (но на Русском языке) - используйте пути обхода блокировок. 2 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.