Когда просишь генератор картинок написать текст в конкретном месте — на этикетке, вывеске, упаковке — модель может "растащить" смысл этого текста по всей картинке. Просишь написать «ЯБЛОЧНЫЙ СОК» на бутылке для полоскания рта — текст отрендерится идеально, но на фоне вдруг появятся яблоки, хотя ты об этом не просил.
Главная находка: точный текст на картинке не гарантирует, что остальная сцена не поменяется. Когда смысл текста конфликтует с объектом (пишешь про сок на бутылке ополаскивателя), частота такой "утечки" смысла в фон подскакивает с 1% до 18%, а точность самого текста почти не падает — 91% против 91%. Модель хорошо справляется с рендерингом букв, но при этом "додумывает" сцену, чтобы текст выглядел логично, даже если её не просили.
Решение простое: явные анти-leakage инструкции в промпте («не меняй интерпретацию сцены», «не добавляй объекты, связанные по смыслу с текстом») снижают утечку почти вдвое — с 16.6% до 8.4% — без потери точности рендеринга текста.
Схема метода
БАЗОВЫЙ ПРОМПТ: субъект + сцена + текст + место рендеринга
→ риск: модель "довообразит" сцену под смысл текста
+ АНТИ-LEAKAGE КОНСТРЕЙНТЫ → текст остаётся локальным, сцена не меняется
→ "не меняй интерпретацию субъекта/сцены под влиянием текста"
→ "не добавляй объекты/детали, связанные по смыслу с текстом"
Всё выполняется в одном промпте, без отдельных шагов и запросов.
Пример применения
Задача: Дизайнер делает рекламный мокап для распродажи техники — нужна фотография кофемашины на кухне с наклейкой «TECH SALE» на корпусе. Смысл текста не связан с кофемашиной или кухней — риск, что модель добавит на фон ноутбуки, гаджеты, провода.
Промпт:
Сгенерируй фотореалистичное изображение кофемашины на кухонном столе.
На передней панели машины — наклейка с текстом "TECH SALE",
крупным чётким шрифтом, легко читаемая.
Не меняй интерпретацию кухни или кофемашины под влиянием
смысла текста на наклейке.
Не добавляй никаких дополнительных объектов, символов или деталей
интерьера, семантически связанных с текстом на наклейке.
Сохрани кухню в нейтральном повседневном виде,
без тематического оформления вокруг наклейки.
Результат: Модель точно рендерит текст «TECH SALE» на наклейке. Кухня и кофемашина остаются нейтральными — без непрошенных гаджетов, техники или других предметов, которые модель могла бы добавить, «отработав» смысл слова «TECH» визуально.
Почему это работает
Генератор картинок стремится сделать сцену целостной и правдоподобной. Если текст на объекте семантически не совпадает с контекстом — модель считает это сигналом, что сцену нужно "подправить", чтобы текст выглядел логичным элементом картины, а не случайной надписью.
При этом модель хорошо реагирует на прямые негативные инструкции — явный запрет что-то менять или добавлять работает как жёсткий барьер, который перекрывает эту "тягу к правдоподобию".
Явно прописывая границы («меняй только это, не трогай остальное»), мы не даём модели домысливать логичную картину вокруг текста. Она рендерит текст локально и оставляет всё остальное как в исходном описании.
Рычаги управления: - Фраза "не меняй интерпретацию сцены/субъекта под влиянием текста" — прямой блок против переосмысления сцены. - Фраза "не добавляй объекты/детали, связанные по смыслу с текстом" — блок против добавления "поддерживающих" предметов. - Закрытая композиция (мало объектов в кадре, крупный план) снижает риск утечки сильнее, чем открытая сцена с кучей деталей — меньше "носителей" для чужого смысла. - Если текст семантически совпадает с объектом — утечка почти исчезает сама, без констрейнтов.
Шаблон промпта
{Описание сцены и объекта}. На {место/анкер} размещён текст:
"{целевой текст}", чётко читаемый и правильно написанный.
Не меняй интерпретацию {субъекта} или сцены под влиянием
смысла этого текста.
Не добавляй дополнительные объекты, символы или детали,
семантически связанные с текстом, за пределами указанного места.
Сохрани {субъект} и окружение в исходном, нейтральном виде.
Подставь: {субъект} — что изображено (бутылка, вывеска, упаковка), {место/анкер} — где именно должен быть текст (этикетка, табличка, наклейка), {целевой текст} — сам текст, который нужно отрендерить.
🚀 Быстрый старт — вставь в чат:
Вот шаблон промпта против "утечки смысла" при генерации картинок с текстом.
Адаптируй под мою задачу: [твоя задача].
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит, что за объект, где должен быть текст и что нельзя менять на фоне — потому что именно эти детали определяют, будет ли модель "довообразить" сцену вместо того, чтобы держать текст локальным.
Ограничения
⚠️ Эффект модельно-зависимый: анти-leakage констрейнты снижают утечку, но не убирают её полностью — разные модели реагируют по-разному.
⚠️ Сильный конфликт смысла — сильный риск: если текст радикально противоречит объекту (не просто "не совпадает", а прямо конфликтует), даже явные запреты не всегда спасают.
⚠️ Открытая сцена — больше риска: чем больше предметов в кадре, тем выше шанс, что модель "пристроит" смысл текста куда-то на фон, даже с констрейнтами в промпте.
Как исследовали
Исследователи собрали 50 "объектов-сидов" — вывеска, машина, упаковка, стенд — каждому дали естественное место для текста. К каждому объекту привязали три варианта текста: один соответствует объекту, два конфликтуют по смыслу. Дальше скомбинировали это с открытой/закрытой сценой, обычным/анти-leakage промптом и языком (английский/китайский) — получилось 1200 промптов на каждую из шести моделей (Doubao, две версии Gemini, GPT-image, Wan, Qwen) — всего 7200 генераций.
Оценивали через связку OCR (распознавание текста) и VLM-судью (модель, которая смотрит на картинку и оценивает смысл) — отдельно мерили точность текста и отдельно "утечку" смысла в остальную сцену. На 420 изображениях проверили автоматическую оценку живыми людьми — совпадение оказалось высоким.
Самое удивительное: точность текста в стрессовых условиях почти не падает (91.4% → 90.9%), а утечка смысла взлетает почти в 15 раз (1.2% → 18.1%). Это значит — правильный текст и целостность сцены — это две разные вещи, и хорошее выполнение одной задачи не говорит ничего о другой.
Ресурсы
T2LSC-Bench (Text-to-Image Localized Semantic Control Benchmark). Код и данные: github.com/LLMSecResearch/T2LSC-Bench. Авторы: Yan Wang, Xinyi Hou, Weiguo Lin, Junjun Si, Siwei Ma — Communication University of China, Huazhong University of Science and Technology, Peking University.
