Этот пост не попал бы в сеть, но астрологи объявили неделю нейроарта на Хабре.  А  полотно в конце поста сложно не назвать нейроартом. Kandinsky art.

Kandinsky 2.1
Kandinsky 2.1

Лирика. Постараюсь коротко, я итак на этой неделе просидел за Kandinsky 2.1 недопустимо много времени, чего не планировал, но любопытство перевесило.  Все мои знания вероятно поверхностны со всеми вытекающими, более детальное изучение я хочу оставить на зиму. Но повторюсь: 1-е я публикую только из-за нейроарта, 2-е так я могу получить больше информации при возможном фидбэке.

  Первая нейронка  была установлена на ПК в 2018 году, но VR перетянул на себя одеяло и после недолгих тестов она так и осталась лежать в ящике без дела. Комп весной 22-го продан,  за происходящим я следил. Следил и поэтому после каждой новости, о выходе новой открытой сетки было досадно, что под рукой остался только маломощный офисный ноут и занятость. Я посидел немного в дискорде и в некоторых браузерных сетках, но из всех вариантов устроила только SD через Google Colab. После этого появилось понимание промта и моделей для загрузки.

После SD стало понятно, что промт-инженерия делает свое дело и превращает  твой запрос в достаточно узкий коридор для выдачи. Потестив Kandinsky с детальным промтом, я остался доволен результатом и думал, что уже наигрался. Пока в перерыве не попросил ChatGPT представить, что «мой город это человек и выдать портретное описание этого человека в 60-ти пунктах». ChatGPT с задачей справился.

Все 60 пунктов я копирую и отправляю Kandinsky. На что он выдает арт, на котором я без сомнений узнал родной Омск.

Ну выдал и выдал. Не нравится не бери. Но я слышал историю о двух китах, разговаривающих о еде, поэтому взял. Всю партию оптом.

Я начал вбивать всё, что  Kandinsky выдал и понял - нора слишком глубока.

С неё всё началось.
С неё всё началось.

С неё всё началось, хотя как оказалось позже конкретно этот запрос выдает достаточно рандомные результаты, в отличии от «DIMINIMINI» - с ним у Kandinsky ассоциация четкая. (Спойлер: промт, указанный на картинке тоже очень устойчивый, но он не для слабонервных).

Я не буду описывать с какими запросами и как я экспериментировал, какие веса и последовательности расставлял. Хотя заведу в телеге группу, куда буду скидывать интересные выдачи и  позже объясню почему.  Цель этого поста нейроарт. Краткий обзор, наблюдения, вопросы.

В общем я начал вбивать запросы генерируемые сеткой и смотреть на результат. По 5-10 генерации на один запрос. Позже я разбил генерации на три типа и проверил их на сочетание с другим промтом:

  1. Рандомные

Рандомные
Рандомные
"1 2 DIMINIMINI S"
"1 2 DIMINIMINI S"
  1. Генерации с повторяющимся признаком, но вариативность все же широкая

Заметно вертикальное разделение на всех изображения
Заметно вертикальное разделение на всех изображения
  1. Вариативность  узкая. У Kandinsky четко сформирован ответ на запрос.

Вариативность  узкая
Вариативность  узкая
Вариативность  узкая
Вариативность  узкая
При добавлении к запросу "GIRL"
При добавлении к запросу "GIRL"

И ещё пара примеров.

Ну и само собой родилась идея сделать полотно, где бы Kandinsky 2.1 сам для себя делал запросы.

Сначала так
Сначала так

Потом так:

Итог

AAINILL, AAIILL., AHILLLL LL, LVVIIYL, AAAULU, KYCKIK, ANUUK, LLVAUIK, I KIK U A VV V AK U KK, A IS VL II I WIEI IN, AAN N IUA, AAU AAIUUIL, A NA NAN A, AHILLL, AALLALLi, AAU U, HILLI, KCYK K, AALL, AAALL, AN AMIAO, MN M MT, NAN AA, NIS, YIYY, KYYO, ARAL, ARE ALLLL, ARPRLL, SJSSSS.
AAINILL, AAIILL., AHILLLL LL, LVVIIYL, AAAULU, KYCKIK, ANUUK, LLVAUIK, I KIK U A VV V AK U KK, A IS VL II I WIEI IN, AAN N IUA, AAU AAIUUIL, A NA NAN A, AHILLL, AALLALLi, AAU U, HILLI, KCYK K, AALL, AAALL, AN AMIAO, MN M MT, NAN AA, NIS, YIYY, KYYO, ARAL, ARE ALLLL, ARPRLL, SJSSSS.

Зачем я хочу сделать склад с не очевидным промтом? Да грамотный запрос делает достаточно узкий коридор, где генерацию уже не сбивают даже стили, предложенные разработчиками (и среди не очевидных запросов такие тоже есть), да нужный результат ты вероятно добьешься быстрее логичными запросами. Но эти иррациональные запросы часто рождают довольно интересные устойчивые генерации, к созданию которых я бы даже не смог представить с какой стороны подходить и которые могут взаимодействовать с другими запросами. И к сожалению я уже не смогу сгенерировать несколько интересных вариантов (поэтому и не вставил их в пост). Все три типа убирают проблему белого листа. Внутри Kandinsky 2.1 множество кротовых нор, которыми он сокращает себе дорогу к конечному результату, у него есть свои имена для конечных точек (а когда ему всё совершенно понятно он уже не выводит текст на изображение).

Само собой хотелось бы услышать мнения. Как ни как я малокомпетентен. Частично запросы под последним изображением, хотя их итак видно.

P.S. Ещё пример взаимодействия:

Он действует на  «CAT, MAN, DOG».  На «CAR, WATER, CUP» он не действует
Он действует на  «CAT, MAN, DOG».  На «CAR, WATER, CUP» он не действует

Комментарии (4)


  1. dxq3
    13.04.2023 20:22

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


    1. Dmittry_B Автор
      13.04.2023 20:22

      да, портреты любит. особенно с рваной кожей и прочими дефектами. но есть очень короткие запросы с интересной выдачей (как по мне).

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

      С запросом через смайлы тоже есть интересные варианты.


  1. Aleksid1
    13.04.2023 20:22

    Лица и особенно глаза какие-то неживые.


  1. linuxcore
    13.04.2023 20:22

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