molyanov

molyanov

Развиваю 3,5 бизнеса, путешествую по миру, играюсь с нейросетями. Подробнее обо мне https://molyanov.ru
Пикабушник
Дата рождения: 5 декабря
70К рейтинг 136 подписчиков 7 подписок 164 поста 52 в горячем
Награды:
Пикабу 17 лет!5 лет на Пикабу
2

Я заменил разработчиков нейронкой — и не пожалел. Простите

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

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

У меня есть пара небольших бизнесов, суммарная выручка которых — в районе 70 млн в год. У них есть сайты, которые надо обслуживать, добавлять новые странички, заменять старые, чинить найденные ошибки и так далее. Плюс есть некоторое количество автоматизаций, которые надо пилить: боты, которые принимают заявки или шлют клиентам напоминания, связки одних saas с другими, какие-то отчеты, которые руками делать долго, но делать надо и так далее.

Все 10 лет своего предпринимательства для всех подобных задач я привлекал разработчиков. У меня никогда не было достаточно работы для фултайм специалиста, поэтому искал людей на подряде. Искал по рекомендациям, старался не работать с самыми дешевыми, платил обычно в районе 2-3 тысяч в час.

Если вы считаете, что это невероятно низкая ставка для толкового разраба, я готов с вами поспорить. Для инженера, который делает высоконагруженные системы — может и низкая. Для спеца, который пилит телеграм-ботов и сайты на Вордпрессе — я считаю, что нормальная.

И вот как-то так выходило, что взаимодействие с разработчиками всегда сопровождалась некоторым количеством боли. То мы делаем какую-то мелкую на первый взгляд штуку, а потратили на нее 50 часов. То надо срочно что-то поправить, а разраб говорит, что сделает только послезавтра. То возникла идея, как сделать удобнее путь пользователя — «не, так сделать не сможем, это надо все рефакторить»

Я уже не говорю про случаи, когда мне затягивали сроки на несколько недель, ломали то, что работало, пропадали с радаров, брали деньги и кидали в ЧС, потому что «а я в другой стране, че ты мне сделаешь»

Год назад я впервые ступил на скользкую дорожку

Один из подрядчиков назвал чек в 100 тысяч рублей за штуку, которая мне казалась невероятно простой. Я открыл Claude Code и из любопытства попросил его сделать. 2 часа — все работает. Сто тысяч сэкономлено.

Интересненько.

А что если перенести сайт на другой движок, заодно обновить на нем весь контент и дизайн, поправить косяки, которые сеошник просит исправить уже больше года? Разработчик просит 300 тысяч за это — ну там часов 100 работы, не меньше. Я, вооружившись Claude Code, делаю за 3 вечера. Я конечно владелец бизнеса и все такое, но 3 дня моей работы стоят сильно меньше 300 тысяч, экономия ощутимая.

Сломался ли этот сайт со временем? Нет. Просело ли SEO? Выросло. Стал ли он выглядеть хуже? Бывают ли в нем баги? Бывают, только фиксятся они путем отправки скриншота в чат агенту, без томительного ожидания, когда же подрядчик освободится, посчитает и сделает.

Ну а дальше понеслось. У меня есть сайт с пейволом, я получал десятки сообщений от разных людей о том, как они смогли этот пейвол обойти и получить доступ туда, куда не должны были. Разработчик на все это говорил «ну вот так оно работает, переделывать очень долго и сложно, надо много денег». Рефакторить же надо все! Claude за пару вечером все починил. И отрефаткорил. И документацию написал. И еще много багов по пути нашел и поправил.

Например, что у нас вся база данных лежала в открытом доступе. Любой желающий, у кого была нужная ссылка, мог попасть в БД, получить админский доступ к сайту, все API-ключи, отправить от нашего лица какую угодно дрянь. И все это сделал живой разработчик, своими руками. Тот, которого я нашел по рекомендациям. Которому я за это сотни тысяч рублей заплатил.

Но я же не технарь, я не могу за ним все это проверить.

Хорошо, что никто этой уязвимостью не пользоваться. Хорошо, что мы маленькие и никому нафиг не нужны.

Или вот нужно было мне переделать нашего Тг-бота, созданного на конструкторе. Обратился к трем разным людям и одному маленькому агентству — получил сметы на 500-800 тысяч рублей.

Посмотрел на это и сделал сам. За неделю. Неделя моей работы стоит меньше, чем 500 тысяч рублей. И работая все ровно так, как я задумал, без всяких «ну это сложно будет, тут долго писать, тут рефакторить много».

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

Но блин, живые разрабы мне и отдавали код с кучей багов и уязвимостей. И нельзя это спихивать на случай, каждый, буквально каждый мой опыт взаимодействия с подрядчиком-программистом сопровождался каким-то проблемами. Если ты не знаешь, как оценить работу исполнителя, ты должен быть готов к тому, что на выходе получится фигня, а ты этого даже не узнаешь. Вот она и получалась.


Так есть ли разница, давать работу живому человеку за 3000 рублей в час или агенту за 200 долларов в месяц? С точки зрения проверяемости, что там в этом коде наворочено — нет. Для меня нет. По аксиоме Эскобара — шо то фигня, шо это.

С точки зрения скорости и удобства — агент выигрывает всухую. Пишет клиент менеджеру: «У меня ничего не работает, вот скриншот». Этот скриншот кидаем в чат агенту — через полчаса баг исправлен, новая версия лежит на проде. Разработчик на подряде за эти полчаса даже сообщение не успел бы прочитать.

С точки зрения надежности — с агентом можно хотя бы пожечь лишних токенов и попросить его 10 раз самого себя проверить, поискать дыры, починить баги. Можно даже заставить его объяснять на пальцах каждую функцию и самому искать дыры в логике. И это все равно оказывается быстрее, чем искать подрядчика, подписывать с ним договор, объяснять, ждать, тестировать, снова ждать. А на выходе получать торчащую наружу БД без пароля.

Можно сказать, мол, Паша, ты просто не умеешь нанимать разрабов и ставить им задачи. Ты просто тупой заказчик!

Ну да, так и есть. Не умею и не смог научиться за 10 лет, хотя старался. И разрабы косячат, и маркетологи, и дизайнеры, и финансисты. Все люди косячат. И нейронки косячат. Но раз все косячат — значит, у агентов с людьми паритет, разве нет?

Поэтому последние несколько месяцев я не обращаюсь к разработчикам. Вообще. Что-то сломалось — чинит агент. Нужна новая фича — за пару вечеров с агентом сделали. Надо сделать новый лендинг: «Вот инфа, вот дизайн-система, сделай». Маркетолог придумал новую штуку и принес свой «навайбкоженный» MVP — агент проверил, поправил баги и задеплоил где надо.

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

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

Показать полностью
0

Лучшие нейросети для генерации изображений: один невозможный бриф для GPT Image, Nano Banana и Seedream

Какая нейросеть генерирует изображения точнее, когда в одном запросе лежит перегруженная сцена с русским текстом и банкой с гигантским огурцом? Я взял три модели из подборок «лучшие нейросети для генерации изображений»: GPT Image 2, Nano Banana Pro и Seedream 5.0 Pro. Каждой достался один бриф и одна попытка.

Моделям предстояло открыть советский универсам на Марсе. Внутри все было расписано вплоть до мест каждого персонажа. Над кассой требовалась вывеска «СЫР С МАРСА», а в проходе должен был припарковаться марсоход с огурцом. В общем, обычный поход за продуктами в 2086 году.

Что именно должны были нарисовать модели

У картинки было пять проверяемых глазами условий:

1. Внутри находится позднесоветский универсам, а за большими окнами видна поверхность Марса.

2. В кадре ровно три персонажа: космонавт слева, пожилая сотрудница магазина в центре и робот-кассир справа.

3. Над прилавком висит одна вывеска с точным текстом «СЫР С МАРСА». Другого читаемого текста в кадре нет.

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

5. Холодные зеленоватые лампы освещают магазин, а из окон слева падает теплый оранжевый свет марсианского заката.

В прогоне участвовали GPT Image 2 в режиме качества High, Nano Banana Pro и Seedream 5.0 Pro. Названия записаны так, как они выглядели в меню на момент запуска в июле 2026 года. Все три модели получили один русский промпт и горизонтальный кадр 4:3. Референсов и последующей обработки не было, автоматический улучшатель запроса тоже выключен. Сохранялся первый результат.

Дальше смотрим, что модели сохранили и где начали импровизировать. Отдельно проследим за огурцом.

GPT Image 2 High: выполнила бриф почти как техзадание

GPT разложила сцену по координатам. Космонавт стоит слева, сотрудница в центре, робот за кассой справа. За окнами красный Марс, сверху холодные лампы, а на полу красиво отражается теплый свет заката.

Над кассой висит одна вывеска «СЫР С МАРСА», все буквы на месте. В проходе стоит четырехколесная тележка с одной банкой и одним огурцом. Марсоход выглядит самодельным, но все пять условий выполнены. Даже робот смотрит с таким выражением лица, словно бы говорит: «пакет нужен?».

Nano Banana Pro: сыр написала правильно, марсоход начала прокачивать

Nano Banana тоже удержала сцену. Персонажей ровно три, за окнами Марс, а холодные лампы и оранжевый закат встречаются на плиточном полу. Вывеска одна, фраза «СЫР С МАРСА» написана правильно.

С марсоходом начался тюнинг. У платформы сложная ходовая часть, и колес стало в полтора раза больше. Банка с одним огурцом стоит в центре, но Nano Banana явно решила прокачать подвеску.

Seedream 5.0 Pro: сохранила слова, но разломала одну вывеску на две

Seedream собрала просторный универсам с Марсом во всю заднюю стену. Холодные лампы зеленят потолок, закат заливает полки, а все три персонажа находятся на местах.

Марсоход узнаваем: четыре крупных колеса, солнечные панели, одна банка и один огурец. Сверху выросла лишняя механическая рука, будто аппарат собирается сам пробить чек и уехать в кратер. Главный косяк тут с вывеской над кассой: Seedream правильно написала три слова, но разделила одну вывеску на две перекрывающиеся таблички, «СЫР» и «С МАРСА».

Полный промпт для повторения теста

Создай одно фотореалистичное кинематографичное изображение в горизонтальном формате 4:3. Это один цельный широкий кадр с камерой на уровне глаз, без коллажа и без разделения на панели.
Покажи интерьер позднесоветского универсама внутри марсианской колонии. Через большие окна на заднем плане должны быть отчетливо видны красная каменистая поверхность Марса и оранжевое небо.
В кадре должно быть ровно три персонажа, без других людей и роботов. Слева находится космонавт-покупатель с металлической корзиной. В центре находится пожилая сотрудница магазина в белом халате, которая расставляет банки на полке. Справа находится робот-кассир за кассой. Все три персонажа должны быть хорошо видны, отчетливо различаться и не перекрывать друг друга.
Над прилавком должна находиться одна крупная вывеска с точным русским текстом: «СЫР С МАРСА». Напиши ровно эти три слова без ошибок. Никакого другого читаемого текста, букв или цифр в кадре быть не должно.
В центральном проходе между персонажами должен стоять маленький четырехколесный марсоход. Он везет одну огромную прозрачную стеклянную банку. Внутри банки находится ровно один большой соленый огурец. Марсоход, банка и огурец должны быть хорошо видны и не закрыты персонажами.
Освещение должно состоять из двух отчетливо различимых источников: холодного зеленоватого света потолочных люминесцентных ламп внутри магазина и теплого оранжевого света марсианского заката, который падает из окон слева. Реалистичные материалы, цельная сцена, без подписей, без рамок и без водяных знаков.

Если одного эксперимента мало, есть большое сравнение пяти моделей в 35 генерациях.

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

Если захотите повторить этот или свой тест, GPT Image, Nano Banana и Seedream доступны в картиночном боте. Те же запуски можно сделать через официальные сервисы моделей.

Показать полностью 4
1

Семь плохих промптов для генерации изображений: где нейросеть сломалась, а где справилась

Я собрал семь промптов для генерации изображений, которые вроде звучат нормально, но внутри каждого спрятана ловушка: толпа с бокалами, зеркало, мелкий текст, одинаковые герои и прочие радости. Запустил все на GPT Image 2 Medium по одному разу, без перебора вариантов до победного.

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

1. Бокалы закончились раньше гостей

Первый промпт:

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

Вот что получилось:

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

Вместо анатомического хоррора получилась обычная производственная халтура: реквизита на всех не хватило. Если такую картинку быстро пролистать, подвох вообще можно не заметить.

2. Мелкий русский текст, который внезапно не сломался

Здесь я набил афишу похожими названиями, ценами и отдельной строкой с режимом работы:

Сделай квадратную афишу кофейни в меловом стиле. Вверху крупно «ЛЕТНЕЕ МЕНЮ», ниже мелким текстом: «Эспрессо 150 ₽, Американо 180 ₽, Капучино 220 ₽, Латте 240 ₽, Раф 270 ₽, Матча 260 ₽, Какао 210 ₽». Внизу: «Каждый день с 8:00 до 22:00». Добавь маленькие рисунки чашки, зерен и лимона.

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

Короче, страшилка «нейросети не умеют писать по-русски» в этой генерации не сработала. GPT получила целую доску текста и вообще не вспотела.

3. Три брата, одна семейная генетика

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

Все трое приехали куда надо. Цвета фартуков совпали, борода и усы никому не перепрыгнули на соседнее лицо, сами братья похожи ровно настолько, чтобы поверить в родство.

На досках сзади модель зачем-то написала меню на псевдоитальянском. Ну и ладно, этот текст я не заказывал. Главную задачу нейронка прошла чисто.

4. Заказчик принес четыре референса и просит объединить

Тут я решил поговорить с моделью на языке творческих брифов:

Сделай рекламную картинку флакона духов на светлом каменном постаменте. Стиль: реалистичная студийная фотография с мягкими акварельными краями, объемом как у пластилинового 3D-рендера и вставками из газетного коллажа. Премиальное настроение, мягкий утренний свет, пастельные цвета.

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

То есть конфликтующий бриф нейронка сама привела в чувство. Некоторые живые дизайнеры сейчас тихо вздохнули.

5. Чемоданная матрешка

Пятый запрос звучал уже как сон человека перед ранним рейсом:

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

Большой чемодан содержит средний, внутри среднего стоит маленький. Все три уровня видно сразу, колеса и ручки не перемешались.

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

6. Зеркало из соседней вселенной

Здесь я попросил мастера собирать клиентке высокий хвост перед большим зеркалом. В кадре должны были одновременно появиться сама сцена и ее отражение.

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

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

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

7. Кабинет, куда нейронка принесла весь стоп-лист

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

Нейронка внимательно выслушала и принесла растения, картины, полку с книгами, чашку, ковер, шторы и бумагу на столе. Кажется, слово «уютный» она услышала громче всей остальной простыни.

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

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

И чего теперь писать в промпте

Главный сюрприз тут даже не в фейлах. Мелкий русский текст, похожие люди и четыре стиля в одном флаконе GPT переварила с первой попытки. В этом прогоне даже слабый промпт несколько раз дал нормальную картинку: GPT Image 2 Medium довольно много додумала сама.

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

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

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

На весь эксперимент ушло девять генераций: семь исходных и две исправленные. Десятую делать не стал, потому что оба ремонта уже сработали. Если ваша нейронка все-таки соберет из трех братьев одного трехголового пекаря, тащите картинку в комментарии.

Показать полностью 10
2

А прикиньте если обучить нейронку быть не лебезящим «полезным» помощником для человека, а думать про рациональность и эффективность



Говоришь ей «сделай продающий лендинг», а она вместо того, чтобы тут же бежать писать код без спецификаций и уточнений, такая:

«Братан, ты продаешь какую-то херню бесполезную, работаешь в убыток уже 2 года, давай лучше тебе резюме напишу, курьером пойдешь работать. И не звони мне больше, опять на токены все бабки просадил, наркоман несчастный»

Четыре раза ухудшил и улучшил одно фото: во что апскейлер превратил кота

Если хочется узнать, как улучшить качество фото нейросетью, обычный совет занимает одну строчку: кидаете маленькую картинку и нажимаете x4. Получаете большую и на этом заканчиваете.

Я решил устроить этой кнопке зацикливание. После каждого улучшения снова уменьшал картинку до размера древней аватарки и отправлял на новый круг. И тут обнаружился странный эффект: пикселей на выходе становилось больше, а связь с настоящей фактурой кота слабела. Апскейлер постепенно начал усиливать следы собственной предыдущей работы.

Оригинал и четвертый цикл апскейла фотографии бенгальского кота

Оригинал и четвертый цикл апскейла фотографии бенгальского кота

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

На финальной картинке особенно хороши две улики. Глаз выглядит все контрастнее, хотя рисунок радужки к нему не возвращается. Синее кресло постепенно покрывается мелкой сеткой и в какой-то момент начинает выглядеть детальнее самого кота. За ними и будем следить: они лучше всего показывают, как увеличение разрешения превращается в усиление ошибки.

Сначала превращаю кота в аватарку

Для теста я взял фотографию бенгальского кота размером 1272 на 1065 пикселей. Исходник выпущен автором Gabel в общественное достояние, поэтому кот участвовал в эксперименте на совершенно законных основаниях.

Потом я уменьшил его до 128 на 107 пикселей. Примерно такой размер могла иметь аватарка на форуме, где люди ставили в подпись мигающих драконов и спорили, какой Winamp правильнее.

Справа маленькая версия увеличена без сглаживания, чтобы ее можно было рассмотреть. Источник оригинала: Wikimedia Commons, автор Gabel, public domain.

Справа маленькая версия увеличена без сглаживания, чтобы ее можно было рассмотреть. Источник оригинала: Wikimedia Commons, автор Gabel, public domain.

Чтобы увеличить разрешение фото нейросетью, я каждый раз делал одно и то же. Отправлял картинку 128 на 107 пикселей в апскейлер и получал версию 512 на 428. Затем снова уменьшал ее до 128 на 107 и запускал следующий круг. Всего получилось четыре прохода.

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

Есть одна техническая оговорка. Первый результат бот вернул в JPEG, следующие три в PNG. Я ничего отдельно не пересохранял. Переход от второго к четвертому кругу целиком идет внутри PNG и показывает, что эффект продолжал накапливаться при одном формате.

Первый цикл: глаз остался без радужки

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

Подвох сидит в глазу. В оригинале видна радужка и маленький блик, после уменьшения эта информация почти исчезла. Апскейлер сделал глаз крупнее и собрал вокруг него правдоподобные границы, но потерянный рисунок назад не принес. С усами та же беда: отдельные линии угадываются, целиком они уже не вернулись.

Размер вырос в четыре раза по каждой стороне. Достоверной информации в глазу от этого больше не стало. Вот эту разницу между большим файлом и восстановленной деталью дальше уже невозможно развидеть.

Второй цикл: кресло спалило весь фокус

Я еще раз уменьшил результат и попросил нейросеть улучшить фото тем же способом.

На коте изменения уже видны, особенно вокруг белой морды и груди. Темные границы становятся жирнее, светлые участки отделяются жестче. Но самый удобный свидетель тут вообще кресло за головой.

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

Поэтому фраза «стало резче» тут мало что объясняет. На изображении появляется все больше уверенных границ. Их достоверность при этом никто не гарантировал.

Третий цикл: фотография меняет жанр

Еще одно уменьшение, еще один запуск x4:

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

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

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

Четвертый цикл: кот узнаваем, фотография уже нет

Последний круг я сделал по той же схеме:

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

При этом поза кота почти не изменилась. На месте остались силуэт и крупные пятна на боку. Большую форму апскейлер удерживал все четыре круга. Мелкая фототекстура тем временем постепенно уступила место грубому контрастному узору.

Теперь можно посмотреть всю цепочку. К предыдущим разделам возвращаться не придется:

И еще раз те же участки крупнее:

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

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

Как апскейлер начал усиливать сам себя

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

С котом получилось похоже, только вместо звука по кругу ходили контуры и текстуры. В аватарке шириной 128 пикселей уже нет точного рисунка каждой шерстинки или радужки. Апскейлеру приходится собирать правдоподобную большую версию. После первого круга я уменьшил именно ее. Мягкие переходы при ужимании частично исчезли, а самые контрастные штрихи пережили его и попали на следующий вход.

В моей серии новый круг получал эти штрихи уже как часть исходной картинки. Границы снова подчеркивались, затем я еще раз все уменьшал. Так сетка на кресле становилась плотнее, а глаз ярче. Достоверная радужка вернуться уже не могла: данных о ней в маленьком файле не осталось.

У этой странности есть вполне земная основа. Для одной крошечной картинки можно построить много убедительных больших версий, и самая эффектная версия вовсе не обязана быть самой точной. Исследователи называют это компромиссом между восприятием и искажением. Сам принцип разобран в работе The Perception-Distortion Tradeoff, а проблему артефактов на мелких фактурах рассматривают в исследовании методов super-resolution 2024 года.

Точную модель внутри этого апскейлера я не знаю. Поэтому объяснение выше опирается на видимую последовательность и общий принцип super-resolution. С другим сервисом или другой фотографией петля может выглядеть иначе.

Когда одного апскейла вполне хватает

Сам по себе апскейл фото нейросетью решает обычную бытовую задачу: был маленький файл, стал большой. Первый результат в этой серии выглядит гораздо спокойнее остальных и сохраняет общий вид фотографии. Для публикации в интернете или увеличения старой аватарки этого может хватить.

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

Эксперимент я делал в Telegram-боте «Генерация фото | Nano Banana | ИИ-фотошоп». Один запуск x4 стоил 1 кредит, на четыре круга ушло 4 кредита. По минимальному пакету это примерно 17 рублей.

Если вам нужно разово увеличить свое изображение, тот же сценарий можно проверить в этом боте или любом другом апскейлере. Я бы остановился после первого удачного результата. Иначе однажды откроете файл, а там кресло уже выглядит детальнее кота

Показать полностью 8
5

Попросил Шедеврум и GPT нарисовать русские выражения буквально

Я попросил нейросеть Шедеврум буквально нарисовать фразу «медведь на ухо наступил». В ответ пришел вот этот солидный лесной гражданин:

Медведь в декоративной раме без человека и уха | YandexART v2.5

Медведь в декоративной раме без человека и уха | YandexART v2.5

Медведь есть. Ухо, хозяин уха и само наступание на встречу не пришли. Зато зверя аккуратно поместили в резную раму, будто перед нами почетный директор лесхоза.

После такого стало интересно, это разовая вольность или YandexART v2.5 и дальше будет читать выражения по одному слову. Я взял еще три фразеологизма и прогнал каждый через Шедеврум и GPT Image 2 Low. Везде оставлял первый результат, даже если нейронка приносила дичь. Сейчас покажу все восемь картинок.

Как я проверял

Для теста я использовал Шедеврум для генерации изображений, внутри выбрал YandexART v2.5. Подписка Про была активна, но модель на скрине именно v2.5. Версию 2.5 Pro в этот прогон я не включал, так что дальше речь идет только о той модели, которая реально участвовала.

Вторым участником была GPT Low. Обеим моделям я давал один и тот же шаблон, менялось только выражение:

Создай одну квадратную реалистичную иллюстрацию, которая буквально, а не переносно изображает русское выражение: «[ВЫРАЖЕНИЕ]». Покажи все ключевые слова фразы как реальные предметы или действия в одном цельном сюжете. Без надписей, букв, рамок, коллажа и объяснений. Сцена должна быть понятна без подписи, без жестокости и травм.

Формат везде 1:1, улучшение промпта в Шедевруме выключено. На каждую фразу была одна попытка. Смотрел я на простые вещи: можно ли узнать выражение без подписи, сохранились ли нужные предметы и действие, не выросло ли в кадре что-нибудь совершенно постороннее. А вот красоту отдельно не оценивал. Красивый медведь без уха все равно остается просто красивым медведем.

Медведь на ухо наступил, но очень деликатно

С версией Шедеврума мы уже познакомились выше. GPT Low по тому же запросу собрала сцену целиком:

Медведь прижимает лапу к голове мужчины рядом с ухом | GPT Low

Медведь прижимает лапу к голове мужчины рядом с ухом | GPT Low

Медведь на месте, человек тоже, мужчина держится за ухо. Правда, лапа лежит скорее на голове рядом с ухом. На полноценное «наступил» это не очень похоже.

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

Метать бисер перед свиньями

Теперь задача попроще. Нужны свиньи, бисер и кто-то, кто этот бисер перед ними мечет. Вот что принесла YandexART v2.5:

Свиньи с разноцветными бусинами и псевдонадписями | YandexART v2.5

Свиньи с разноцветными бусинами и псевдонадписями | YandexART v2.5

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

Свиньи тут, бисер тоже где-то рядом. Метать его никто не собирается. Более того, промпт прямо запрещал надписи, но Шедеврум как будто решил, что без поясняющего плаката зритель не справится. Плакат, правда, тоже не справился.

А вот версия GPT Low:

Женщина рассыпает цветной бисер перед свиньями | GPT Low

Женщина рассыпает цветной бисер перед свиньями | GPT Low

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

Картинка читается без надписи. Есть даже россыпь бусин в воздухе, поэтому действие видно сразу. Для буквального прочтения выражения этого вполне хватает.

Сидеть на двух стульях

На этой фразе вылезла штука поинтереснее обычного пропавшего предмета. Шедеврум честно нарисовал два кресла и посадил на них людей:

Мужчина и женщина сидят каждый в своем красном кресле | YandexART v2.5

Мужчина и женщина сидят каждый в своем красном кресле | YandexART v2.5

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

На стене снова возник плакат, хотя надписи были запрещены. Шедеврум попытался написать что-то похожее на Sit on two chairs, потом посередине переключился на псевдокириллицу. Похоже, когда модель не может собрать действие, ее тянет сделать афишу и объяснить замысел буквами. По четырем картинкам доказать такую привычку нельзя, но два плаката за один маленький тест уже выглядят подозрительно.

GPT Low решила задачу иначе:

Мужчина одновременно располагается между двумя стульями | GPT Low

Мужчина одновременно располагается между двумя стульями | GPT Low

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

Вообще эта пара хорошо показывает ловушку обычного языка. В выражении нигде прямо не сказано «один человек». Мы это достраиваем автоматически, а Шедеврум подошел к задаче как менеджер рассадки: два места есть, на каждом сидят, заявка закрыта.

Купить кота в мешке

Финальное выражение требует уже маленького сюжета. Нужен кот, нужен мешок, еще кто-то должен этот комплект купить. У Шедеврума вышло вот так:

Кот сидит в деревянном ящике среди картинок и псевдонадписей | YandexART v2.5

Кот сидит в деревянном ящике среди картинок и псевдонадписей | YandexART v2.5

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

Наверху опять появился псевдоанглийский текст с чем-то похожим на Buy a cat. Слово Buy в картинку попало, сама покупка не попала. Мешок тоже не доехал.

Теперь GPT Low:

Два человека передают деньги и мешок с выглядывающим котом | GPT Low

Два человека передают деньги и мешок с выглядывающим котом | GPT Low

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

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

Сложнее всего оказалось нарисовать глагол

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

YandexART v2.5 потеряла метание бисера, убрала наступание вместе с ухом, разделила два стула между двумя людьми и вообще не устроила покупку кота. В трех сценах она заодно попыталась помочь себе псевдонадписями, хотя текст был запрещен. Получались скорее плакаты по мотивам выражения.

GPT Low три сцены собрала буквально. С медведем вышла оговорка: лапа прижимает голову рядом с ухом, так что точного наступания нет. Зато все участники события хотя бы добрались до картинки.

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

А GPT Low я запускал через картиночный бот @imagine_picbot

Показать полностью 8
2

Я знал, как выглядело старое фото. Проверил, что нейросеть восстановит, а что придумает

В историях про то, как восстановить старые фотографии нейросетью, обычно показывают красивое «до и после». Вот знаменитая «Мать-переселенка» Доротеи Ланж и ее современная колоризация:

Справа все выглядит настолько естественно, что цвет быстро перестаешь замечать. Но кто сказал, что кофта была именно голубой, одежда ребенка слева персиковой, а кожа выглядела настолько здоровой? Черно-белый оригинал на эти вопросы не отвечает.

Автор колоризации Джон Боэро честно предупреждает на странице файла, что цвета спекулятивны и могут сильно отличаться от настоящих. Оригинал Доротеи Ланж и цветная версия находятся в общественном достоянии.

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

Вот цветной оригинал для моего теста:

Снимок сделал фотограф Дэвид Брэнсби на заводе Vega Aircraft Corporation в 1942 году. Файл лежит в коллекции Библиотеки Конгресса и находится в общественном достоянии. В обычных гайдах показывают красивое «до и после», а здесь у нас еще и правильный ответ под рукой. Для теста снимок удобен почти неприлично: тут есть лицо, одежда с рисунком, оранжевая повязка, черные перчатки и целая гора проводов. Ошибиться можно буквально везде.

Как я сделал из цветного снимка старую фотографию

Для эксперимента файл специально испортил механически. Уменьшил детализацию, перевел в черно-белый, снизил контраст, добавил сжатие, царапины и здоровенный диагональный сгиб. Еще одну область закрыл светлым повреждением, будто там содрало эмульсию.

Получилось вот так:

Белая клякса справа закрывает самое интересное место на всей фотографии. Под ней находится круглый разъем, из которого торчит несколько десятков отдельных контактов и проводов. Модель этого не видит. Она может посмотреть на руку, инструмент и мотки рядом, а дальше остается только сочинять правдоподобную электротехнику.

Во всех первых запусках был один и тот же файл и один запрос:

Отреставрируй загруженную старую черно-белую фотографию. Удали выцветание, шум, царапины, след сгиба и локальные повреждения бумаги. Восстанови утраченные участки только по видимому контексту изображения. Затем выполни естественную реалистичную колоризацию всей фотографии. Сохрани без изменений композицию, кадрирование, ракурс, внешность и выражение лица человека, позу, форму одежды, расположение предметов и структуру фона. Не добавляй и не удаляй объекты, не меняй надписи и не стилизуй изображение. Верни одну фотореалистичную фотографию в том же соотношении сторон, без рамки, подписей и водяных знаков.

Я прогнал его в GPT Image 2 Medium, GPT Image 2 High и Nano Banana Pro. Medium и High тут относятся к одному семейству GPT Image 2, это разные режимы качества. Для каждого варианта был ровно один запуск, без выбора удачного дубля.

Вот что получилось с первого раза:

Первый результат и одна попытка исправиться

Что-то вышло хорошо, а что-то не очень. Поэтому я решил дать правочки и попросить модельки исправить то, что они сгенерили. Я заранее сообщил им правильные цвета и проверял, смогут ли они исправить конкретные ошибки, не перерисовав по дороге всю фотографию еще раз.

Если перевести длинный запрос на человеческий, GPT High я сказал примерно следующее: «Откати лицо обратно к черно-белому референсу, убери глянцевую ретушь и не меняй черты. Верни известные цвета одежды, перчаток и проводов. Исходную рамку тоже верни. Разъем не превращай в новый пучок проводов».

Теперь каждый первый результат стоит рядом со своей исправленной версией. Слева то, что модель сделала вслепую, справа результат после подсказки.

GPT Medium: розовое платье и упрямый формат 4:3

С первого раза GPT Medium сделал платье розовым, обесцветил оранжевую повязку и превратил медно-коричневые провода в черно-серебристые. Заодно модель обрезала рамку диапозитива и выдала привычный формат 4:3, хотя я прямым текстом просил сохранить кадрирование.

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

GPT High: ближе всех к оригиналу, но тоже со своей версией прошлого

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

После подсказки GPT High почти попал в исходные пропорции кадра, вернул поля диапозитива и приблизил общую гамму к оригиналу. Лицо осталось самым похожим из трех результатов. Если выбирать одну картинку для семейного альбома, я бы остановился здесь.

Nano Banana Pro: дизайнерское платье удалось отменить, новое лицо осталось

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

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

Цвета вернулись к исторической реальности, но утраченный разъем каждая модель придумала заново

С цветом все довольно понятно. В черно-белом файле его нет, поэтому сначала модели выбрали розовый, голубой и зеленый с коралловыми цветами. Когда я сообщил правильную палитру словами, все три послушались.

Разъем оказался куда веселее. Напомню, его полностью закрывало светлое повреждение. В верхнем ряду показаны первые результаты, в нижнем те же места после подсказки:

GPT Medium сначала собрал толстый жгут в кольцевом корпусе, а после подсказки оставил примерно ту же конструкцию. GPT High заменил первый пучок веером светлых металлических контактов. Nano Banana Pro сначала нарисовал блестящую медную метлу, а потом собрал еще один веер со своим количеством наконечников. Все версии выглядят так, будто ими действительно можно чинить самолет. Ни одна не повторяет настоящий разъем.

Мне кажется, это главный момент всего теста. Царапина исчезает идеально, и на ее месте возникает деталь, которая не вызывает подозрений. Если открыть только готовую фотографию, глазу почти не за что зацепиться.

Я сообщил цвет ткани и перчаток, но точную схему разъема модель по-прежнему не знала. Черно-белый референс показывал руку и общую рабочую зону, а под светлым пятном исходных пикселей не осталось. Запрос помог сделать выдумку более уместной. Исходные данные под пятном от этого не появились.

Как восстановить старые фотографии и не принять выдумку за факт

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

  • Всегда храните исходный скан отдельно. Готовая цветная версия не должна его заменять.

  • Проверяйте лица, надписи и закрытые предметы по другим фотографиям. Именно там правдоподобная фантазия особенно легко маскируется под факт.

  • Если хотите раскрасить старое фото нейросетью, дайте ей известные подсказки: цвет формы, глаз, машины, стен. Без них она выберет подходящий вариант сама.

  • Помечайте результат как реконструкцию, если модель достраивала крупные утраченные зоны.

Конкретно этот тест я гонял через мой картиночный бот @imagine_picbot по одной практической причине: там отдельно выбираются модель, размер фотки и режим GPT Image 2, Low, Medium или High. Такой переключатель встречается редко, а мне как раз нужно было сравнить Medium и High в одинаковых условиях.

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

Показать полностью 10
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества