Продолжаем изучать компьютерную магию в Stable diffusion. Мы уже говорили и про скетчи, и про модели, и про возможности расширения изображения в Inpaint, и про его достраивание. Сегодня коснёмся LoRA.

Что же такое лоры? Эта аббревиатура расшифровывается так: Low-Rank Adaptation, — что на деле обозначает один из способов обучения нейросети. Поскольку у нас практические гайды, я не буду вдаваться в сложные математические конструкции вроде матриц и тому подобного и объясню именно с практической точки зрения. LoRA – это маленькая модель, которая знает и умеет то, что не умеет базовая большая.

Давайте представим себе следующую ситуацию: вот у нас огромная прекрасная модель Flux. Качество обалденное, разрешение большое, а вот, что такое лапти, она знать не знает. Допустим, у вас бизнес по производству лаптей и вам их позарез надо генерировать, в эпик-реализме, на ногах роботов в викторианском стиле, на ногах крестоносцев (хотя это скорее антиреклама), и ещё где и как угодно, и что делать? Переучивать огромный Flux? Да на это ресурсов компьютера не напасёшься, да и времени решение такой задачи займёт немерено. Что же делать?

Stable diffusion

А что если основная Flux модель нам будет рисовать роботов, а маленькая, дополнительная модель — уже одевать на них наши великолепные, волшебные лапти-скородохи… Эмм… скороходы. Именно по такому принципу и работает Lora, только вместо лаптей это могут быть разные стили, различные типы освещения, объекты фэнтезийного мира и даже… лица людей.

Да, это один из вариантов дипфейков. И вот тут мы заходим на очень зыбкую территорию: до тех пор, пока вы созданные фото помечаете как фейки или используете на своём личном компьютере для того, чтобы, например, выразить восхищение и почтение – всё нормально, но вот публикация подобных материалов без соответствующих пометок — это уже нарушение неприкосновенности личности. Именно поэтому на скриншотах к данной статье, даже несмотря на то, что там виден интерфейс нейросети, я специально прифотошопил надпись «FAKE», то есть заведомо ложная информация.  Если что, публикация без подобных пометок может караться статьями за клевету (ст. 128.1 УК РФ), нарушение неприкосновенности частной жизни (ст. 137 УК РФ), нарушение авторских и смежных прав (ст. 146 УК РФ), кражу (ст. 158 УК РФ), мошенничество (ст. 159 УК РФ), вымогательство (ст. 163 УК РФ), причинение имущественного ущерба путём обмана или злоупотребления доверием (ст. 165 УК РФ), распространение и оборот порнографических материалов (ст. 242 УК РФ).

Stable diffusion

Из положительных примеров использования данной технологии – фан-арт. Вряд ли Сэм Лэйк, глава студии Remedy, будет возражать против того, что в сети появился фан-арт, где он изображён в роли Макса Пейна (напомню, что и в реальном мире Макс из первой игры носит лицо Сэма Лэйка). Кроме того, Lora позволяет добавить объекты фэнтезийного мира – магию, хрустальные шары, персонажей игр, книг (тут, кстати, с авторским правом вопрос, но это опять жен в случае публикации, и, скорее всего, если подаётся как фанатское творчество, проблем не возникнет. Это ж реклама в конечном счёте). Так где же эти самые волшебные лоры взять?

А всё там же, на https://civitai.com. Просто в разделе models (модели) выбираем в меню самую правую вкладку Filters (фильтры), ставим следующие галочки – LoRA – в Models type (тип модели) и Flux .1 D в base model (базовая модель, если планируете использовать флакс или же ту нейросеть, к которой ищете лору).

Stable diffusion

Допустим, мы решили наделать фотографий Сэма Лэйка – находим соответствующую лору, скачиваем её и читаем условия, как её активировать. Дальше, как и с моделями, кладём её в нужную папку внутри нашего Stable Diffusion, но если модели мы размещали в папке <путь к папке с нейросетью>\webui\models\Stable-diffusion, то лоры мы кладём в папку <путь к папке с нейросетью>\webui\models\Lora. После этого перезагружаем интерфейс, если он был открыт или запускаем его и под полями положительного и негативного промтов видим вкладки. По умолчанию открыта знакомая на Generation с настройками, а последняя в том же ряду – Lora, где мы и сможем выбрать и активировать нужную нам лору, просто кликнув на неё. Деактивируется она повторным щелчком.

Поскольку мини-модели делают разные люди, то и указания по их использованию будут различными. Где-то достаточно просто активировать мини-модель, а где-то требуется добавить тригеры в промт. В случае с моделью Энн Хэтуэй достаточно просто активировать, а вот для генерации Сэма Лэйка нужно будет указать в промте «a man named SamLake». Инструкции по активации той или иной лоры есть на её странице, и тут уж либо английский знать, либо переводчик использовать.

Stable diffusion

Рассмотрим чуть подробнее запись, которую лора добавляет в наш промт. Обычно она похоже на что-то вроде <lora:Sam_Lake_FLUX-000016:0.9>. То есть lora:название лоры: вес лоры. Вес — это то, насколько сильно мини-модель будет влиять на конечный результат, помните, в статье про написание подсказок я говорил, что можно поднять значение (увеличить вес) тех или иных слов, добавив через двоеточие коэффициент и заключив слова в скобки? Вот это оно же. Только тут менять значение надо ручками – просто заменяем 0.9 (или иное значение в зависимости от дополнительной модели) на то, которое хотите. Чем больше вес – тем более отчётливо в конечной картинке проявится влияние лоры, чем меньше – тем менее. Напомню, что наибольшее значение далеко не всегда лучшее – экспериментируйте, подбирайте.

ВАЖНЫЙ МОМЕНТ! Я довольно долго не мог заставить лоры работать вместе с Flux – и так крутил, и сяк – перекачивал несколько раз, пока почти случайно не переключил модель. Те Лоры, что я попробовал, работали только со старшей версией Flux Dev, которая содержит fp8 в названии. На средней bnb-nf4 картинки генерировались, но влияния лор на них было не заметно, проще говоря, лоры не работали.

Несмотря на то, что Flux – совсем новая базовая модель, к ней уже прилично разнообразных интересных лор. Когда она только вышла -я думал, что её возможности и так огромны, но сообщество делает их поистине безграничными.

Творите! Но не забывайте уважать частную жизнь известных личностей.

Фото: автор

Александр Меркушев

Специально для Агентства Особых Новостей (on24.media)

П.С. Эйнштейн в котелке отбивает чечётку, высунув язык? Что???

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *