3,583 papers
arXiv:2608.13671 74 13 авг. 2026 г. FREE

PROVE: восстановление промпта из картинки через проверяемые факты, а не угадывание

КЛЮЧЕВАЯ СУТЬ
Обнаружено: языковая модель не может одновременно сочинять текст и проверять его правду — ей выгоднее звучать гладко, чем быть точной. Метод PROVE позволяет восстановить точный промпт по готовой AI-картинке, отделив реальные детали от фантазий модели. Фишка: вместо просьбы «опиши честно» модель дробит описание на атомарные утверждения и сверяет каждое отдельно с конкретным куском фото. Работает как детектор лжи — утверждение остаётся только если доказало соответствие вырезанному участку изображения.
Адаптировать под запрос

TL;DR

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

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

PROVE решает это, разбивая описание на атомарные утверждения («мужчина», «держит чашку», «стол деревянный») и проверяя каждое по отдельности: система вырезает конкретный участок фото и спрашивает — соответствует ли утверждение именно этому кусочку картинки. Если да — утверждение остаётся, если нет — выбрасывается. Это как детектор лжи для описания, где каждая фраза должна доказать своё право на существование.


🔬

Схема метода

ШАГ 1 (Предположение): VLM генерирует общее описание картинки + список всех объектов → черновой список утверждений
ШАГ 2 (Поиск объектов): По списку объектов детектор находит на фото конкретные области (bounding boxes) → координаты + метки
ШАГ 3 (Детальное описание): Каждая найденная область вырезается отдельно, модель описывает именно её → детальные утверждения по каждому объекту
ШАГ 4 (Проверка/фильтр): Каждое утверждение сравнивается через CLIP с вырезанным участком — если сходство недостаточно, утверждение отбрасывается → список подтверждённых фактов
ШАГ 5 (Точные факты): Количество объектов, их расположение друг относительно друга — вычисляется напрямую по координатам, без модели → жёсткие факты (не проверяются через CLIP, они и так точные)
ШАГ 6 (Сборка): Все подтверждённые факты собираются в один связный текст-промпт → финальный текст

Все шаги идут внутри одного автоматизированного пайплайна (не ручной чат-диалог) — но принцип применим и вручную.


🚀

Пример применения

Задача: Вы наткнулись на крутую AI-иллюстрацию в Pinterest или на арт-сайте и хотите понять, каким промптом её могли сгенерировать — чтобы сделать что-то похожее для обложки своего телеграм-канала.

Промпт (адаптация принципа проверки под ручной чат):

Вот изображение [прикрепить картинку].

Сделай это в 3 шага, не пропуская проверку:

ШАГ 1. Опиши картинку в целом одним предложением. 
Затем перечисли ВСЕ отдельные объекты, которые видишь (люди, предметы, фон).

ШАГ 2. Для КАЖДОГО объекта из списка выше — опиши его отдельно 
и детально: как он выглядит, какого цвета, что делает, где расположен.

ШАГ 3. Теперь пройди по каждому детальному описанию из шага 2 
и проверь: это то, что ТОЧНО видно на изображении, 
или это твоё предположение/додумывание?
Помечай каждый пункт как [ТОЧНО ВИДНО] или [ПРЕДПОЛОЖЕНИЕ].
Убери всё, что помечено как предположение.

ШАГ 4. Собери всё, что осталось после проверки, в единый 
связный промпт для генерации похожего изображения в Midjourney.

Результат: Модель выдаст три отдельных блока — общий список объектов, детальное описание каждого, и финальную проверку с пометками. В последнем блоке — чистый промпт, где убраны фантазийные детали (типа «уютная атмосфера» или «мягкий свет из окна», если окна на фото не было). Промпт будет менее «красивым» литературно, но точнее передаст реальный состав картинки.


🧠

Почему это работает

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

Зато модели хорошо справляются с узкой локальной задачей — сравнить одно конкретное утверждение с одним конкретным куском изображения. Это уже не творческое сочинение, а сфокусированная проверка «да/нет».

PROVE использует именно это: разбивает большую творческую задачу на маленькие проверочные. Вместо «опиши всё честно» (что модель не умеет делать надёжно) — «опиши по частям, и каждую часть отдельно проверь на соответствие». Это как просить не «напиши правду», а «напиши черновик, потом построчно сверь с фактами и вычеркни лишнее».

Рычаги управления: - Строгость проверки (порог CLIP-сходства) → в чате это можно заменить на инструкцию «будь строг/будь мягче в оценке точности» - Уровень детализации разбивки (по объектам целиком или по каждому атрибуту объекта отдельно) → чем мельче разбивка, тем точнее, но длиннее процесс - Отдельный шаг для «точных фактов» (счёт объектов, расположение) → в ручном режиме можно попросить модель сначала посчитать объекты буквально, а потом уже описывать стиль


📋

Шаблон промпта

Проанализируй это изображение: {ссылка_или_файл}

Работай в 4 шага, не смешивай их:

1. ОБЩАЯ КАРТИНА: одно предложение о сюжете + список всех различимых объектов/элементов.

2. ДЕТАЛИ ПО КАЖДОМУ ОБЪЕКТУ: для каждого элемента из списка — отдельное 
подробное описание (внешний вид, действие, положение в кадре).

3. ПРОВЕРКА ФАКТОВ: пройди по каждому пункту из шага 2 и оцени — 
это прямое наблюдение с картинки, или логичное, но непроверяемое допущение? 
Отметь [ФАКТ] или [ДОПУЩЕНИЕ]. Оставь только [ФАКТ].

4. СБОРКА: объедини всё оставшееся в единый связный текст-промпт 
для {целевой_инструмент: Midjourney/DALL-E/Stable Diffusion}.

Задача: {что хочешь получить в итоге — например, "восстановить промпт для похожей иллюстрации"}

🚀 Быстрый старт — вставь в чат:

Вот шаблон метода PROVE (проверенное восстановление промпта). Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

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


⚠️

Ограничения

⚠️ Плохо считает и путает расположение: Модель, которая проверяет утверждения (CLIP), сама по себе плохо считает количество объектов и плохо понимает пространственные отношения («слева», «за», «между»). Поэтому в оригинальном методе счёт и расположение вычисляются отдельно, напрямую по координатам находок — не через проверку текстом. В ручном чате это придётся компенсировать явной инструкцией «посчитай объекты буквально, не через общее впечатление».

⚠️ Не работает без визуального доступа к картинке: Метод требует, чтобы модель могла разглядеть конкретные участки изображения отдельно от целого. В чате с картинками (Claude, ChatGPT с Vision) это работает, но если у вас только текстовое описание картинки — метод неприменим.

⚠️ Жертвует красотой текста ради точности: Проверенный промпт будет суше и менее «художественным», чем то, что напишет модель без проверки. Если вам нужен красивый связный текст, а не точное восстановление — этот метод не для того.


🔍

Как исследовали

Команда взяла три источника картинок: реальные фото из MS-COCO и Flickr30K (обычные бытовые сцены с кучей предметов) и Lexica — базу AI-арта с промптами, которыми их сгенерировали. По 100 картинок из каждого источника прогнали через PROVE и через семь конкурирующих методов — оптимизационных, на основе автоописания (типа BLIP) и на основе обучения с подкреплением (PromptMiner).

Дальше каждый восстановленный промпт заново подавали в две топовые модели генерации картинок (FLUX и Stable Diffusion 3.5), и сравнивали получившуюся картинку с оригиналом — насколько она похожа визуально и насколько текст промпта соответствует смыслу картинки.

Главный неожиданный результат: PROVE обошёл почти все конкурирующие методы, включая RL-подход PromptMiner, который специально обучался именно на восстановление промптов. Логика проста — RL-метод настраивался под конкретный генератор картинок и рисковал переобучиться именно под его особенности, а PROVE вообще не тренировался и не был привязан к конкретному генератору — он просто честно проверял факты.

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


📋 Дайджест исследования

Ключевая суть

Обнаружено: языковая модель не может одновременно сочинять текст и проверять его правду — ей выгоднее звучать гладко, чем быть точной. Метод PROVE позволяет восстановить точный промпт по готовой AI-картинке, отделив реальные детали от фантазий модели. Фишка: вместо просьбы «опиши честно» модель дробит описание на атомарные утверждения и сверяет каждое отдельно с конкретным куском фото. Работает как детектор лжи — утверждение остаётся только если доказало соответствие вырезанному участку изображения.

Принцип работы

Не проверяй всё описание целиком — режь его на атомарные утверждения и сверяй каждое со своим кусочком картинки отдельно. Одна большая творческая задача превращается в десяток мелких проверок да/нет. Количество объектов и их расположение вообще не доверяют модели — считают напрямую по координатам, потому что даже проверяющий (CLIP) путается в счёте и пространстве.

Почему работает

Модель, которая пишет длинный связный текст, тянется к плавности, а не к правде. Отсюда «уютная атмосфера» и «свет из окна», которых на фото нет. Но та же модель, если дать ей одно утверждение и один вырезанный кусок фото, отвечает точно — это уже не сочинение, а сфокусированная проверка. Локальную задачу да/нет модель решает надёжно, а глобальную «будь честна» — нет.

Когда применять

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

Мини-рецепт

1. Собери список: попроси модель одним предложением описать сюжет и перечислить ВСЕ объекты на фото.
2. Разбей на детали: для каждого объекта из списка — отдельное описание: цвет, действие, положение в кадре.
3. Включи детектор лжи: пройди по каждому пункту и помечай [ТОЧНО ВИДНО] или [ПРЕДПОЛОЖЕНИЕ] — выбрасывай второе.
4. Считай буквально: отдельно попроси посчитать объекты и их расположение в цифрах, не через общее впечатление.
5. Собери промпт: объедини то, что осталось после проверки, в связный текст для Midjourney или Stable Diffusion.

Примеры

[ПЛОХО] : Опиши что происходит на этой картинке и составь промпт для Midjourney
[ХОРОШО] : Перечисли все объекты на фото. Для каждого отдельно опиши детали (цвет, действие, положение). Пройди по списку и помечай каждый пункт [ТОЧНО ВИДНО] или [ПРЕДПОЛОЖЕНИЕ] — убери всё, что помечено как предположение. Собери оставшееся в единый промпт для Midjourney
Источник: PROVE: Training-Free Prompt Recovery using Verifiable Evidence
ArXiv ID: 2608.13671 | Сгенерировано: 2026-08-17 05:21

Проблемы LLM

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

Методы

МетодСуть
Разбей и проверь по частям — фильтр против фантазийРазбей общее описание на мелкие атомарные утверждения ("человек", "держит чашку", "стол деревянный"). Каждое утверждение сверь отдельно с конкретным фрагментом источника — не со всей картинкой/текстом целиком, а именно с той частью, о которой утверждение говорит. Оставь только подтверждённые. [ФАКТ] / [ДОПУЩЕНИЕ] — отметь и убери допущения. Почему работает: модель плохо держит проверку фактов в голове, когда генерирует длинный текст за один проход — там задача творческая, нужен баланс связности и правды. Но с узкой бинарной задачей "одно утверждение против одного фрагмента" справляется надёжно — это уже не сочинение, а сравнение. Когда применять: описание изображений, суммаризация документов, факт-чекинг длинных ответов, RAG. Когда не работает: нет доступа к первоисточнику по частям — если можно сверяться только с целым, а не с фрагментами, метод не даёт преимущества
Считаемые факты — вычисляй напрямую, не проверяй текстомДля фактов, которые в принципе можно посчитать или вычислить (сколько объектов, кто где расположен относительно кого) — не проси модель "проверить" это сравнением текста с картинкой. Модель, которая занимается проверкой, сама плохо считает и путает пространственные отношения ("слева", "за", "между"). Вычисли такие факты отдельно детерминированным способом (прямой подсчёт найденных объектов, координаты) и просто впиши как есть. Почему работает: проверка через сравнение текст-с-картинкой (или текст-с-текстом) — это узнавание похожести, а не арифметика. Модель для подобия неплохая, для счёта — ненадёжная. Когда применять: количество объектов, взаимное расположение, точные числа. Когда не работает: качественные атрибуты (цвет, стиль, настроение) — для них текстовая проверка подходит лучше
📖 Простыми словами

PROVE: Training-FreePromptRecoveryusingVerifiable Evidence

arXiv: 2608.13671

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

Это как если бы ты пришел к следователю и сказал: «Я видел высокого парня в красной кепке с собакой». Следователь не записывает это сразу в протокол, а заставляет тебя ткнуть пальцем в запись с камеры: где тут кепка? Где собака? Если на видео собаки нет, она вылетает из дела, даже если тебе кажется, что она там логично вписывается. В итоге получается не художественный вымысел, а сухая и точная улика, по которой можно восстановить реальную картину событий.

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

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

Короче: хватит гадать, что там «показалось» нейросети, когда она смотрела на картинку. PROVE превращает процесс угадывания промпта в доказательную экспертизу, отсекая всё лишнее. Если хочешь скопировать чей-то крутой стиль из Pinterest, тебе не нужны «красивые слова», тебе нужны проверенные факты, которые реально сработают в Stable Diffusion или Midjourney. Кто использует верификацию, тот получает предсказуемый результат, остальные продолжают бороться с галлюцинирующим AI.

Работа с исследованием

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

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с