ИИ-агенты и автоматизация

Чем кормить браузерного агента: скриншот или текст

Чем кормить браузерного агента: скриншот или текст

Браузерный агент видит страницу одним из трёх способов: скриншотом, разметкой или текстовым представлением вроде дерева доступности. Выбор определяет счёт сильнее, чем выбор модели: на нашем замере страницы каталога разметка занимает 136 904 знака против 23 077 знаков видимого текста — разница в 5,9 раза, и умножается она на каждый шаг сессии.

Разберём три представления, что мы измерили сами, во что это обходится в рублях и когда картинка всё-таки нужна.

Три способа показать страницу

Скриншот. Агент видит то же, что человек. Универсально и дорого: изображение тарифицируется отдельно и добавляется к текстовой части запроса.

Разметка. Полный исходный код страницы. Содержит всё, включая служебные атрибуты, инлайновые стили и данные, которые на экране не видны.

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

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

Что мы измерили сами

Чтобы не пересказывать чужие числа, мы замерили собственную страницу каталога 13 сентября 2026 года.

ПредставлениеЗнаковПримерно токенов
Полная разметка страницы136 904~45 600
Видимый текст страницы23 077~7 700

Отношение — 5,9 раза. Перевод в токены грубый, по оценке три знака кириллицы на токен, и он занижает разницу: в разметке много латиницы и служебных символов, которые токенизируются хуже.

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

Во что это обходится

Считаем на той же странице. Один просмотр в виде разметки — около 45 600 входных токенов.

Модель₽ за миллионОдин просмотрСессия из 10 шагов
deepseek-v4-flash10,052,51
qwen-3-6-flash30,147,52
haiku-4-580,3620,06
sonnet-4-6120,5530,10
opus-5301,3775,24

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

Та же сессия на видимом тексте вместо разметки обошлась бы примерно в шесть раз дешевле. Механика подсчёта разобрана в статье как считать токены.

Когда скриншот действительно нужен

Картинка не роскошь, а инструмент под конкретный класс задач.

Проверка внешнего вида. Съехала вёрстка, перекрыт элемент, не видно кнопку — текстовое представление этого не покажет в принципе.

Элементы без текстовой подписи. Иконка без названия существует для человека и почти не существует для дерева доступности.

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

Спорный результат. Когда агент утверждает, что действие выполнено, а проверить это по тексту нельзя.

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

Что сокращает расход сильнее всего

Четыре приёма по убыванию эффекта.

  1. Отдавать фрагмент, а не страницу. Агенту нужна форма или таблица, а не шапка, меню и подвал на каждом шаге.
  2. Не хранить старые снимки в истории. Страница из третьего шага на десятом шаге бесполезна, но оплачивается. Достаточно последнего состояния и краткой сводки предыдущих.
  3. Ставить текстовое представление по умолчанию, а скриншот включать по явному признаку задачи.
  4. Ограничивать длину ответа инструмента. Инструмент, возвращающий тысячу строк, оплачивается на каждом последующем шаге.

Общий принцип тот же, что и в любом агенте: дорого не думать, дорого таскать за собой историю. Устройство цикла разобрано в статье как сделать ИИ-агента.

Три ошибки, которые видно по счёту

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

Полная страница вместо изменившейся части. После клика меняется одна таблица, а в модель уходит вся страница заново. Лечится отдачей фрагмента по селектору или сводкой «что изменилось».

Бесконечная сессия. Агент работает час, история растёт, и к концу каждый шаг стоит дороже всей первой половины задачи. Одна задача — одна сессия, новая задача начинается с чистого контекста.

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

Что даёт права и безопасность

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

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

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

Второй момент: инструкции могут прийти со страницы. Текст на сайте, который агент читает, способен содержать указания, адресованные модели. Это отдельный класс атак, и он не зависит от представления — разбирали его в статье промпт-инъекция: как защититься.

Чем это отличается от обычного парсинга

Резонный вопрос: зачем вообще модель, если есть парсер.

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

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

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

Что проверить в своём агенте

Короткая ревизия на полчаса.

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

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

Чего мы не утверждаем

Мы не измеряли дерево доступности и не приводим по нему чисел. Измерены разметка и видимый текст одной страницы.

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

Мы не даём оценку в токенах как точную. Перевод знаков в токены — грубая прикидка, точное число даёт токенизатор конкретной модели.

Что нужно, чтобы посчитать своё

Ключ заводится за минуту на keydealer.ru/login — почта и пароль, без документов и без зарубежной карты. Оплата российской картой в рублях, один ключ на все 53 позиции каталога.

Самый быстрый способ проверить — прогнать одну свою задачу дважды, на разметке и на текстовом представлении, и сравнить usage в ответах. Разница видна на первой же сессии.

Что держать в голове

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

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

Скриншот нужен под задачи про внешний вид, а не по умолчанию. Как мы проверяем факты и почему у каждой цифры стоит дата — на странице о проекте. Завести ключ: keydealer.ru/login.

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

Что дешевле отдавать агенту — скриншот или текст страницы?

Текст. На нашем собственном замере страницы каталога разметка занимает 136 904 знака против 23 077 знаков видимого текста, то есть в 5,9 раза больше. Скриншот тарифицируется отдельно как изображение и добавляется к этому сверху.

Что такое дерево доступности?

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

Когда агенту всё-таки нужен скриншот?

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

Почему длинная сессия с браузером дорожает нелинейно?

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

Как сократить расход браузерного агента?

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

Сколько это стоит в рублях?

Страница в 45 тысяч входных токенов на позиции за 8 ₽ за миллион стоит 0,36 ₽ за один просмотр. Десять шагов с накоплением истории дают около 20 ₽ за сессию, и это без учёта скриншотов.

Источники