Главный страх при генерации рекламы нейросетью — не «будет некрасиво», а «будет кракозябра». Русская надпись на баннере съехала в китайско-азбучную кашу, и весь креатив в мусорку. Мы через это прошли и можем сказать честно: проблема почти никогда не в «плохой модели». Она в постановке задачи — мелкий плотный текст, «бумажные» объекты в кадре, QR-коды. Модель честно пытается нарисовать то, что вы попросили, и честно ломается там, где её просить не надо.
Смотрите на любой баннер в ленте: первое, что считывает человек, — крупная надпись. Цена ошибки в ней — не «пониже рейтинг», а высмеянный бренд. Одна опечатка превращает готовый макет в брак, и хорошо, если вы заметили это сами, а не подписчик в комментариях.
Мы выработали процесс, в котором такой брак ловится до публикации: свои правила формулировки запросов, автоматическая проверка каждой картинки и понятная пропускная способность. О нём и расскажем — с цифрами из наших прогонов.
Table Of Contents
Что модели вообще умеют с кириллицей
Коротко по итогам наших тестов: до четырёх коротких строк модель читается, дальше начинается псевдотекст. Заголовок из двух-трёх слов — отлично. Подзаголовок — терпимо. Абзац мелким шрифтом, оглавление, таблица с подписями — модель нарисует «что-то похожее на буквы», и при ближайшем рассмотрении это окажется заклинанием на неизвестном наречии.
Мы проверяли это на Qwen-Image-2.1 (API neuraldeep) — модель рендерит русский текст без автоперевода промпта, то есть вы отдаёте запрос по-русски и получаете кириллицу в кадре, без «перевода желания» на английский и обратно. Стоимость операции — 4 ₽ (октябрь 2026), так что ошибки стоят дёшево, а вот время на пересъёмку — не очень.
Отдельный тест был «копирайт-блок»: мы просили нарисовать плашку примерно с 35 словами мелким текстом. Результат стабильный: первые четыре строки дословно, хвост — с ошибками. Модель тянет короткий объём и «устает» к середине блока, начиная дописывать отсебятину. Вывод простой: мелкий плотный текст генератору отдавать нельзя, это не его территория.
Альтернатива, с которой мы тоже работаем, — Seedream. Наш боевой батч из 20 креативов в вертикальном формате 3:4 (1792×2400) прошёл приёмку без единой ошибки в тексте. Так что разговор не про «одна модель плохая, другая хорошая», а про то, что даже хорошие модели держат ограниченный объём надписей.
Правила, которые мы вывели
Эти четыре правила появились из отбракованных кадров и стоят того, чтобы быть в каждом промпте.
Одна надпись на кадр, крупно. Не заголовок плюс подзаголовок плюс выноска плюс плашка «акция до», а одна фраза, которая заполняет разумную часть кадра. Всё остальное — потом в редакторе, если вообще нужно.
Чистая сцена без «бумаги». Анкеты, ценники, визитки, стопки документов, газетки, чеки — всё это провоцирует модель дорисовать вокруг заголовка фейковый текст. Она видит в кадре объект, на котором по жизни бывают буквы, и любезно заполняет их псевдокириллицей. Мы убираем «бумажные» предметы из запроса полностью, и количество брака падает заметно.
Явный запрет другого текста. В промпте отдельной строкой: «другого текста в кадре нет». Без этого формулирования модель считает своим долгом заполнить пустые места — вывесками на заднем плане, надписями на коробках, «мелочью» на условном планшете.
Info
Формулировку запрета лучше ставить в конец запроса, после описания сцены: модель сначала рисует то, что просили, а потом применяет ограничение к пустым местам. В начале промпта запрет иногда «съедает» и нужный текст.
QR-коды и мелкие блоки — только наложением. Мы несколько раз пытались генерировать QR-код внутри картинки: надёжно не получается ни у одной модели из тех, с которыми работаем. QR — это не «картинка похожая на код», это данные, и генератор их не держит. Правильный путь: генерим фон и крупную надпись, а QR, контакты, условия акции и прочую мелочь кладём слоями в редакторе.
Процесс: от брифа до пакета
Наш конвейер на рекламные пакеты выглядит как очередь с приёмкой.
Шаг первый — бриф. Фиксируем одну фразу для кадра, формат, стиль, список того, чего в кадре быть не должно (см. правила выше). Текстом для брифа нередко служит то, что уже накоплено в работе с клиентами: отзывы, типовые возражения, формулировки из диалогов — про работу с контентом из переписок мы писали отдельно в статье про аудит диалогов с ИИ.
Шаг второй — генерация. Кадры уходят в очередь, из неё забираются и складываются в папку прогона.
Шаг третий — vision-проверка каждой картинки. Автоматически просим vision-модель переписать текст с готовой картинки буквенно-буквенно и сверяем с эталоном из брифа. Совпало посимвольно — кадр проходит. Не совпало — в карантин.
Шаг четвёртый — зум-кроп для спорных мест. Вот здесь важная грабля: сама vision-проверка тоже иногда ошибается, особенно на декоративных шрифтах — «читает» ровную надпись как брак. Поэтому по любому расхождению мы не выбрасываем кадр сразу, а вырезаем область надписи с увеличением и проверяем ещё раз. Решающий голос — за зум-кропом, он режет по факту пикселей, а не по догадке.
Шаг пятый — отбраковка и пакет. Прошедшие кадры собираются в комплект, непрошедшие уходят на перезапрос с уточнённым промптом или в корзину.
Warning
Не доверяйте приёмку «на глаз по миниатюре». Кракозябры в мелком шрифте на превью выглядят как нормальный текст. Проверка — либо автоматическое распознавание, либо увеличение до читаемого размера, третьего не дано.
Пропускная способность и масштабирование
По нашим замерам на общем пуле генерации — примерно кадр в 1,5–2 минуты, в очереди одновременно не больше 6 задач. Темп не «миг», но для пакетной работы более чем рабочий: батч из 20 креативов за один прогон мы собираем спокойно, пока занимаетесь другими делами.
Наблюдаемые форматы и размеры на выходе: 1:1 — 1312×1312, 16:9 — 2752×1536, 3:4 — 1792×2400. Под сторис и ленты мессенджеров чаще всего нужен именно вертикальный 3:4 — в таком размере текст остаётся читаемым даже на маленьком экране.
Масштабируется это двумя путями. Первый — облачное API: заплатил за операцию, получил кадр, железо чужое. Второй — локальная генерация на своих GPU: очередь своя, скорость своя, и картинки с внутренними макетами никуда не уходят. У нас работает и то и другое: рутинные пакеты — в облако, чувствительное и большое — на своё железо. Как устроен наш пул агентов и моделей на GPU, подробно разбирали в статье про восемь агентов на одной машине.
Что генератор делает хорошо, а где нужен человек
| Элемент креатива | Генератор справляется сам | Нужен человек или редактор |
|---|---|---|
| Крупная надпись (до четырёх коротких строк) | Да, читается без ошибок | Проверка по зум-кропу на всякий случай |
| Копирайт-блок с мелким текстом | Нет: начало точное, хвост с ошибками | Только набор в редакторе |
| Абзацы, оглавления, таблицы с подписями | Нет: псевдотекст | Только редактор |
| Фон, сцена, композиция, свет | Да, это сильная сторона | Отбраковка по стилю пакета |
| «Бумажные» объекты в кадре (анкеты, ценники) | Нет: притягивают фейковый текст | Убирать из промпта, подставлять макетом |
| QR-код | Нет: не получается надёжно | Исключительно наложение в редакторе |
| Логотип и фирменные элементы | Нет: буквы «поплывут» | Файл от дизайнера, наложение |
Рамка простая: генератор отвечает за образ и крупный акцентный текст, человек — за всю мелочь, данные и фирменное. Пытаться отдать машине и то и другое — способ получить красивую картинку с позорной опечаткой.
Итог: рецепт в пять шагов
Собираем всё в чек-лист, который мы держим под рукой на каждом прогоне.
Первое — одна надпись на кадр, крупно. Никаких вторых и третьих текстовых планов внутри генерации: заголовок есть, всё остальное доживёт в редакторе.
Второе — чистая сцена. Убираем из запроса анкеты, ценники, бумажки и прочую «поверхность для букв», потому что они притягивают фейковый текст вокруг заголовка.
Третье — явный запрет. Строка «другого текста в кадре нет» в конце промпта, после описания сцены.
Четвёртое — автоматическая приёмка. Переписали текст с картинки, сверили с эталоном из брифа; по каждому расхождению — зум-кроп, и именно он решает судьбу кадра.
Пятое — мелкое не генерим. QR-коды, контакты, условия акции, логотипы и фирменные элементы накладываются слоями поверх готового кадра.
Что это даёт на практике? Батч из 20 креативов за один прогон, которые проходят приёмку без ошибок в тексте, — при стоимости генерации 4 ₽ за операцию и темпе, который не требует сидеть у экрана. Реклама с русским текстом перестаёт быть лотереей, как только текст перестаёт быть зоной ответственности генератора в мелком кегле: крупная надпись — машине, данные и фирменное — человеку, а стык между ними закрывает автоматическая проверка.
Собираете такой же конвейер с нуля или чините существующий — приходите, у нас это часть внедрения ИИ в бизнес.
