вернуться в раздел "Научные труды"
Источник: Савчук, Д. Ю. Интеллектуальный агент Vision Task agent, выполняющий задания, представленные на изображении / Д. Ю. Савчук // Математика, информатика, компьютерные науки, моделирование, образование (МИКМО-2025) : Сборник научных трудов Всероссийской научно-практической конференции, Симферополь, 16–19 апреля 2025 года. – Симферополь: ИП Корниенко А.А., 2025. – С. 231-239. – EDN VIOWZV .

УДК: 004.8+004.89+004.93 | MSC2020: 68T50+68T01

Интеллектуальный агент Vision Task Agent, выполняющий задания, представленные на изображении

Савчук Д.Ю.

Научный руководитель: Анафиев А.С., к.ф.-м.н., доцент

Крымский федеральный университет им. В. И. Вернадского, РФ

Аннотация

Савчук Д.Ю. Интеллектуальный агент Vision Task Agent, выполняющий задания, представленные на изображении. Представлена архитектура интеллектуального агента Vision Task Agent, предназначенного для выполнения заданий, представленных на изображении пользовательского интерфейса. Актуальность задачи обусловлена необходимостью автоматизации взаимодействия с визуальными элементами интерфейса на основе текстовых инструкций. Предложенный агент использует алгоритмы компьютерного зрения для детекции элементов интерфейса и извлечения текстовой информации с помощью OCR. Полученное описание передаётся языковой модели, которая интерпретирует инструкции и генерирует последовательность действий в формализованном виде. Рассматриваются ключевые компоненты системы, включая модуль анализа интерфейса, описание среды и систему выполнения действий. Разработка может найти применение в задачах автоматизации UI-тестирования, помощи пользователям и построении интеллектуальных систем взаимодействия с интерфейсами.

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

Savchuk D. Yu. Intelligent Agent Vision Task Agent, Performing Tasks Presented in the Image. Abstract. This paper presents the architecture of an intelligent agent called Vision Task Agent, designed to execute tasks based on visual input from user interface screenshots. The relevance of the problem lies in the growing need for automation in interacting with visual elements based on textual instructions. The proposed agent employs computer vision algorithms to detect UI elements and uses OCR to extract textual information. The resulting description is passed to a language model that interprets the instructions and generates a sequence of actions in a formalized format. The paper discusses the key components of the system, including the interface analysis module, environment representation, and the action execution system. The proposed solution can be applied in UI testing automation, user assistance, and the development of intelligent systems for interface interaction.

Keywords: user interface processing, intelligent agent, computer vision, OCR, automation, language models.

Введение

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

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

В то же время, повседневная практика требует от интеллектуальных систем умения действовать в условиях визуального восприятия. Представьте, что человек показывает агенту снимок экрана и говорит: «Нажми на красную кнопку». Чтобы выполнить это задание, агент должен не только «увидеть» кнопку, но и понять смысл инструкции. Такая задача требует объединения нескольких областей – компьютерного зрения, обработки естественного языка и систем планирования действий.

Рассмотрим прототип Vision Task Agent – интеллектуального агента, способного выполнять задания, представленные на изображениях пользовательского интерфейса. Агент анализирует изображение, формирует описание среды и, основываясь на текстовой инструкции, найденной в сформулированном описании среды, генерирует последовательность действий для взаимодействия с интерфейсом. Предлагаемый подход лежит на пересечении нескольких современных направлений искусственного интеллекта и открывает перспективы для построения систем нового поколения: более универсальных, гибких и человекоподобных в своем поведении.

1. Постановка задачи

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

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

Основная сложность задачи заключается в отсутствии структурированных входных данных. Интерфейс представлен исключительно в виде изображения – без DOM-структуры, CSS-меток или логической иерархии. Инструкция при этом так же нужно вытаскивать из изображения. Таким образом, агенту требуется объединить возможности компьютерного зрения, оптического распознавания текста (OCR) и задачу естественной обработки языка, чтобы определить задачу и составить алгоритм ее решения.

Дополнительно стоит отметить несколько тонких моментов:

Таким образом, разработка Vision Task Agent требует интеграции нескольких технологий и предполагает работу в условиях высокой неопределённости, что делает задачу научно и практически значимой.

2. Архитектура решения

Разработка Vision Task Agent основана на модульной архитектуре, каждый компонент которой отвечает за отдельный этап обработки задачи – от восприятия визуальной сцены до принятия решения о действиях. На рис. 1 представлено общее описание ключевых компонентов системы.

Текущая блок-схема работы интеллектуального агента

Рисунок 1 – Текущая блок-схема работы интеллектуального агента

Общий принцип работы. На вход агент получает изображение пользовательского интерфейса (скриншот). На выходе агент должен сгенерировать и выполнить последовательность действий в строго определённом формате:

{"action": "move", "id": "1"} // передвинуть курсор на центр элемента с id=1 {"action": "left_click"} // нажатие левой кнопки мыши {"action": "input_text", "text": "example@mail.com"} // ввод текста {"action": "query_description"} // запрос обновления описания экрана {"action": "stop"} // остановка работы

Этап 1: Анализ изображения интерфейса. На первом этапе будем использовать модель для детекции объектов на изображении YOLOv11 [1], обученную на датасете веб-элементов [6]. На специализированном веб-сайте был найден подходящий датасет средне-низкого качества, что позволило модели обучиться лишь до значения mAP50-95 в 0.427. Тем не менее, модель хорошо справляется со своей задачей.

После этого каждая найденная область передаётся в OCR-модуль EasyOCR [2], чтобы извлечь текстовое содержимое элемента. Вместе с тем вычисляется доминирующий цвет для каждого блока, и переводится из формата RGB в текстовое описание, что позволяет модели иметь представление и о цвете каждого элемента.

На выходе формируется описание интерфейса в виде списка объектов со следующими параметрами:

Пример работы модели детекции веб-интерфейса

Рисунок 2 – Пример работы модели детекции веб-интерфейса

После извлечения данных обо всех обнаруженных элементах, сохраняем их в формате json, т. к. это простая и понятная для LLM структура данных. Пример описания:

[ {"id": 0, "class": "button", "text": "Login", "color_rgb": [255,0,0], "bbox": [...]}, {"id": 1, "class": "input", "text": "", "color_rgb": [255,255,255], "bbox": [...]}, ... ]

Этап 2: Интерпретация инструкции. В языковую модель (используем QWEN2.5:7b [3]) подается промпт с описанием задачи, существующими возможностями и ограничениями совмество с описанием интерфейса в JSON формате. LLM анализирует инструкцию и в качестве ответа выдает алгоритм действий в формате JSON, и так же краткое описание поставленной задачи и значимости каждого действия для ее решения. Такой подход позволяет языковой модели самой определять для себя задачу и генерировать алгоритм для ее решения. Требование описывать задачу и значимость действий повышает качество выдачи модели.

Следуя примерам из [4], написан промпт:

You are an agent interacting with user interfaces. Your task is to analyze the provided UI description and generate a step-by-step action plan to help the user. Input: 1. A list of UI elements, each with coordinates (bbox), text, class, color, and other properties. 2. The interface may contain instructions like: "Authorization is required to continue. Authorize." 3. Pay special attention to the colors and text of the UI elements when performing actions. Your job: Generate a **sequence of actions** to solve the problem using **only** the allowed actions listed below. ....

Этап 3: Генерация и выполнение действий. LLM выдает алгоритм действий в виде списка команд. Пример результата:

[ {"action": "move", "id": 1}, {"action": "input_text", "text": "user@example.com"}, {"action": "move", "id": 0}, {"action": "left_click"}, {"action": "stop"} ]
Пример работы агента детекции веб-интерфейса

Рисунок 3 – Пример работы агента детекции веб-интерфейса

Выполнение команд происходит при помощи библиотеки PyAutoGUI, которая позволяет управлять курсором, кликами и вводом текста. Так же потенциально можно выполнение команд в симулированной среде с целью дообучения LLM под задачу, используя алгоритмы обучения с подкреплением.

Возможные улучшения. Архитектура спроектирована с расчётом на масштабируемость и эволюцию. Одним из ключевых направлений развития является переход от классического пайплайна OCR + LLM к использованию Vision-Language Models (VLM), способных воспринимать визуальную сцену и текстовые задания в едином контексте. Это открывает целый ряд перспектив:

Таким образом, интеграция VLM и вспомогательных моделей (retrievers, memories) может существенно повысить гибкость, устойчивость и «интеллектуальность» агента, приближая его к поведению реального пользователя. Текущая же реализация Vision Task Agent представляет собой гибкую систему, объединяющую CV, OCR и LLM в едином рабочем процессе. Агент способен автономно решать решать простые задачи, которые еще пару лет назад мог решать только человек.

Заключение

Предложенная архитектура демонстрирует жизнеспособность идеи создания интеллектуального агента, способного выполнять задания, представленные на изображении, используя связку YOLO + OCR для извлечения структуры интерфейса и LLM для интерпретации инструкций и принятия решений. Таким образом, получено корректное выполнение простых заданий на типичных веб-интерфейсах.

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

Кроме того, связка YOLO + OCR обеспечивает хорошее описание лишь на уровне текста, геометрии и цвета. Такие данные недостаточны для понимания семантики элементов, особенно в динамических и стилистически насыщенных интерфейсах. Решение этих проблем видится в переходе к Vision-Language Models, способным обрабатывать визуально-текстовый контекст как единое целое. Такие модели не только повысят устойчивость агента к визуальному разнообразию, но и откроют возможности интеграции знаний об интерфейсах, использования памяти и поиска дополнительной информации.

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

Список литературы

  1. Ultralytics. YOLOv11: Real-time Object Detection [Электронный ресурс]. – Режим доступа: https://github.com/ultralytics/ultralytics (дата обращения: 05.04.2025).
  2. Jaided AI. EasyOCR: Ready-to-use OCR with 80+ Languages Supported [Электронный ресурс]. – Режим доступа: https://github.com/JaidedAI/EasyOCR (дата обращения: 01.04.2025).
  3. Alibaba DAMO Academy. Qwen2.5: Open Multilingual Large Language Models [Электронный ресурс]. – Режим доступа: https://huggingface.co/Qwen (дата обращения: 03.04.2025).
  4. Хантер Н. The Art of Prompt Engineering with ChatGPT: Hands-on Guide to Crafting Effective Prompts. - 2023: Independently published, 2023. - 206 с.
  5. Lewis, P., et al. Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks [Электронный ресурс]. – Режим доступа: https://arxiv.org/abs/2005.11401 (дата обращения: 02.04.2025).
  6. Датасет веб-интерфейсов [Электронный ресурс]. – Режим доступа: https://universe.roboflow.com/diploma2025/all_elements-ldx8v (дата обращения: 25.03.2025).