Sign In

Мой опыт и гайд по созданию мультиперсонажной лоры на Illustrious (RU)

22

Jul 20, 2025

(Updated: a month ago)

training guide
Мой опыт и гайд по созданию мультиперсонажной лоры на Illustrious (RU)

Всем привет! Я обещал сделать свой "гайд" по мультиперсонажной лоре на примере Царевен, и решил, что CivitAI для этого подходит лучше всего. Это не совсем гайд, но я хочу поделиться тем, что сработало лично для меня, если у вас есть улучшения и предложения, пишите их в комментариях.

Эта информация в основном применима для тех, кто может тренировать локально с помощью kohya_ss, с настройками тренировки CivitAI или других программ я к сожалению не знаком. Но вам будет полезна прочая информация.

ENGLISH VERSION OF THIS GUIDE


Итак, начнём.

Допустим, вы решили сделать лору на персонажа или нескольких из какого-то мультфильма. В нашем случае это "Царевны", мультсериал от студии "Мельница".


1.Создание Датасета

Первый шаг - это конечно, наделать МНОГО скриншотов:

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

Держите в уме, что потом эти кадры надо будет обрезать под следующие форматы:

1024х1024, 768x1024, 1024x768, то есть 1:1, 3:4 и 4:3.

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

Требования к скриншотам:

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

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

Если персонаж появляется в кадре в другой одежде, то такие кадры только приветствуются, они помогут нейросети отделить персонажа от его основной одежды.

(честно говоря, мой датасет далеко не идеален, его можно сделать куда лучше, но он работает :D)

Минимум на каждого персонажа у вас должно быть 18-20 кадров. Но чем больше, тем лучше.

Если добавляете групповые кадры, то тоже, чем больше тем лучше, но тоже хотя бы 10-20 кадров.

2. Обработка датасета

Итак, вы сделали кучу скриншотов. Если вы еще не распределили их по папкам, то лучше сразу прогнать через какой-нибудь апскейлер, потому что качество исходников обычно оставляет желать лучшего. Для этого подходит вкладка Extras в Automatic1111 и Forge, а так же сторонние апскейлеры вроде Topaz PhotoAI.

Апскейла в два раза будет достаточно, иначе при множестве кадров это займет вечность. Рекомендую апскейлер Remacri, но подойдут и другие.

После этого рассортируйте ваши изображения по отдельным папкам, для каждого персонажа. Дальше переименуйте все файлы по имени персонажа, это не обязательно, но желательно, потому что оригинальные имена файлов со скриншотами довольно длинные. Используйте для этого либо обычный проводник Windows, выделив все файлы и нажав F2, либо функция Batch Rename есть в просмотровщиках вроде ACDSee, очень удобно.

После того, как вы организовали и переименовали папки с персонажами, вас ждет важный этап работы. Используя Фотошоп, или любой другой графический редактор, обрежьте ваши изображения до размеров 1024х1024, 768x1024, 1024x768.

Для меня самый удобный способ для этого именно Photoshop, так как в нем можно настроить быстрые пресеты. Расскажу, как это делать:

Открываем картинку в Photoshop, выбираем Crop Tool, в выпадающем списке выбираем этот пункт и вписываем наши настройки в пикселях. Затем открываем этот список еще раз и жмем New Crop Preset. После этого он сохранится и его всегда можно будет быстро вызвать.

Оставляйте пространство вокруг персонажа! Не загоняйте его в слишком тесные рамки!

После того, как вы обработали таким образом все ваши кадры, ваши папки должны выглядеть так:

Ещё раз проверьте, соответствуют ли все изображения размерам 1024х1024, 768x1024, 1024x768. Почему это важно? Вы упрощаете работу алгоритму тренировки, который создаст всего три разных "бакета", а не сотню из картинок с разным разрешением.

Затем создайте отдельную папку, например "training" и перенесите туда все ваши папки с изображениями:

Папки вы называете так: 3_yourcharacter, то есть для нейронки это означает, что вы тренируете кого-то или что-то под названием yourcharacter и содержимое папки надо будет изучить 3 раза за одну эпоху.

Таких папок персонажей в Лоре может быть много, поэтому мы можем делать мультиперсонажные лоры.

НО! Если у вас нет отдельной папки с групповыми кадрами, то при попытке генерировать персонажей вместе нейронка попытается распределить особенности персонажей на всех в кадре, то есть, получится каша.

Именно поэтому мы создаем папку 2_group, где персонажи находятся вместе в одном кадре.

(Я сделал повторение 2 для общих кадров, но вообще рекомендуется ставить 4 или 5, потому что такие кадры сложнее для нейронки)

Вы великолепны, ваш датасет наполовину готов! Теперь сложная и очень важная часть - тегирование.

3. Тегирование

Мда, это будет непросто) Но эта часть очень важна для правильного функционирования лоры.

Если у вас на компьютере стоит Automatic1111 или WebUI Forge, вам понадобится расширение Tagger.

Просто скопируйте эту ссылку в поле и жмите Install. Не забудьте перезагрузить.

Другие способы тегирования я описывать не буду, ибо не пользовался, уж извиняйте )

На вкладке Tagger вписываем адрес нашей папки и выбираем Interrogator WD14 moat tagger v2. Weight threshold выставляем 0.3 или около того. Ничего больше не добавляем, никаких дополнительных тегов не прописываем, все это на следующих этапах. Жмем Interrogate.

3.1 Обработка тегов в BooruDatasetTagManager

Далее вам понадобится удобная утилитка под названием BooruDatasetTagManager.

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

File - Load Folder, открываем нашу первую папку, возьмем за пример царевну Соню:

Сначала добавим главный триггерворд - sonya. Для этого На вкладке All Tags жмем плюс:

Обязательно ставим триггерворд на самую верхнюю позицию!

Отлично! Дальше. Решите, что именно нейронка будет понимать под этим словом. Думайте об этом так: вещи, которые НЕ описаны на картинке, нейросеть "запечет" в слово ей незнакомое, а именно в нашем примере это sonya.

(Хотя нет, не совсем, слово sonya не совсем незнакомо ей, но чёткой ассоциации с этим словом нет, и мы его даем в этой лоре)

Соня у нас - это именно девочка с длинными темно-коричневыми волосами и голубыми глазами, поэтому я УБИРАЮ из общего списка тегов ВСЁ, что связано с причёской, цветом волос и цветом глаз.

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

Так же вы преспокойно можете убрать из списка всякие базовые теги вроде lips, dress, jewelry, и т.д. потому что обычно есть уточняющие теги.

Удерживая Ctrl выделяете в общем списке лишние теги и удаляете:

Далее, Соня обычно носит свое пурпурное платье, но мы не хотим запекать это платье вместе с персонажем, поэтому описываем его отдельно. Для платья я выделил отдельный тег - sonya_dress. Я не использовал общий тег purple dress потому что ее наряд узорчатый, своеобразный и под общее описание не подходит (Я могу быть не прав, но для меня это работает)

Опять же, чтобы нейросеть поняла, что мы запекаем под этим тегом мы удаляем все теги, связанные с ее платьем: dress, puffy sleeves, star (symbol) и прочее, что найдете. Далее так же добавляем тег sonya_dress в список, но теперь под порядковым номером один (то есть, после нулевого):

Теперь будьте внимательны! В нашем датасете Соня не всегда одета в свое платье и это плюс! Именно потому, что мы можем дать понять нейросети, что такое sonya_dress и на каких изображениях его нет.

Поэтому с помощью Ctrl выделяем изображения, где Соня одета по другому и удаляем тег:

Из характерных особенностей Сони остаются сережки в виде звезд, поэтому смотрим, чтобы везде, где они видны был тег star earrings. Иначе помните, если вы не пропишете их отдельно эти сережки "запекутся" с тегом sonya!

Далее вы тщательно просматриваете список тегов и выискиваете неправильные, ошибочные теги либо относящиеся к предметам, которые вы хотите запечь в тег.

Например, у Сони корона, но таггер добавил тег "tiara" - удаляем либо заменяем. Теги возраста тоже можете удалить или заменить везде одним тегом child или young.

В итоге у вас должен остаться довольно короткий список тегов на персонажа:

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

Если интересно, то к модели я прикрепил архив с Training Data.

Когда вы закончите с тегами, нажимайте Ctrl + S. Прекрасно, с одним персонажем закончили, впереди еще шесть! :D Ладно, это мне шесть, надеюсь, у вас их поменьше!

3.2 Тегирование групповых кадров

В этом случае всё тоже самое, вы убираете любые лишние теги описания персонажей, вроде blonde hair, blue eyes и прочее. Затем добавляете теги персонажей, которые находятся в кадре и их одежда:

2025-07-20_07-31-52.png

3.3 Добавление негативного промпта

В моем случае исходник - это 3Д мультсериал с не слишком качественной графикой, персонажи и особенно волосы выглядят "пластиково". Поэтому имеет смысл добавить теги, которые дадут понять модели, что эти детали нежелательны.

Вернемся к BooruSetManager и откроем нашу общую папку (программа просканирует все подпапки). В разделе All Tags нажимаем + и добавляем --n 3d в конец тегов.

Далее таким же манером добавляем теги plastic, low quality.

В итоге, ваше описание должно выглядеть так:

2025-07-20_07-15-32.png

Оговорюсь, в вашем случае негативный промпт может быть не нужен, но если ваш исходник плохого качества, или вам не нравится стилистика, то можете попробовать добавить соответствующие негативные теги в конец списка. И именно такой синтаксис работает.

4. Тренировка

Ручная часть работы практически на этом закончена, давайте наконец перейдем к настройкам тренировки.

Я тренировал единственным известным мне способом - локально, через интерфейс kohya_ss. Также можете установить эту программу через лаунчер Stability Matrix, очень удобная вещь.

4.1 Базовая настройка

Если вам лень разбираться - просто запускайте программу и следуйте этим шагам:

2025-07-18_13-48-57.png
  1. Переключитесь на вкладку LoRa - не забудьте!

  2. Откройте файлик настроек, вы найдете его во вложении к статье.

  3. Укажите путь к базовой версии Illustrious.

  4. Впишите имя вашей модели.

  5. Укажите путь к папке, которая содержит папки с изображениями.

  6. Осталось только указать путь, в котором сохранится ваша лора.

ВНИМАНИЕ!

Если у вас видеокарта 20 серии, то может вылетать с ошибкой. Пробуйте другой файл с пометкой lowvram.

Если у вас 30 серия, попробуйте переключить Save preсision на fp16.

Все, затем жмите кнопку Start Training внизу страницы! В зависимости от мощности вашей видеокарты, количества персонажей и картинок время тренировки может сильно варьироваться.

4.2 Немного деталей

Если вам интересно, что под капотом - слегка пройдусь по настройкам, но я не эксперт! 

Train batch size - количество одновременно просматриваемых изображений. От 2 до 4 будет достаточно, хотя пожалуйста, можете экспериментировать )

Max train epoch - слишком много эпох лучше не ставить, будет перетрейн. 25 эпох обычно хватает, а в названии папок я ставлю 3_sonya, то есть папку за эпоху нейросеть просматривает 3 раза.

Optimizer - пока что Prodigy меня полностью устраивает, отлично ловит и стиль и разные особенности, не перевирает одежду и детали. Раньше я мучался с AdamW, но врагу не пожелаешь вытянуть из него хоть что-то годное. Возможно, он лучше работает с другими моделями или я не нашел какие-то "золотые" настройки, но спасибо, нет. Жуткие артефакты при генерации, косяки с одеждой, проблемы со стилем. Так что для Illustrious Prodigy - ваш друг.

Network Dim / Network Alpha - эти параметры отвечают за ёмкость и гибкость модели соответственно. Обычно выставляются в соотношении 2:1, например 32:16.

Если у вас много персонажей, есть смысл увеличить Network Dim до 48 или 64. Лора с Царевнами, как видите, весит в два раза больше, именно потому, что Dim я выставил 64.

32:16 это стандартное рабочее значение, но можете попробовать снизить до 16:8, иногда может сработать даже лучше.

В остальные параметры я углубляться не буду, эти параметры для меня работают, а на эксперименты у меня времени маловато :D 

Если у вас остались какие-то вопросы, спрашивайте в комментариях, дополнения я впишу в статью)

22

Comments