Когда мы говорим о настройке моделей генерации изображений, существуют два популярных способа — embeddings и LoRA. Они оба улучшают работу модели, но делают это по-разному.
Сперва напомню, что LoRA можно представить как «надстройку», которая добавляет модели новые стили, темы или даже целые идеи. Это как будто модель получает новое «расширение» и теперь может создавать изображения, которых раньше не умела. Благодаря этому можно придумать и воплотить уникальные визуальные идеи. О настройках лоры я писал здесь 👇
Что такое embeddings?
Если LoRA — это гибкость и мощь, то Embeddings — простота и ограниченность. Встраиваемые модули работают иначе. Они не учат модель новому, а скорее помогают модели лучше использовать то, что она уже знает. Можно представить это как «слияние» нескольких понятий в одно целое, которое модель уже понимает. Если у вас есть embedding для какого-то стиля или персонажа, модель будет направляться в эту сторону, даже если изначально она не знала, как это создавать. Но этот подход не добавляет глубоких изменений, как LoRA, а просто корректирует то, что модель и так умеет.
Когда-то embeddings были популярны, но теперь многие предпочитают LoRA, потому что они могут значительно менять возможности модели. Однако embeddings всё ещё полезны, если нужно что-то немного улучшить, не меняя модель слишком сильно. Далее я расскажу как найти их, как добавить в Fooocus и покажу пример использования.
Где найти и как добавить embeddings в Fooocus?
Процесс поиска и добавление встраиваемых модулей очень похож на процесс добавления LoRA в Fooocus 👇
Однако, в отличие от LoRA, вам не нужно будет делать дополнительные настройки в интерфейсе Fooocus. Вам необходимо использовать следующий токен в вашем запросе 👇
embedding:filename
Здесь «embedding» означает обращение к встраиваемому модулю, а «filename» — имя файла, содержащего этот модуль.
Найти embeddings для Fooocus можно на civitai.com в разделе «Models» (1). Воспользуйтесь фильтром (2) и выберите период «За всё время» (3). Выберите тип «embeddings» и модель «SDXL 1.0» 👇
Выберите подходящий встраиваемый модуль и убедитесь, что он предназначен для SDXL (1). Затем скачайте его (2) и скопируйте имя файла (3), которое будет запускать embedding в работу. В качестве примера я выберу модуль, создающий тональность (чёрно-белый с красными элементами) с именем «RBW-XL» 👇
После этого положите загруженный файл в папку embedding в директории Fooocus 👇
Для того, чтобы embending заработал, мне необходимо использовать следующий синтаксис:
embedding:RBW-XL
Или, если я хочу уменьшить влияние модуля, можно указать вес:
(embedding:RBW-XL:0.8)
Соответственно мы увидим следующие результаты генерации 👇
Кстати, я рекомендую вам соблюдать определенную структуру, поэтому старайтесь ключевые слова ставить в начало или в конец запроса. И напоминаю о статье, где я описываю базовый принцип правильного написания промта в Fooocus 👇
Где хранить embedding?
Кстати, я предпочитаю хранить скаченные embedding и другие модели вне директории Fooocus. Это удобно, если вы планируете использовать другие интерфейсы для генерации изображений и применять те же модели. Для того чтобы Fooocus брал модели из другой директории, необходимо донастроить его.
С помощью текстового редактора откройте файл config.txt в директории Fooocus 👇
В строке "path_embeddings" откройте квадратную скобку, оставьте строку с путём embeddings по умолчанию и поставьте запятую после неё. Затем с новой строки укажите дополнительную директорию, в которой Fooocus будет искать ваши встраиваемые модули. Обратите внимание, что для указания пути используются двойные обратные косые черты «\\», а после последней строки не ставится запятая. После этого с новой строки закройте квадратную скобку и поставьте запятую. Результат должен выглядеть так 👇
Сохраните файл конфигурации и перезапустите Fooocus. Теперь Fooocus будет использовать embeddings из указанной вами директории.
Что в итоге выбрать: LoRA или embedding?
Выбор между embeddings и LoRA зависит от того, что вам нужно. LoRA подходит, если хочется глубоко изменить и расширить возможности модели, а embeddings лучше справляются с небольшими корректировками и улучшениями.
Тем не менее, это не значит, что их нельзя использовать вместе. Наоборот, я настоятельно рекомендую сочетать их в одном проекте.
Не забудьте заглянуть в мой уютный чат в Telegram-канале! Там вы сможете пообщаться с единомышленниками и задать интересующие вас вопросы. Кроме того, я регулярно делюсь своими авторскими работами, которые вы можете найти в поиске по нужным стилям, направлениям и объектам 👇