Не всё нужно отдавать нейросети: как я сделала ИИ-примерку в 500 раз дешевле

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

11 мин 11 Обновлено 29 сентября

Не всё нужно отдавать нейросети: как я сделала ИИ-примерку в 500 раз дешевле

TL;DR

  • Посетитель сайта загружает фото своего товара и сразу видит, где на нём будет стоять код маркировки. Это снимает главное сомнение до разговора с менеджером.
  • Сначала я поручила всё нейросети. Получилось плохо: вместо кода выходила мешанина, которую не читает сканер, а сам товар на фото менялся.
  • Точное я отдала обычному коду, смысл нейросети: программа находит площадки и рисует настоящий код, нейросеть только называет номер. Одно это решение дало и качество, и цену.
  • Потом я сравнила несколько нейросетей на одних и тех же фото. Когда выбор сужен до размеченных площадок, дешёвая на простых кадрах называет ту же площадку, что и дорогая. Платить больше стало не за что.
  • Итог: одна примерка стоит около полутора копеек, это замер по счёту. Генерация той же картинки нейросетью обошлась бы примерно в восемь рублей, это расчёт по тарифу. Отношение – больше чем в 500 раз.

Цифры – с прогонов моего стенда и боевого сайта, июль и август 2026 года. Исключение одно: цена генерации картинки посчитана по опубликованному тарифу, таких прогонов я не делала.

Что спрашивают перед заказом маркировки

Маркировка в России охватывает уже десятки товарных групп, и список каждый год растёт. На упаковку наносят квадратный код Data Matrix (дата-матрикс – двумерный штрихкод из чёрных и белых точек) системы "Честный знак". Мой клиент наносит такие коды на товары других компаний.

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

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

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

Человек видит свой товар, а не чужой пример, и спокойнее оставляет заявку.

Попытка "пусть нейросеть сделает всё"

Самое очевидное решение – отдать фото нейросети, которая рисует картинки, и попросить дорисовать код. Я проверила это на двух таких нейросетях, и обе ошиблись по-своему.

Первая нарисовала не тот код. Я просила Data Matrix, а она поставила QR-код (кью-ар – другой тип штрихкода, тот, что часто видят на рекламе и в меню). Почему именно его, не знаю: состав обучающих данных закрыт. Клиент, который пришёл за маркировкой, увидит эту ошибку сразу.

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

Одно фото, четыре попытки поставить код

Исходный кадр: мягкая пачка и жестяная банка

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

Вторая: код рассыпался в мешанину, а фото переписано целиком

Мой код: настоящий, читается сканером, но лежит плоским квадратом

Он же после переноса освещения: складки и тень упаковки легли на код. Форма здесь плоская, натяжение видно на круглых, банке и флаконе

Два последних кадра в ленте забегают вперёд: это уже настоящий код, который строит моя программа. Они там для сравнения, нарисованный против вычисленного.

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

Образец и то, что вернула нейросеть

Образец: настоящий код, построенный программой

Что вернула нейросеть: контур и структура на месте, но по модулям совпало 55 процентов

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

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

Как я поделила работу

Представьте, что вы клеите наклейку на подарок и советуетесь с другом. Вы показываете три места и спрашиваете: куда лучше? Друг отвечает: во второе, первое – это крышка, её снимут. Наклейку вы клеите сами, ровно.

Так я и построила решение. Я написала собственную программу, которая делает всю точную работу, а нейросети оставила одно решение. Здесь программа – это вы, а нейросеть – друг.

Путь от фотографии до превью с кодом. Выделен единственный шаг, который делает нейросеть
  1. Посетитель загружает фото своего товара
  2. Программа находит на фото сам товар
  3. Размечает ровные места и нумерует их
  4. Нейросеть называет один номер
  5. Программа проверяет, что место подходит
  6. Рисует настоящий код и накладывает его

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

Программа размечает места, нейросеть выбирает

Пять мест на медведе. Нейросеть назвала первое: на гладкой лапе, спереди товара

Косметика, пять предметов в кадре. Выбор сделала та самая дешёвая модель, которая осталась в работе

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

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

Почему цифра, а не точное место. Сначала я просила нейросеть саму показать, куда ставить код. Она регулярно промахивалась и попадала на швы. Это известная слабость. В открытом сравнении PointArena (май 2025) даже сильные на тот момент модели показывали нужную точку далеко не всегда, а подробные рассуждения точность указания ещё и снижали. Тестировали там прошлое поколение, но в моих прогонах на моделях посвежее поведение то же: коды ложились на швы и стыки даже после подробного запроса. Выбрать из готовых вариантов нейросети гораздо проще.

Есть и вторая выгода. Нейросети берут оплату за объём текста, который читают и пишут. Когда нейросеть сама искала место, она писала длинный ответ с цифрами и объяснениями. Теперь она отвечает одной цифрой. В лучшем прогоне ответ ужался с 591 токена до 23, а время с 6,6 до 1,9 секунды. На кадрах ниже цифры больше: это стенд, там я прошу модель ещё и объяснить выбор, чтобы было что разбирать.

Какую нейросеть выбрать: тест вместо догадок

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

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

Стенд сравнения: шесть готовых фото, товарная группа и список нейросетей, которые прогоняются на одном снимке
Интерфейс тестового стенда: выбор фото, товарной группы и списка нейросетей для прогона

Через стенд прошёл весь список: модели OpenAI, Anthropic, Google, Qwen, DeepSeek, от самых дешёвых до самых дорогих. И не только они: гонялись все тестовые фото, с разными моделями и разными настройками. Версий алгоритма за время работы набралось около сорока, и на каждой прогонялись модели по нескольким фото, то есть счёт идёт на сотни прогонов.

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

Вот четыре прогона одного и того же медведя в раннем режиме, когда нейросеть сама называла место. Моделей здесь четыре: три из итоговой серии плюс одна из тех, что пробовались по ходу. Каждая выбрала своё, и по этим четырём кадрам видно, почему я от этого режима ушла. Две попали в чистые места, а две промахнулись: одна села кодом прямо на шов, хотя в ответе написала, что шов обошла, вторая вынесла код за край лапы, наполовину в воздух. При этом время и длина ответа разошлись сильно: 4,1 секунды против 14, это в три с половиной раза, и 149 токенов против 661, это в четыре с лишним.

Одно фото, четыре нейросети, четыре разных места

Первая: код сел на шов туловища, хотя в своём же ответе модель написала, что шов обошла

Вторая: код на подушечке лапы, место чистое. Но 14 секунд, самый долгий прогон из четырёх

Третья: код на туловище справа ниже банта, место чистое. Бант она отдельно пометила как отделяемую деталь

Четвёртая: худший результат. Код наполовину висит в воздухе, за краем лапы. Зато самый быстрый и самый короткий ответ из четырёх, 4,1 секунды и 149 токенов

Три нейросети на одних и тех же восемнадцати прогонах. Балл поставлен по проверке кадра пикселями, а не по объяснениям самой модели
НейросетьСредний балл из 10Побед из 6 категорий
gpt-5.6-luna, самая дешёвая5,82
gpt-5.55,32
claude-opus-5, самая дорогая4,21

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

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

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

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

Из этого выросла схема из двух ступеней.

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

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

Где нейросеть всё-таки нужна

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

В одном из прогонов программа нашла идеальное место: ровное, гладкое, без швов, все проверки пройдены. А нейросеть от него отказалась и пояснила почему: это съёмная мягкая накладка, код на неё клеить нельзя. Она была права. Анализ пикселей этого в принципе не видит: по картинке накладка неотличима от корпуса.

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

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

Отдельный вывод, который стоит запомнить: пока я не показала маску прямо на фото, правки делались по следствиям, а причина угадывалась. Час работы съело именно это. Показывайте внутреннее состояние алгоритма картинкой, а не цифрами в логе.

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

И работает это не только на отрисованных мокапах. Вот снятая фотография косметики: тени, наклон, отражения. Слева код положен плоским квадратом, справа программа развернула его на семь градусов по форме банки.

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

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

Сколько это сэкономило

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

Два подхода к одной задаче. Цифры округлённые
ПодходОдна примерка1000 примерокВремя
Нейросеть перерисовывает фото8 руб.8 000 руб.10–30 с
Программа рисует, нейросеть выбирает место1,5 коп.15 руб.2–9 с

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

Как проверить, не переплачиваете ли вы за ИИ у себя

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

  1. Знаете ли вы, сколько стоит одно нажатие? Не месячный счёт, а цену одного вызова. Если цифры нет, экономить пока не на чем: сначала замер.
  2. Что из этой задачи можно посчитать формулой? Размеры, форматы, координаты, суммы. Всё это должен считать обычный код: он не берёт денег и на одном входе даёт один и тот же результат.
  3. Нейросеть придумывает ответ или выбирает из готовых вариантов? Второе дешевле и стабильнее. Перевести задачу из первого во второе – самая дешёвая правка из всех возможных.
  4. Когда вы последний раз пробовали модель попроще? Прогоните две-три на своих же примерах и сравните результат, а не то, как убедительно каждая объясняет выбор: верификация фактов здесь важнее красивого текста.

Если ИИ-функция у вас уже работает и счёт растёт, напишите мне: посмотрю, где она переплачивает.

Когда нужен такой подход

Маркировка здесь частность. Общий случай такой: на сайте есть задача, которую обычно делают руками, покупают дорогим сервисом по подписке или заказывают отдельной разработкой с нуля.

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

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

Частые вопросы

Может ли нейросеть нарисовать на фото рабочий код маркировки?

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

Что тогда делает нейросеть в этом конфигураторе?

Выбирает место. Программа находит на фото сам товар, размечает ровные площадки, годные под код, и нумерует их. Нейросеть смотрит на размеченный снимок и называет один номер. Она видит то, чего не видит анализ пикселей: что эта гладкая площадка – съёмная крышка или амбушюра, на которую код клеить нельзя.

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

Модели плохо показывают пальцем: в открытом сравнении PointArena лучшие попадают в 60 и 67 процентах случаев, а пошаговые рассуждения точность указания ещё и снижают. В моём эксперименте коды ложились на швы и стыки даже после подробного запроса. Надёжнее разметить варианты на самой картинке и попросить выбрать номер.

Какая модель лучше выбирает место под маркировку?

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

Можно ли использовать такое превью как инструкцию по нанесению кода?

Нет, это иллюстрация. Точное место зависит от того, что видно только человеку: съёмные детали, материал, конструкция упаковки. Обязательную схему нанесения выдаёт специалист при приёмке товара. Превью показывает типовое допустимое место и честно сообщает, когда определить его по фото нельзя – например, когда в кадре транспортная упаковка, а не потребительская: для неё правила размещения свои и зависят от товарной группы.

Что изменилось, когда конфигуратор вышел со стенда на боевой сайт?

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

Сколько стоит сделать такой конфигуратор на своём сайте?

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

Сколько времени занимает такая работа и что нужно от заказчика?

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

11

Материалы по теме

Что почитать дальше по этой теме

Исследование Как проверить, что нейросеть работает правильно: из 18 объяснений правдой оказались 4 Нейросеть объясняла свой выбор складно, а по факту заявленное совпало с реальностью в 4 случаях из 18. Разбираю, чем измерение отличается от впечатления и что спросить у подрядчика, который делает вам ИИ-функцию. 9 мин 9 28 сентября 2026 Разбор Сколько стоит ИИ на сайте: тысяча нажатий за 15 рублей вместо восьми тысяч За каждое обращение к нейросети на сайте платит владелец сайта. Разобрала по своим замерам, из чего складывается счёт, что меняет цену в разы и как поставить защиту, чтобы публичная страница не съела бюджет. 11 мин 7 28 сентября 2026 Исследование Кто на самом деле сканирует ваш сайт в 2026: разбор логов реального интернет-магазина Выгрузила access-логи B2B-магазина за три дня и проверила каждого "ИИ-бота" по IP. Результат: 70% "Googlebot" – подделки, Bytespider – самозванец целиком, а ChatGPT за это время привёл на сайт 70+ живых людей. Полный разбор с таблицами, графиками и методикой проверки. 11 мин 447 21 июля 2026