TL;DR
Ключевой инсайт: мультимодальные LLM (те, что видят картинки) резко теряют точность, когда нужно самому решить где смотреть на изображении. Если визуальная подсказка уже нанесена — рамка, стрелка, выделение — модель отвечает значительно лучше. ETCHR — это специально обученный редактор изображений, который автоматически наносит такие подсказки перед тем, как основная модель отвечает на вопрос.
Проблема: у LLM есть два слабых места при работе с картинками. Первое — языковой разрыв: из абстрактного вопроса («что находится левее — стул или тумба?») модель не всегда понимает, куда смотреть на изображении. Второе — разрыв генерации: даже если модели объяснить что нарисовать, сложные многошаговые трансформации (например, проложить путь через лабиринт) выполняются с ошибками.
Решение: ETCHR добавляет трёхшаговый конвейер — Нарисуй → Проверь → Ответь. Сначала редактор аннотирует изображение (обводит нужную область, рисует путь, подсвечивает элемент). Затем модель проверяет: аннотация корректна? Если да — отвечает по аннотированному изображению. Если нет — по оригинальному.
Схема метода
ШАГ 1 — НАРИСУЙ (Edit)
Вход: оригинал изображения + вопрос + тип задачи
Редактор аннотирует: рамки, пути, выделения
→ аннотированное изображение
ШАГ 2 — ПРОВЕРЬ (Verify)
Понимающая модель: "Аннотация содержит нужную
визуальную информацию для ответа?"
→ Да / Нет (без самого ответа)
ШАГ 3 — ОТВЕТЬ (Reason)
Если Да → ответ по [оригинал + аннотация]
Если Нет → ответ по [оригинал] (fallback)
Все три шага — отдельные запросы / вызовы модели.
Пример применения
Задача: Ты анализируешь годовой отчёт Сбера — сложный дашборд с 12 графиками на одном слайде. Нужно найти квартал с максимальным оттоком клиентов и объяснить причину по соседним данным.
Промпт (3-шаговый вручную):
Шаг 1 — Upload + ориентация:
Смотришь на финансовый дашборд (тип задачи: понимание
графиков). Вопрос: в каком квартале был максимальный
отток клиентов и что происходило с другими показателями
в этот период?
Прежде чем отвечать — опиши: на каком графике/секции
дашборда находится нужная информация, какой именно
элемент нужно смотреть и где он расположен визуально
(левый верхний угол, центр, и т.д.).
Шаг 2 — Верификация:
Ты сказал(а), что нужно смотреть на [описание из шага 1].
Проверь: это действительно то место, где можно найти
данные об оттоке клиентов? Только подтверди или
скорректируй — пока не отвечай на сам вопрос.
Шаг 3 — Ответ:
Отлично. Теперь используя подтверждённую область —
ответь на вопрос: в каком квартале максимальный
отток и что говорят соседние показатели?
Результат:
Модель сначала локализует нужную информацию явно — называет конкретный график и его расположение. Шаг 2 отлавливает ошибки локализации ещё до того, как они попадут в финальный ответ. Шаг 3 выдаёт ответ с опорой на проверенную визуальную область, а не блуждание по всему дашборду.
Почему это работает
Слабость LLM: когда ты загружаешь сложное изображение и сразу задаёшь вопрос, модель вынуждена одновременно решать две задачи: найти где смотреть и ответить на вопрос. Это как спросить человека «что написано на третьей полке слева в четвёртом ряду» и ожидать мгновенного ответа без возможности поднять глаза.
Сильная сторона LLM: модели хорошо рассуждают по явно предъявленным данным. Если ты сначала локализовал проблему — «смотри вот на этот элемент» — точность резко растёт. Это принцип работает даже в текстовом режиме: когда ты сначала просишь модель найти и озвучить нужный фрагмент, а потом уже анализировать.
Как метод использует это: разбивает задачу на два независимых шага — навигация и анализ. Плюс добавляет шаг проверки между ними: ошибка в навигации не попадает автоматически в ответ. Это работает и вручную — просто разбей свой вопрос на три отдельных запроса по схеме выше.
Рычаги управления: - Тип задачи в шаге 1 → явно назови: «понимание графиков», «пространственное расположение», «поиск мелких деталей» — это помогает модели настроиться на нужный режим внимания - Строгость верификации в шаге 2 → добавь «если не уверен — скажи, что аннотация ненадёжна» для консервативного режима - Визуальная аннотация вручную → самый сильный вариант: обведи нужную область в любом редакторе (даже Paint) и загрузи рядом с оригиналом
Шаблон промпта
[Шаг 1 — Локализация]
Смотришь на изображение (тип задачи: {тип_задачи}).
Вопрос, который нужно ответить: {вопрос}
Сначала опиши: какой элемент / область / секция
изображения содержит нужную информацию и где
она расположена визуально. Не отвечай на вопрос.
---
[Шаг 2 — Верификация]
Ты указал(а) на {описание из шага 1}.
Это действительно содержит информацию для ответа
на вопрос "{вопрос}"? Подтверди или скорректируй —
без финального ответа.
---
[Шаг 3 — Ответ]
Используя подтверждённую область, ответь: {вопрос}
Плейсхолдеры:
- {тип_задачи} → «понимание графиков», «поиск объекта», «сравнение элементов», «пространственное расположение», «мелкие детали»
- {вопрос} → твой исходный вопрос к изображению
- {описание из шага 1} → вставь ответ модели из шага 1 в шаг 2
🚀 Быстрый старт — вставь в чат:
Вот шаблон Edit-Verify-Reason для визуальных задач.
Адаптируй под мою задачу: {твоя задача с картинкой}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит тип визуальной задачи и уточнит вопрос — потому что без этого она не сможет правильно настроить шаг локализации и верификации.
Ограничения
⚠️ Требует мультимодальной модели: работает только там, где LLM видит изображения — ChatGPT-4o, Claude, Gemini. В текстовых моделях не применимо.
⚠️ Ручная аннотация даёт максимум: полный эффект метода — когда изображение реально аннотировано (рамки, стрелки). Текстовый 3-шаговый промпт — частичная версия; для сложных пространственных задач эффект ниже.
⚠️ Не для простых вопросов: если ответ очевиден из изображения «с первого взгляда», трёхшаговый процесс — лишние токены без прироста качества.
⚠️ Сам ETCHR — не в ChatGPT: автоматический редактор из статьи требует запуска специализированной модели (FLUX-based, fine-tuned). В обычном чате его нет. Статья применима через ручное воспроизведение принципов.
Ресурсы
Работа: ETCHR: Editing To Clarify and Harness Reasoning (2025) Авторы: Beichen Zhang, Yuhong Liu, Jinsong Li, Yuhang Zang, Jiaqi Wang, Dahua Lin Организации: The Chinese University of Hong Kong, Shanghai AI Laboratory, Shanghai Jiao Tong University, Shanghai Innovation Institute Код: https://github.com/InternLM/ETCHR
