«Как генерировать картинки?» | Путеводитель по миру генераций изображений
О дивный новый мир! Машины рисуют картины! Могли ли наши предки и подумать, что голем из кремния будет творить как человек?
Ревизия №1 от 22 декабря 2025 года
Этот путеводитель расскажет тебе, читатель, как можно прикоснуться к миру генерации картинок на более серьёзном уровне, чем простая отправка запроса в чат ИскИну.
Предупреждаю!
Я далеко НЕ эксперт во всех тонкостях генерации изображений и по факту рассказываю здесь, что я делала, чтобы мой компьютер создавал картинки.
Предупреждение №2:
Взаимодействия с локальными генерациями неизбежно соприкасаются с NSFW-контентом ( «Взрослым» контентом ), поэтому Вы должны быть совершеннолетним, чтобы хоть что-то делать с локальными генерациями.
Предупреждение №3:
При некоторых сценариях работы с локальной генерацией ( например, установка новой модели с параллельно запущенным процессом создания новой картинки ) возможен вылет в BSOD ( «Синий экран смерти» ).
Насколько понимаю, основной причиной этого является переполнение ОЗУ. Так что предполагается, что у Вас есть минимальный набор навыков работы с компьютером, и Вы готовы в случае чего самостоятельно справиться с его перезагрузкой.
Напоминание:
Любые манипуляции с компьютером Вы делаете под свою ответственность, на свой страх и риск.
Мотивация написания путеводителя:
На вопрос «Как генерировать картинки?» поисковик обычно выдаёт вереницу подборок платных онлайн-сервисов и небольшие вкрапления зубодробительных статей о генерации на ComfiUI.
С точки зрения обычного пользователя, отсутствие внятной информации о возможностях локальной генерации создаёт несколько высокий порог вхождения, вынуждая его использовать только платные онлайн-сервисы.
Поэтому целью данного путеводителя является закрытие информационной бреши, что, в свою очередь, создаст для новичка возможность плавного входа в новую сферу изобразительного искусства.
Содержание:
1. Основы
1.1. Скачиваем и устанавливаем InvokeAI Community Edition
1.2. Настраиваем InvokeAI Community Edition
1.3. Погружаемся в CivitAI и разбираемся в видах моделей
1.4. Устанавливаем модель в InvokeAI Community Edition
1.5. Знакомимся ближе с InvokeAI Community Edition
1.6. Пробуем сгенерировать своё первое изображение
1.7. Особенности синтаксиса запросов
1.8. Обучаем генератор стилю
1.9. Точечно правим детали
1.10. Увеличиваем разрешение картинки
1.11. Очищаем кеш
1.12. Примерный порядок шагов генерации картинки
4. Напутствие
К концу 2025 года есть множество вариантов рабочих пространств для генерации изображений. Все они разделяются на два типа:
- интернет-сервисы;
- локальные программы.
Интернет-сервисы генерации картинок совершенно не требуют от пользователя компьютера с конкретными характеристиками ( ими можно пользоваться даже на телефонах! ).
Однако, они зачастую требуют оплаты каждой генерации и не позволяют детально настраивать свои параметры.
Конечно, качественный генеративный интернет-сервис способен предоставить доступ к наиболее продвинутым моделям генерации, но перспектива платить ( хоть и копейки ) за каждую созданную картинку совершенно не подходит для весёлой генерации всякой всячины. К тому же есть прямая зависимость от наличия интернет-соединения.
Локальные программы лучше всего подходят для путешествия по миру генерации изображений. Такие программы зачастую бесплатны, но требуют соответствующих характеристик от компьютера, и могут ожидать от пользователя гораздо больше стараний, чем интернет-сервисы.
Среди локальных программ популярностью пользуются Automatic1111 и ComfiUI.
Свою известность они получили благодаря возможности доскональной настройки параметров процесса генерации, но при этом обе программы требуют от пользователя достаточно продвинутых знаний и навыков владения компьютером, граничащих со сферой программирования.
Поэтому в данном путеводителе мы будем работать не с Automatic1111 или ComfiUI, а с программой InvokeAI Community Edition.
InvokeAI Community Edition – это бесплатная программа для локальной генерации изображений. В отличие от ранее упомянутых программ, обладает дружелюбным для пользователя интерфейсом, сохраняя при этом оптимальный уровень настраиваемости параметров, что делает её отличной точкой входа в сферу генерации картинок.
0. Скорее всего, потребуется прокачать свой ПК
Генерация изображений в основном происходит на ресурсах видеокарты. Видеокарты от NVIDIA. Это связано с тем, что в большинстве случаев в процессе создания картинок используется технология CUDA ( Платформа параллельных вычислений ), которая разработана компанией NVIDIA для видеокарт NVIDIA.
Это ещё не обозначает, что на картах от AMD совершенно нельзя генерировать картинки, однако этот процесс будет связан с рядом трудностей, которые придётся решать самостоятельно ( лично у меня нет видеокарты от AMD ).
Основными характеристиками для генерации изображений выступают:
- объём видеопамяти;
- объём ОЗУ.
Если верить минимальным характеристикам, предоставленным разработчиками программы InvokeAI Community Edition, то для генерации можно использовать видеокарты Nvidia серии 10xx от 4 ГБ видеопамяти и ОЗУ объёмом не менее 8 ГБ ( правда, это будут генерации картинок 512 на 512 пикселей на старом SD1.5 ).
Лично я генерирую на видеокарте Nvidia GeForce RTX 3060 12 GB в связке с процессором Intel i5-12400F и с 32 Гб ОЗУ.
Данная сборка компьютера позволяет мне запускать подавляющее большинство моделей. Однако передовые версии, понимающие контекст запросов ( например, Qwen Image ), я в чистом виде запускать не могу. Камнем преткновения становится количество видеопамяти, из-за чего приходится искать квантованные ( сжатые ) версии.
Очевидно, что чем больше видеопамяти и чем свежее линейка видеокарты, тем лучше.
Я провела небольшое тестирование разных сочетаний количества видеопамяти и объёма ОЗУ.
Всё сводится к тому, сможет ли модель генерации развернуться в видеопамяти или нет.
Если она не разворачивается в видеокарте, то программа потребует включения режима «частичной загрузки». У разработчиков InvokeAI Community Edition есть инструкция по настройке параметров программы для работы с малым объёмом видеопамяти.
( Модели на SDXL ( самые распространённые ) весят около 8 ГБ )
Для включения режима потребуется в корневой папке программы InvokeAI найти файл «invokeai.yaml» и вписать туда эту строчку:
enable_partial_loading: true
В режиме «частичной загрузки» программа будет разворачивать модель генерации между видеокартой и ОЗУ. В этом случае допускается работа сочетаний, подобным Nvidia GTX 1660 6 GB + 32 ГБ ОЗУ.
Почему невозможно работать с сочетанием 6 ГБ видеопамяти + 16 ГБ ОЗУ?
Если части модели генерации не влазят в оперативную память, то InvokeAI начинает использовать файл подкачки. И, скорее всего, из-за недостаточного размера этого файла программа завершится с ошибкой №3221225477.
В моих экспериментах связку Nvidia GTX 1660 6 GB + 16 ГБ ОЗУ удалось запустить при размере файла подкачки ≈60 ГБ ( цифра была взята с избытком, но у меня и при изначальном объёме, равном 32 ГБ, модель не разворачивалась ).
Однако развёртка модели и дальнейшая генерация были настолько мееедленными, что так работать просто невозможно.
Какие выводы?
- Для генерации не нужно иметь именно RTX видеокарту;
- Генерация на связке Nvidia GTX 1660 6 GB + 32 ГБ ОЗУ вполне возможна;
- Нехватку видеопамяти придётся закрывать большим количеством ОЗУ;
- Предположительно, видеопамяти 8 ГБ должно хватать, но это будет явно с оговорками;
- Минимумом для комфортной и быстрой генерации является 12 ГБ видеопамяти + 16 ГБ ОЗУ.
Вот картинки, полученные от связки Nvidia GTX 1660 6 GB + 32 ГБ ОЗУ ( сделаны по параметрам, указанным в разделе 1.6 ):
1. Основы
1.1. Скачать и установить InvokeAI Community Edition
Установка программы предельно простая
( >Подробные подробности< ):
1. Выделим место для программы. На локальном диске должно быть свободно минимум 50 ГБ ( цифра взята с небольшим запасом ), так как одна модель генерации обычно весит чуть меньше 7 ГБ
2. Скачаем InvokeAI Launcher ( >Скачать< )
3. Следуем шагам установщика
( сама установка будет довольно долгой )
Ура! Программа установлена. Дополнительно устанавливать что-либо
( например, Python ) не нужно. Лаунчер создаёт для себя виртуальное окружение, куда скачивается всё необходимое для дальнейшей работы.
1.2. Настраиваем InvokeAI Community Edition
1. Запускаем программу ( запуск небыстрый )
Автоматически откроется рабочий интерфейс.
2. Перейдём в настройки: шестерёнка ( в левом нижнем углу ) → Settings
3. Для удобства можно перевести интерфейс на русский язык
Важное примечание:
Интерфейс InvokeAI имеет встроенную справку. Если возникают вопросы по конкретному параметру, то можно навести курсор на его название, чтобы открылась автоматически всплывающая подсказка.
4. Рекомендую включить параметр «Show Progress Details», чтобы понимать, на каком этапе находится процесс генерации, а также включить «Показывать процесс генерации в Просмотрщике»
5. При необходимости можно включить параметр «Включить NSFW проверку». Он будет наносить размытие на сгенерированную картинку в случае, если она получилась из категории для «взрослых» ( по поводу точности и надёжности определения данного фильтра ничего сказать не могу )
Установим базовые компоненты для генерации.
6. Перейдём в раздел «Модели» ( кубик в нижней части левого меню-ленты )
7. Нажимаем кнопку «SDXL» в подразделе «Recommended Models». Это запустит установку компонентов, необходимых для работы с моделями генерации, основанных на Stable Diffusion XL. Ждём окончания загрузки
1.3. Погружаемся в CivitAI и разбираемся в видах моделей
Предупреждение:
Сайт CivitAI имеет чересчур лояльную модерацию, из-за чего на его просторах может встретиться NSFW-контент, поэтому, чтобы им пользоваться, Вы должны быть совершеннолетним!
CivitAI – онлайн-платформа, на которой выкладываются основные модели генерации и LoRA-модели. Этот сайт является основным для поиска моделей генерации, так как имеет для этого удобный интерфейс.
1. Для перехода к поиску моделей нужно написать в поисковую строку «Search Civitai» любой символ ( например, точку ) и попытаться найти.Тогда откроется форма поиска моделей с инструментами фильтрации.
( после открытия формы лучше очистить строку поиска )
На этом моменте следует немного поговорить про виды моделей генерации. Глобально их можно разделить на:
- Checkpoint – это основные модели. Именно они генерируют изображения;
- LoRA – условно говоря, это модификация к основной модели. Например, с их помощью можно научить основную модель генерировать в определённой стилистике.
- ( есть и другие разновидности, но для упрощения мы их не рассматриваем )
Checkpoint-модели имеют обширное количество типов, каждый из которых нужно по-хорошему изучать отдельно. Вот как пример:
- SDXL – это модель Stable Diffusion XL;
- Pony – это модель, построенная на основе SDXL ( по факту дообученный SDXL ). Используется в основном для генерации рисунков;
- Illustrious – тоже модель, основанная на SDXL, и тоже используется в основном для генерации рисунков.
Для начала крайне рекомендую использовать модели из семейства Illustrious, так как зачастую они более сбалансированные.
2. Фильтруем поиск по параметрам «Illustrious, Checkpoint»
Вариаций Illustrious несметное множество ( такая же ситуация и у других моделей ).
В качестве начальной модели отлично подойдёт
«WAI-illustrious-SDXL».
Она качественно генерирует и восприимчива к большинству LoRA-моделей для Illustrious-моделей.
3. Откроем страницу «WAI-illustrious-SDXL»
На что стоит обращать внимание при изучении странички модели генерации?
Во-первых, нужно смотреть подраздел «Details». Здесь нас интересуют параметры: «Type», «Published», «Base Model».
На их основе можно понять, что за конкретная модель находится перед нами и насколько она новая.
Во-вторых, можно иногда посматривать на ленту версий. Там бывают указаны варианты для других типов Checkpoint-моделей.
В-третьих, крайне важно читать, что пишет автор в описании модели. Зачастую там находятся важные сведения, например, о том, какие параметры генерации следует выставлять.
Скачать модель можно в подразделе «Files».
4. Скачаем «WAI-illustrious-SDXL»
1.4. Устанавливаем модель в InvokeAI Community Edition
Установка любых компонентов в InvokeAI происходит в разделе «Модели».
1. Для установки скаченной «WAI-illustrious-SDXL» перейдём в подраздел «Сканировать папку», вставим путь до папки, в которую была скачана модель ( в моём случае это «G:\Загрузки» ), и просканируем её
Важный момент:
Параметр «Установка на месте» позволяет установить модель генерации без перенесения её в директорию InvokeAI. Однако я настоятельно рекомендую отключить данный параметр, так как лучше, чтобы всё, что связано с генерациями, лежало в одном месте ( к тому же, после такой установки установочный файл будет удалён из отсканированной ранее папки ).
2. Устанавливаем «WAI-illustrious-SDXL», кликнув на «Установить +»
3. Возвращаемся в раздел генерации ( символ «Аа» в левом верхнем углу )
1.5. Знакомимся с InvokeAI Community Edition
Теперь, когда мы всё подготовили для дальнейшей работы, познакомимся с интерфейсом InvokeAI.
В основном интерфейс разделён на три части:
- левую – содержащую настройки генерации;
- центральную – отображающую генерируемую картинку;
- правую – показывающую уже сгенерированные ранее изображения.
Рассмотрим подробней левую часть ( сверху вниз ).
[ Шапка ]:
- Зелёная кнопка «Invoke» – отвечает за запуск генерации;
- Число возле кнопки – определяет, какое количество задач на генерацию будет помещено в очередь одним нажатием кнопки «Invoke»;
- Кнопка с тремя горизонтальными линиями – открывает управление очередью генераций;
- Кнопка с крестиком – отменяет текущую генерацию;
- Горизонтальная полоса – отображает прогресс текущей генерации.
[ Редактор запроса ]:
- «Выберите шаблон запроса» – выпадающий список с сохранёнными шаблонами запросов ( есть предустановленные варианты );
- Текстовое поле «Prompt» – область ввода целевого запроса;
- </> – позволяет вставить ключевые слова, закреплённые за LoRA-моделью( об этом позже );
- { } – редактор итеративных промптов;
- Символ часов – история ранее введённых запросов;
- +/- – вкл/выкл исключающего запроса;
- Эталонное изображение – область для загрузки изображения, на основе которого будут генерироваться картинки ( особо не использовала. знаю, что точно используется для контекстных моделей )
[ Подраздел «Изображение» ]:
Имеет достаточно понятные настройки размера генерируемой картинки.
Из интересного стоит отметить:
- Звёздочки – устанавливают параметры изображения, которые можно указать для конкретной checkpoint-модели в разделе «Модели»;
- Сид – числовое значение, определяющее генерируемое изображение. Случайно выбирается при каждой генерации.
Если зафиксировать значение сида, то при неизменных других параметрах будет генерироваться одно и то же изображение
( используется для более детальной работы с конкретной композицией ).
Совет:
Лучше использовать фиксированное соотношение ( обычно 3:4 ).
Так качество генерации будет чуть лучше.
[ Подраздел «Генерация» ]:
Здесь выбирается и настраивается основная модель генерации.
- Модель – выбранная генерирующая изображение модель;
- Звёздочки – устанавливают заранее установленные в разделе «Модели» параметры для выбранной модели;
- LoRA – выпадающий для выбора список LoRA-моделей
( о работе с LoRA чуть позже ); - [ Опции Расширенные ]
- Планировщик – метод, определяющий ход генерации изображения. Настоятельно рекомендую использовать
«Euler Ancestral». Этот метод показал наиболее лучшие результаты.
-
Забавный факт:
В процессе генерации можно заметить, как Euler Ancestral «отбрасывает» неудачные решения ( по-крайней мере, мне так кажется )
-
Если хочется изучить разницу между методами генерации, то можно начать вот с этой статьи.
( в будущем я могу дополнить путеводитель разделом о планировщиках ) - Шаги – параметр, определяющий количество этапов генерации. По идее, чем больше шагов, тем более качественное изображение получается, но, соответственно, процесс генерации становится медленней.
Однако всё-таки лучше ориентироваться на документацию выбранного планировщика.
Для Euler Ancestral: 30-40 шагов вполне достаточно. - Шкала точности (CFG) – определяет, насколько модель будет «творческой» в процессе генерации. Чем больше данное значение, тем больше модель следует запросу и меньше «решает» сама.
Большие значения CFG приводят к «перенасыщенности» изображения, а маленькие – к малой насыщенности и размытости.
«Серединой» можно назвать CFG = 7. При данном значении модель лучше воспринимает запросы ( в особенности исключающий ) и сохраняет насыщенность и качество в разумных пределах.
[ Подраздел «Доработчик» ]:
Мне нечего сказать об этом подразделе… >︿<
( думаю, я доберусь до него позже. наверное. не знаю )
[ Подраздел «Расширенные» ]:
- VAE – последний этап преобразования изображения. Влияет на оттенки цветов;
- Точность VAE – «Точность, используемая во время кодирования и декодирования VAE» ( цитата из всплывающей справки ).
-
Из опыта:
некоторые модели VAE при точности FP16 генерируют чёрное изображение. Лечится это выставлением точности на FP32; - Множитель масштабирования CFG – ( мне нечего о нём сказать :| )
- Бесшовная ось X – модель генерации постарается создать бесшовное по горизонтали изображение;
- Бесшовная ось Y – модель генерации постарается создать бесшовное по вертикали изображение.
1.6. Пробуем сгенерировать своё первое изображение
ВНИМАНИЕ:
Генерирующие ИскИны являются исключительно инструментом.Ответственность за то, как Вы их используете: какие именно картинки Вы генерируете и тем более какие сгенерированные картинки публикуете в сети Интернет, лежит полностью на Вас!
Отдельно напомню:
Генерация может содержать «Взрослый» контент. Поэтому Вы должны быть совершеннолетним, чтобы что-либо генерировать.
Попробуем сгенерировать картинку на ранее скаченной модели
«WAI-illustrious-SDXL».
1. Выберем в качестве модели генерации «WAI-illustrious-SDXL»
2. Выберем планировщик «Euler Ancestral»
3. Выставим шаг, равный 30, и CFG, равный 7.5
4. Выставим соотношение сторон генерируемого изображения на значение «3:4» и выставим высоту = 1024
5. В качестве запроса введём: «cat»
6. Для исключения NSFW-контента из генерации введём в качестве исключающего запроса: «NSFW».
Это, конечно, по большей части исключит «взрослый» контент из генераций, но совершенно НЕ гарантирует полную защиту от подобного содержимого
( модели генерации могут «проявлять» своенравие, особенно при нечётких запросах и минимальном значении CFG )
7. Жмём кнопку генерации «Invoke» ( или кнопку с зелёными звёздочками, или прожимаем Ctrl + Enter ) и дожидаемся окончания генерации
Отлично, мы сгенерировали свою первую картинку!
( неважно, что получился не совсем кот. важно, что всё работает. ура! )
Созданное изображение автоматически помещается в доску «Без категории» ( она выделена в правой части интерфейса надписью
«Авто» ) и открывается в просмотрщике ( центр интерфейса ).
1.7. Особенности синтаксиса запросов
Теперь, когда мы убедились, что программа работает корректно, стоит обсудить некоторые правила составления запросов.
Большинство вариантов моделей генераций основаны на Stable Diffusion. Это обозначает, что, скорее всего, в вам придётся вводить запросы в теговой форме.
Конечно, существуют модели, которые поймут запрос, написанный на естественном языке ( например, Flux.1 Kontext [dev] ).
По-хорошему, стоит отдельно изучать для каждой модели генерации особенности её синтаксиса.
Возвращаясь к Stable Diffusion и Illustrious в частности.
Конкретно модели из семейства Illustrious дополнительно обучены на тегах одного конкретного сайта, собирающего арты.
Давать ссылку на этот сайт я не стану ( патамушта я бяка >:{ )
Вот «документация» на оригинальный Illustrious ( читать лучше все части ):
- Illustrious v0.1;
- Illustrious v1.0;
- Illustrious v2.0.
Это обозначает, что модели Illustrious будут лучше откликаться на конкретные формулировки тегов.
( «WAI-illustrious-SDXL v15» работает на основе Illustrious v1.0 )
Если говорить про общие правила синтаксис запросов через теги, то:
- Пишем запросы исключительно на английском;
- Дробим свои запросы на составные части.
Не «Ryuko Matoi with cat ears and a cat smile», а
«Ryuko Matoi \(kill la kill\), cat ears, :3».
Модель, конечно, может и поймёт первый запрос. Но когда вы начнёте работать с большим числом параметров в запросе, то второй вариант станет явно предпочтительней, поскольку он банально более компактный и понятный ( держим в голове, что модель лучше откликается на те теги, на которых обучалась ); - При необходимости, сохраняем структуру запроса.
Видела, что некоторые модели требуют сохранения конкретной структуры запроса.
Illustrious такого не требует. Но для себя я придерживаюсь такой структуры:
- общее качество изображения;
- основной запрос ( от основного к деталям );
- особенности композиции/освещения;
- ключевые слова для LoRA. - Визуально делим запрос на части.
Рекомендую отделять смысловые блоки запроса друг от друга пустыми строками.Модели генерации на них всё равно, а вот читаемость большого запроса от этого возрастает; - Неперегружаем запрос однотипными тегами.
Следует стараться описывать генерируемую сцену как можно меньшим количеством тегов. - Используем шаблонную часть для целевого/исключающего запроса.
Для стабильного получения качественных результатов может потребоваться сопровождать каждый запрос шаблонной частью.
-
Шаблонная часть в основном описывает для целевого запроса требуемое качество, а для исключающего всякие артефакты и низкое качество исполнения.
-
Вот пример таких шаблонов:
Шаблон целевого запроса:
«masterpiece, best quality, amazing quality, very aesthetic,»Шаблон исключающего запроса:
«bad quality, worst quality, worst detail, lowres, blurry, cropped, jpeg artifacts, signature, watermark, text, logo,bad proportions, »
- Следим за согласованностью тегов в запросе.
Увлёкшись генерацией, можно не заметить, как части целевого запроса и/или части исключающего запроса противоречат друг другу.
Это, например, можно заметить, когда модель генерации упорно не хочет убирать какой-то признак. В этом случае следует проверить тэги на согласованность.
-
Специальные символы:
UPD от 27.12.2025 ( вне новой ревизии ):
Отредактировала информацию об усилении/ослаблении признаков
- + – увеличивает значимость признака.
Пишется так: « cat+, » или так « (cat ears)+ »; - - – уменьшает значимость признака.
Пишется так: « cat-, » или так « (cat ears)- »;
Чем больше у признака стоят «+» или «-», тем больше будет его усиление/ослабление.
Например, « (cat ears)+++ ».
Чрезмерное количество «+» или «-» у признака приводят к искажениям и артефактам ( ориентировочно >10 штук ).
- { } – вариационный признак. Генератор будет перебирать указанные внутри фигурных скобок признаки.Например, « {White|Blue|Red} hair », приведёт к тому, что данный признак будет последовательно меняться при каждой новой генерации.
Причём если таких скобок несколько, то признаки будут перебираться в рамках комбинаторики.
-
Для работы с вариационными признаками в InvokeAI есть раздел
«{ }» в поле ввода запроса
Если в запросе есть реальные скобки, например,
«Ryuko Matoi (Kill la Kill),», то такие скобки следует экранировать символом « \ » → «Ryuko Matoi \(Kill la Kill\)»
1.8. Обучаем генератор стилю
Модель генерации, конечно, может много сотворить, но довольно быстро придёт потребность в чём-то конкретном, например, конкретный стиль. Здесь на помощь приходят LoRA-модели.
Я встречала следующие виды LoRA:
- Стилистические – задают определённую стилистику для изображения;
- Слайдерные – регулируют определённый параметр, например, рост;
- Концептуальные – выставляют определённую композицию.
Допустим, мы хотим генерировать картинки в стилистике старого аниме.
Важно:
LoRA должна иметь ту же основную модель ( Base Model ), что и у используемой модели генерации.
1. Ищем в CivitAI «Retro anime» с параметрами фильтрации «Illustrious, LoRA»
2. Выберем, например, LoRA-модель «Retro Anime Illustration»
При выборе LoRA-модели действуют все те же рекомендации, что и при выборе основной модели генерации.
Однако здесь следует обращать внимание на параметр «Trigger Words». На указанные там слова будет откликаться выбранная LoRA-модель.
Иногда триггерные слова не указываются в подразделе «Details», тогда, скорее всего, они указаны в описании.
Если и в описании нет этих слов, то, по всей видимости, такая LoRA-модель справляется без них.
3. Скачиваем LoRA-модель «Retro Anime Illustration»
LoRA-модели устанавливаются тем же способом, что и основные модели.
4. Устанавливаем LoRA-модель «Retro Anime Illustration»
5. Найдём установленную LoRA через поиск
Настоятельно рекомендую переименовывать все LoRA-модели.
Что-то в духе:
<Название> | <Тип LoRA> <Основная модель>
Так будет легче понимать, что за LoRA перед вами и что она вообще делает.
6. Переименуем эту LoRA-модель в «Retro Anime | Style Illustrious».
7. Обязательно вписываем триггерные слова установленной LoRA в соответствующее поле. Это позволит в будущем легко и просто вставлять эти слова в запрос через функцию « </> »
8. Перейдём в раздел генерации ( « Аа » ) и откроем список LoRA-моделей.
Как можно видеть, переименовывание LoRA позволяет лучше ориентироваться в списке.
9. Выбираем установленную ранее LoRA-модель.
В подразделе «Генерация» появляется новый элемент, отвечающий за управление выбранной LoRA-моделью.
Здесь можно:
- Включить/выключить конкретную LoRA;
- Настроить силу влияния LoRA.
Рекомендую начинать с веса =1. Так можно понять куда крутить ползунок: влево или вправо ( зачастую, вес равный 1 работает нормально ).
-
Пределы регулирования от -10 до 10. Слишком большие значения начинают искажать генерируемые изображения.
10. Выставим вес выбранной LoRA-модели на значение 1.
Теперь перейдём в область ввода запроса. Там находится кнопка «</>».
Она позволяет быстро вставить триггерные слова выбранных LoRA-моделей.
11. Вставляем триггерные слова выбранной LoRA-модели
12. Пробуем сгенерировать картинку
Для эксперимента используем сид с картинки ( ПКМ по картинке → Recall Metadata → Использовать сид ), отключим LoRA-модель и попробуем снова сгенерировать изображение.
Полученное изображение без LoRA-модели отличается от предыдущего
( здесь, например, отсутствием выраженной зернистости ).
Дополнительно попробуем сгенерировать картинку с весом LoRA =2.
Чрезмерный вес LoRA привёл к появлению явных артефактов. Это нормально, так и должно быть. Из этого делаем вывод, что LoRA-модель работает.
13. Сгенерируем для этой LoRA-модели квадратную обложку 1024x1024 ( использовав дополнительно шаблоны для запросов )
14. Скачиваем изображение ( ПКМ по картинке → классическая иконка «Скачать» ) и ставим его в настройках LoRA-модели
( раздел «Модели» ) в качестве обложки
Теперь в списке выбора LoRA-моделей, эта модель будет выглядеть так:
( нужно перевести список в режим «Full view» )
Категорически рекомендую заморачиваться с переименованием, описанием и созданием обложки для каждой LoRA-модели.
В какой-то момент список может стать настолько большим, что без этого просто невозможно будет обойтись.
Для создания обложек стилистических LoRA лучше создать один чёткий запрос с фиксированным сид-значением.
( у меня это Рюко Матой в белом свитере на белом фоне )
1.9. Точечно правим детали
Чтобы точечно исправить детали изображения, нужно сначала отправить его на холст.
1. ПКМ по картинке → Новый холст из изображения → As Растровый слой
Автоматически откроется раздел «Холст».
В правой части интерфейса расположен функционал холста.
Из основного:
- Сила зашумления – определяет насколько сильно перегенерируемая часть будет отличаться от изначального варианта
( 0 - без изменений, 1 - совершенно новая генерация ); - Маска перерисовки – предназначена для выделения элементов для перегенерации;
- Растровый слой – привычный слой, содержащий изображение.
Центральная часть интерфейса, собственно, является холстом. Здесь к кнопочкам генерации, добавляются стандартные функции графического редактора: кисть, ластик и т.д.
Из важного:
Кнопка «Ограничительная рамка» ( квадрат с точками ), позволяет отрегулировать соответствующую рамку, ограничивающую область, которую «видит» модель генерации.
2. Отметим с помощью кисти на маске перерисовки глаза рыжей кошки, для эксперимента ограничив области видимости
Генерация здесь практически не отличается от обычного режима, но с некоторым исключением.
Здесь появляется подраздел «Композиция». Он используется для согласования существующей картинки с новосгенерированными элементами.
Из важного здесь:
- Размер края – определяет, насколько далеко будут распространяться изменения от границ отмеченных для перегенерации областей;
- Мин. шумоподавление – то же самое, что и «Сила зашумления» только для области возле отмеченных зон;
- Размытие маски – определяет силу размытия границы новосгенерированной области.
3. Дополним запрос цветом глаз: «green eyes» и перегенерируем картинку
Если не устраивает согласованность, то подстраиваем параметры «Композиции».
Ниже приведён пример влияния параметра «Сила зашумления»:
При перегенерации в нижней части центральной области интерфейса появляются кнопки управления. Для сохранения выбранного нового варианта нужно нажать на галочку.
Новые элементы сохраняются в качестве отдельного растрового слоя.
Чтобы сохранить отредактированную картинку, нужно нажать на дискету в верхней части центральной области интерфейса.
1.10. Увеличиваем разрешение картинки
Обычно картинки генерируются в небольшом разрешении. После получения необходимого варианта изображения, его можно отправить на увеличение.
1. ПКМ по необходимому изображению → Отправить на увеличение
Автоматически открывается раздел «Увеличение».
Здесь в левой части интерфейса появляется подраздел «Увеличить».
Из важного:
- Модель увеличения – модель, которая непосредственно будет заниматься увеличением картинки.
( я обычно использую «RealESRGAN_x4Plus Anime 6B» ) - Масштаб – во сколько раз изображение будет увеличено. Чем больше кратность, тем дольше будет процесс увеличения
( удивительно, правда? ) - [ Опции Расширенные ]
- Креативность – определяет, насколько модель увеличения вправе дополнять изображение новыми деталями;
- Структура – определяет, насколько модель будет стараться сохранить имеющуюся композицию. Чем больше значение, тем более сохранней
Стоит отметить, что здесь также есть подраздел «Генерация». По-умолчанию в нём стоит в качестве планировщика «KDPM 2».
2. Попробуем увеличить изображение в рамках стандартных значений
Сравнить два изображения можно с помощью зажатого ALT + нажатия ЛКМ по целевой картинке. Откроется режим сравнения.
( синяя рамка – «Изображение просмотрщика», зелёная рамка – «Сравнить изображение» )
Предлагаю для интереса сравнить полученные картинки:
1.11. Очищаем кеш
Генерация картинок – невероятно увлекательное занятие.
Поэтому в какой-то момент компьютер может начать «задыхаться» от нехватки ОЗУ ( ? я точно не знаю, что там происходит )
Хорошей практикой считаю периодически заходить в раздел «Очередь» ( находится под разделом «Модели» ) и очищать там кеш кнопками:
- «Очистить» ( правый верхний угол );
- «Clear Model Cache» ( левый верхний угол )
Также в этом разделе можно посмотреть очередь запросов с информацией о каждом из них.
1.12. Примерный порядок шагов генерации картинки
Как и в привычном изобразительном творчестве, процесс создания идёт от самых общих, крупных деталей к более мелким.
1. Подбираем необходимый набор тегов, генерируя в процессе картинки со случайным сид-значением
2. Получив удовлетворяющую композицию изображения, фиксируем сид-значение ( отключаем параметр «Случайное» и берём сид-значение картинки: ПКМ по картинке → Recall Metadata → Использовать сид ) и при необходимости редактируем крупные детали через изменение текста запроса
3. Когда все крупные элементы картинки станут соответствовать задумке, отправляем изображение на увеличение
4. Увеличиваем картинку в 2 раза
5. В режиме холста корректируем элементы меньшего масштаба, чем раньше.
Как ориентир оптимальности масштаба, изменяемый элемент должен занимать примерно не меньше 1/10 ограничительной рамки с параметрами оригинального размера картинки.
Например, сгенерированная мною картинка до увеличения имела разрешение 1152x1536 пикселей. Чтобы отредактировать пальцы, карандаш и спираль альбома, мне пришлось дважды увеличить картинку с кратностью x2. Визуально редактируемые мною элементы занимали вот столько пространства ограничительной рамки:
6. При необходимости редактирования ещё более маленьких деталей возвращаемся к пункту 3 и повторяем последовательность действий
7. Когда картинка будет полностью готова, «скачиваем» её через ПКМ по картинке → классическая кнопка скачивания
8. При необходимости уменьшаем готовую картинку в масштабах, кратных x2.
( я для этого использую Krita, хотя вполне может подойти любой другой графический редактор )
2. Продвинутый уровень
Наигравшись и протестировав различный функционал, непременно захочется внести больше контроля в процесс генерации картинок.
2.1 Использование DeepSeek для структуризации запросов
Не нужно удивляться, дескать, «Даже запрос для генерации картинки сами не можете составить!». Использование помощи ИскИна в составлении запроса в теговой форме – нормальное и адекватное решение, ведь наши электронные друзья гораздо лучше справляются с подобными текстовыми задачами.
Парочка вводных о DeepSeek'е:
DeepSeek – китайский ИскИн, доступ к которому предоставляется на бесплатной основе.
Если верить данным Artificial Analysis, DeepSeek ( 66 пунктов интеллекта при глубоком мышлении и 52 пункта в обычном режиме ) находится между ChatGPT-5.2 ( 48 пунктов интеллекта ) и ChatGPT-5.2 (xhigh)
( 73 пункта интеллекта )
- Глубокое мышление – заставляет ИскИна более детально думать перед ответом. После отправки запроса Вам будут доступны для чтения его размышления. Их читать совершенно необязательно;
- Поиск – открывает ему доступ в Интернет.
Для того, чтобы превратить DeepSeek в переводчика с русского на промпто-теговый, нужно:
1. Включить режим «Глубокое мышление»
2. Скопировать и отправить следующий текст
Создание промптов для Illustrious Diffusion
Я буду отправлять тебе описание картинки на естественном языке, а ты будешь переводить его в запрос для Illustrious Diffusion.
1. Используй теги собирающего арты сайта, на тегах которого обычно обучают генеративные модели ( подумай, что это за сайт ).
2. После каждого смыслового блока ставь пустую строку, кроме последнего блока.
2.1. У крайнего тега смыслового блока всегда стоит в конце запятая.
2.2. Если какой-либо смысловой блок оказался пустым, то пропускай его.
3. Не перегружай целевой и исключающий запрос излишними тегами.
4. Сильно не фантазируй. Чётко следуй запросу на естественном языке. Если не указан контекст фона, то ставь белый фон.
5. Если в моём запросе что-то не указано и это не следует из написанного, то не додумывай теги. Illustrious Diffusion разберётся. В случае чего, я отправлю тебе правку.
6. Экранируй скобки, например, «\(cat\)».
7. Не используй усиления тегов такие как «(cat:1.5)» или «((cat))», также не используй между частями тега «_»;, например, не «cat_ears», а «cat ears».
8. Промпт выведи в виде двух отдельных блоков кода ( txt ): целевой запрос и исключающий запрос.
9. Под промптом пиши описание той картинки, которую он будет генерировать.
10. Не используй стилистические теги ни в целевом запросе, ни в исключающем.Список блоков целевого запроса:
- внешность персонажа;
- одежда персонажа;
- поза;
- окружение и фон;
- композиция и освещение.Список блоков исключающего запроса:
- плохое качество исполнения и артефакты;
- текст и подписи;
- анатомические ошибки;
- всё остальное.Жди от меня запроса
3. Прогнать первый тестовый запрос, например:
Рюко Матой (Kill la Kill) с чёрными волосами и яркими голубыми глазами, с кошачьими ушами и кошачьей улыбкой. Она одета в чёрную футболку
DeepSeek должен выдать что-то на подобии этого:
Вывод, конечно, необязательно должен быть точь-в-точь. Главное, чтобы он:-
вывел два отдельных блока текста ( первый - целевой запрос, второй - исключающий запрос );
- в каждом из текстовых блоков должно быть явное форматирование, через пустые строки;
- соответствие тегов с запросом на естественном языке.
Соблюдение этих пунктов обозначает, что ИскИн вник в предоставленные ему ранее правила ( обычно он перед этим долго думает ).
Если DeepSeek выводит теги явно не в том формате, то:
- либо явно указывать ему на его ошибки;
- либо перегенерировать его ответ, нажимая на кнопку с кольцевой стрелкой ( она находится под его ответом ).
По итогу в InvokeAI должно вывестись подобное изображение:
После успешной настройки ИскИна ему можно чисто на человеческом писать разные запросы ( отключив у него режим
«Глубокое мышление» ): описание новой сцены, добавление/удаление деталей из текущей сцены, уточняющие вопросы, запрос оптимизации запроса и т.д.
Рекомендую выделять для DeepSeek, что Вы сейчас от него хотите. Например:
«Хочу уточнить, что обозначает тег "black t-shirt"?»
«Добавь персонажу на шею шарф»
«Создадим новую сцену: " <описание новой сцены> "»
2.2. OpenPose
OpenPose – основной и очень эффективный способ контроля над тем, в какой позе будет генерироваться персонаж.
Наглядно покажу, как работает данный инструмент.
Я подготовила параметры генерации, которые выдали картинку, показанную ниже, и зафиксировала сид-значение.
Допустим, я хочу поднять правую руку ( левую для зрителя ).Для этого нужно перейти в OpenPose Editor ( онлайн-сервис ).
Поднимем правую руку, примерно выставим нужный кадр и нажмём кнопку «Generate».
Редактор создал 4 изображения.
Нас интересует первое. Кликаем на него и оно автоматически скачивается.
Далее в InvokeAI переходим в режим «Холст». Открываем раздел «Assets» ( правая часть интерфейса ) в выбранной доске и загружаем скаченное изображение позы с помощью кнопки «Загрузить изображение» ( она расположена возле кнопки «Assets» )
Создаём «Слой управления», перетаскиваем на него позу и с помощью инструмента «Трансформировать» растягиваем её до нужного масштаба.
Здесь нужно сказать пару слов про ControlNet-модели.
ControlNet-модели – позволяют работать с определёнными аспектами изображения. Для разных базовых моделей генерации нужно устанавливать ControlNet-модель с соответствующим параметром Base Model.
Для работы OpenPose c Illustrious нужно поставить вот эту ControlNet-модель: «Illustrious-XL ControlNet Openpose», иначе OpenPose будет некорректно работать.
У слоя управления выбираем необходимую ControlNet-модель ( в моём случае это Illustrious ).
- Режим контроля – определяет кто будет важнее: запрос или информация ( в нашем случае это поза ) от модели ControlNet;
- Начало/конец % – определяет промежуток процесса генерации, в котором вместо модели генерации будет работать ControlNet-модель;
- Вес – определяет значимость изменений от ControlNet-модели.
Ставим «Режим контроля» = «Мега контроль», выставляем вес =1, и «Начало/конец %» от 0 до 20%
Всё готово для генерации. Собственно, запускаем её.
Полученная картинка полностью соответствует загруженной позе.
Для закрепления повторим процедуру, но теперь в OpenPose Editor выберем случайную позу ( через ПКМ-меню ) и загружаем её на слой управления.
Снова запускаем генерацию и получаем следующий результат:
Левая нога в неправильном положении? Ничего. Просто увеличим вес контрольного слоя ( ControlNet-модели ) до 1.25
Получаем вот такой результат:
Почему пальцы правой руки в другом положении? Потому что в запросе чётко не сказано, какие жесты должны отображаться, и модель генерации «выбирает» на своё усмотрение.
Что? Говорите, что поза на самом деле повёрнута к нам спиной? Не проблема. Редактируем текст запроса таким образом, чтобы не было ничего связанного с передней проекцией, и добавляем теги задней проекции: «from behind», «back», «back of the head» и т.д.
Получаем следующий результат:
3. Дополнительная информация
Здесь я собрала некоторые факты, которые обнаруживались мною в процессе работы с InvokeAI.
- Этап VAE может «зависнуть»
Это обычно происходит, когда параллельно с генерацией воспроизводится видео. В этом случае стоит остановить видеоролик до тех пор, пока генерация не завершится
( у меня такое обычно бывает из-за обоев от Wallpaper Engine. их можно просто поставить на паузу ). - Про лишние пальцы
Современные генеративные модели зачастую перестали ошибаться в количестве пальцев. «Зачастую», но не всегда.
По моим наблюдениям, иногда модель стремится сгенерировать шестипалую руку. Больше шести пальцев при адекватных значениях CFG я не замечала.
Думаю, тяга к шестипалости берёт своё начало из неверного совмещения двух фактов: «На руке пять пальцев» и «На руке есть большой палец».То есть, видимо, модели выделяют большой палец в отдельную категорию, из-за чего бывают ситуации, когда они честно генерируют пять пальцев + большой палец
( ну, это я так считаю ).
Либо модель знает про настоящую шестипалость и пытается её воссоздать.
Однако повторюсь, современные модели, например такие как WAI-illustrious-SDXL, в общем случае генерируют руки с правильным количеством пальцев.
-
Для устойчивости результативности можно в качестве эксперимента в исключающий запрос поместить тэги: «extra fingers», «sixfinger», «six fingers», «five fingers» и т.д.
Но это на уровне догадок. Надёжней будет на холсте перегенерировать проблемную область. - Генерация картинок не особо дружит с гибернацией
Дело в том, что при гибернации перед выключением компьютера всё, что находится в ОЗУ, записывается на жёсткий диск, и, соответственно, при включении ПК всё возвращается обратно.
Если долго не перезапускать компьютер, то в какой-то момент при работе с генеративной моделью система может уйти в BSOD. - Лучше избегать сильно больших значений весов
В идеале веса признаков не должны превышать единицу. Если их значение будет слишком большим, то будут проявляться различные артефакты и в целом генерация будет менее качественной. - Стоит периодически перепроверять запрос
В процессе работы с генерациями может сложиться ситуация, что модель в никакую не хочет, генерировать то, что вы подразумеваете ( например, настоятельно оборачивает голову персонажу, когда вы пытаетесь изобразить его со спины ).
В этом случае стоит перечитать запрос. Скорее всего, там закрался признак, который противоречит вашей задумке ( у меня это было «looking at viewer» ).
Такой признак может быть как в целевом запросе, так и в исключающем запросе. - Сгенерированные изображения сохраняются с метаданными
При сохранении сгенерированного изображения куда-нибудь на свой компьютер в файл записывается информация о нюансах генерации ( например, какой был запрос ). - InvokeAI может отказаться устанавливать модель
Обычно это связано с тем, что устанавливаемая модель не имеет, грубо говоря, читаемой для программы структуры.
Зачастую такой недуг встречается среди непопулярных LoRA-моделей.
Однако в более новых версиях программы была введена возможность самостоятельного ввода информации о сбойной модели, после чего она, скорее всего, заработает. - При смене основной модели генерации лучше сначала очистить кеш
Если при смене генерирующей модели не отчищать кеш, то можно достаточно скоро словить проблемы по нехватке ОЗУ. - Очищение кеша способно вернуть работоспособность LoRA-модели
- Стоит воздержаться от генерации картинок при установке новой модели
Есть существенная вероятность словить BSOD при параллельной генерации изображения и установки новой модели.
4. Напутствие
Показав тебе, читатель, как можно прикоснуться к миру генераций картинок, хочу сказать пару слов в качестве напутствия.
Возможно, попробовав генерировать картинки, ты захочешь более серьёзно заняться этим видом творчества и начнёшь делиться своими результатами с другими.
Не нужно скрывать факт того, что твоя картинка была сгенерирована, всеми силами притворяясь «классическим цифровым художником».
Видишь ли, генеративное творчество – это только-только появившееся ответвление изобразительного искусства, которое продолжит своё бурное развитие.
Уже сейчас существуют модели генерации, понимающие суть запроса, а в не столь далёком будущем развитие технологий сделает процесс генерации более точным, простым и ещё более увлекательным.
Уверена, что сфера генеративного творчества пройдёт тот же путь, что и цифровое рисования: от полного непризнания со стороны специалистов прошлой сферы творчества до нормы жизни.
Многие представители арт-сообщества будут считать своим долгом кинуть в тебя «боевые гифки/картинки/лозунги» с посылом: «Возьми карандаш!», «ИИ-творчество – не творчество!» и т.д.
Они не враги, а люди, которые, по моим наблюдениям, зачастую имеют глубокие душевные травмы. Не относись к ним строго,
не множь зло.
Также прошу тебя, не становись конвейером. Модели генерации способны выдавать новое изображение раз в полторы минуты, но это совсем не значит, что все они достойны публикации.
Лучше за один раз опубликовать одну, но зато качественную, проработанную тобой картинку, чем сотню однотипных генераций «одного шага».
В конце хочу в очередной раз напомнить, что модель генерации – всего лишь инструмент.
Ответственность за публикуемые тобою картинки лежит полностью на тебе.
Творчество не определяется инструментом. Оно определяется автором.
=- =- =-
Лисичкина И.А.