AI-агенты и Agentic Reasoning: Не рассуждай, не хлопочи — AI-агенты рассуждают


Поделиться:

В этой статье я расскажу о концепциях AI Reasoning и AI-агентов — темах, которые сегодня у всех на слуху, но пока реализуются лишь в немногих проектах.

В последние годы в области искусственного интеллекта основное внимание было сфокусировано на больших языковых моделях (LLMs) и больших мультимодальных моделях (LMMs). Они научились генерировать текст, анализировать изображения и комбинировать данные из разных источников.

Большие языковые модели (LLM) действительно, отлично понимают естественный язык, фразы, идиомы и много чего знают. Но при этом LLM не обеспечивают прозрачность, «галлюцинируют», плохо справляются с расчётами и каждый раз выдают разные результаты выполнения одного и того же запроса. Из-за этого не получается использовать LLM в множестве процессов и корпоративных приложений.

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

Мы видим, как крупные лаборатории искусственного интеллекта, такие как OpenAI, движутся в этом направлении: ChatGPT может получить доступ к интернету через интерфейс инструментов, а их новая модель о1 содержит взаимодействующие компоненты в своей логической цепочке.

Учитывая темпы развития генеративного ИИ, уже в этом году AI-агенты могут стать такими же распространёнными, как сегодня чат-боты. Уже сегодня их называют трендом № 1 на 2025 год Gartner, Сбер и другие уважаемые компании.

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

Эти темы помогут понять, почему AI-агенты стали ключевым направлением развития AI-технологий (и есть ли жизнь после хайпа).

И снова про данные: AI-приложения должны ещё лучше работать с неструктурированными данными

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

При этом компании ожидают от AI-приложений не просто обработки и анализа неструктурированных данных, но и естественного взаимодействия, максимально похожего на общение с человеком. Пользователи хотят, чтобы системы умели поддерживать диалог в контексте и на естественном языке, понимать аудио, изображения и видео, и работать в реальном времени.

 

AI agents data

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

Стек генеративного AI

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

AI Stack

Уровень 1: Аппаратное обеспечение

Модели генеративного ИИ требуют большого объёма знаний для создания контента. Например, GPT-3 обучалась на ~45 терабайтах текстовых данных.

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

NVIDIA доминирует на рынке GPU (конкурируют с ней AMD и Intel), Google — на рынке TPU, а Taiwan Semiconductor Manufacturing Company (TSMC) производит почти все чипы.

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

Уровень 2: Облачная инфраструктура

Графические процессоры (GPU) и тензорные процессоры (TPU) стоят дорого и их не так-то просто купить. Поэтому для большинства организаций использование их в собственной on-premise инфраструктуре экономически нецелесообразно и большая часть задач по созданию, дообучению и эксплуатации крупных моделей ИИ выполняется в облаке.

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

Уровень 3: Фундаментальные модели

Фундаментальные модели обучаются на огромных наборах данных как из открытых источников (Wikipedia, государственные сайты, соцсети, книги и так далее), так и из крупных баз данных. Например, OpenAI сотрудничала с Shutterstock для обучения своей модели изображений на собственных данных Shutterstock.

Обучение фундаментальных моделей — сложный и дорогостоящий процесс. На разработку и обучение моделей, таких как GPT-3 или GPT-4, уходят миллионы долларов. Поэтому рынок фундаментальных моделей пока остаётся под контролем крупных технологических компаний (американских OpenAI, Google, Meta и китайской DeepSeek) и компаний поменьше, но с большими инвестициями (Anthropic, Cohere, AI21 Labs и других).

Организации часто хотят использовать LLM внутри периметра компании для обеспечения безопасности данных. Некоторые поставщики (например, Cohere) развёртывают свои LLM в корпоративной среде. Также организации всё чаще используют open-source LLM, такие как Llama 2, внутри корпоративного контура. Подробнее об использовании LLM в корпоративной среде можно узнать в нашей статье Построение RAG c большой языковой моделью LLM (Llama 2) и FAISS: подробное руководство.

Уровень 4: GenAI-приложения

Сегмент, который относится к разработке приложений на базе генеративного ИИ.

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

Поиск подходящих use cases — это важная задача, которая прокладывает «последнюю милю» между фундаментальной моделью и пользователем.

О вариантах настройки взаимодействия приложений и моделей мы написали в статье «Serverless-решения для LLM-приложений: 5 шаблонов и примеры».

Что делает AI-приложения AI-агентами?

У AI-агентов есть четыре признака, которые их отличают от обычного AI-приложения.

  1. Рефлексия (Reflection): способность анализировать собственные действия, находить ошибки и корректировать результаты.
  2. Планирование и рассуждения (Planning / Reasoning): декомпозиция задач на подзадачи, определение оптимального порядка их выполнения.
  3. Использование инструментов (Tool Use): интеграция с внешними системами и API для выполнения действий.
  4. Мультиагентное сотрудничество (Multi-agent collaboration): взаимодействие нескольких агентов для достижения общей цели.

 

AI-Agents Reasoning

 

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

1. Рефлексия и итерации

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

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

Анализ и ревью результатов (на примере разработки программного кода)

Агент может использовать LLM для анализа написанного кода. Модель оценивает результаты своей же работы, выявляет слабые места, ошибки и предлагает улучшения. Это процесс самоанализа, в котором агент самостоятельно инициирует критику своего кода, чтобы повысить его качество.

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

Итеративные улучшения

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

Автоматизированное тестирование

Для проверки корректности и качества кода модель способна запускать модульные тесты (unit tests). Результаты этих тестов становятся важным источником информации для дальнейших улучшений. Такой подход объединяет автоматизацию тестирования и анализ, что позволяет более эффективно выявлять ошибки и повышать качество программного обеспечения.

Если вы хотите узнать больше о рефлексии с использованием LLM, обратите внимание на следующие исследования:

  • Self-Refine: Iterative Refinement with Self-Feedback, Madaan et al. (2023)
  • Reflexion: Language Agents with Verbal Reinforcement Learning, Shinn et al. (2023)
  • CRITIC: Large Language Models Can Self-Correct with Tool-Interactive Critiquing, Gou et al. (2024)

2. Использование инструментов: от слов к делу

Основная идея заключается в том, что AI-агент не только обрабатывает текстовые запросы, но и принимает решения о том, какие инструменты использовать для выполнения задач, а затем самостоятельно применяет их. Это позволяет агентам не только планировать действия, но и выполнять их. Рассмотрим самые простые примеры:

1. Поиск в интернете

Задача: Найти лучшую кофеварку по отзывам.
AI-агент инициирует поиск, анализирует результаты и предоставляет структурированный ответ с рекомендациями.

2. Выполнение кода

Задача: Рассчитать сложный процент. AI-агент генерирует и выполняет код:

principal = 100
interest_rate = 0.07
years = 12
value = principal * (1 + interest_rate) ** years

После выполнения возвращает модели результат вычислений.

3. Анализ данных

AI-агенты могут использовать специализированные инструменты, такие как Wolfram Alpha или Bearly Code Interpreter, для выполнения сложных математических расчётов, создания финансовых моделей или анализа данных для научных исследований.

4. Работа с изображениями

AI-агенты способны генерировать изображения (например, с помощью DALL-E или Kandinsky), анализировать содержимое изображений, распознавать объекты и подписывать выявленные элементы.

5. Автоматизация задач

AI-агенты помогают автоматизировать самые разные операции, такие как создание встреч в календаре, отправка писем и выполнение других повторяющихся процессов.

3. Планирование и рассуждения (Planning / Reasoning)

Planning / Reasoning — это подход, позволяющий LLM решать сложные задачи, которые требуют выполнения нескольких действий.

  1. Анализировать запросы и выделять в них ключевые задачи.
  2. Разбивать сложные запросы на отдельные этапы.
  3. Координировать выполнение этих этапов с использованием различных инструментов.
  4. Интегрировать результаты для достижения итогового результата.

Пример: Создание изображения и подготовка к нему аудиоописания

Запрос: «Создай изображение, где девочка читает книгу в такой же позе, как мальчик на изображении example.jpg, и опиши его голосом.»

Для выполнения этого запроса модель анализирует запрос, выделяет четыре ключевых этапа выполнения:

  • Определение позы с помощью изображения мальчика в example.jpg.
  • Генерация нового изображения девочки в аналогичной позе.
  • Создание текстового описания изображения.
  • Преобразование текста в речь.
  1. Определение позы (модель OpenPose). LLM вызывает модель OpenPose, которая анализирует исходное изображение и извлекает информацию о позе мальчика.
  2. Генерация изображения (модель Google ViT). Полученные данные о позе передаются модели генерации изображений (например, Google ViT), которая создаёт изображение девочки в указанной позе.
  3. Описание изображения (модуль Vit Gpt2). Сгенерированное изображение передаётся в модуль описания изображений (ViT GPT2), который создаёт текстовое описание на основе изображения, например: «Девочка сидит на стуле и держит книгу в руках, поза девочки повторяет позу мальчика».
  4. Озвучивание текста (модель Text-to-Speech). Текст передаётся в модель Text-to-Speech (например, Fast Speech), которая преобразует его в голосовую озвучку.

Этот пример подробно описан в работе «HuggingGPT: Solving AI Tasks with ChatGPT and its Friends in Hugging Face» (Shen et al., 2023).

4. Мультиагентные системы: один агент — хорошо, а много — лучше

Multi-Agent Collaboration имитирует работу команды специалистов, где каждый AI-агент отвечает за свою часть работы.

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

Многие исследования подтверждают эффективность подхода Multi-Agent Collaboration. В частности, в работе «Dynamic LLM-Agent Network: An LLM-agent Collaboration Framework with Agent Team Optimization» (Liu et al., 2023) отмечается, что при решении задач из MMLU (Massive Multitask Language Understanding) точность выполнения увеличилась до 25% при использовании мультиагентного подхода по сравнению с одиночным агентом.

Также в исследовании «Maia-2: A Unified Model for Human-AI Alignment in Chess» (McIlroy-Young et al., 2023) описывается, что модель Maia-2 достигла самой высокой точности предсказания ходов в шахматах.

Пример применения мультиагентной системы: разработка ПО в ChatDev

В работе «Communicative Agents for Software Development» (Qian et al., 2023) можно посмотреть, как устроена ChatDev — платформа для разработки программного обеспечения на базе чата. В ChatDev используются специализированные агенты, каждый из которых выполняет определённую роль. Агенты ориентируются в том, что им следует друг другу сообщать с использованием цепочек сообщений в чатах, и как общаться.

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

Все роли выполняются LLM, а взаимодействие между агентами ними построено на естественном языке и языках программирования.

Мультимодальные модели

Следующий шаг в развитии Multi-Agent Collaboration — интеграция мультимодальных моделей. Эти агенты смогут одновременно работать с текстом, изображениями и видео.

Пример: AI-Агент для анализа изображений и видео

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

  1. Обрабатывать изображения, подсчитывая объекты (например, игроков на поле) и исключая нерелевантные элементы.
  2. Анализировать видео, выделять ключевые моменты (например, забитые голы) и генерировать метаданные.
  3. Генерировать код, который можно повторно использовать.

Демонстрацию работы визуального AI-агента в рамках выступления Andrew Ng можно посмотреть на YouTube, начиная с минуты 16:32.

1. Общий процесс

  1. Пользователь задаёт агенту задачу через текстовый запрос (например, «Подсчитать игроков на поле» или «Найти момент забитого гола»).
  2. Агент принимает изображение или видео в качестве входных данных.
  3. Агент анализирует задачу и формирует план действий для её выполнения.
  4. На основе этого плана агент генерирует код (например, на Python). Код можно использовать повторно для обработки других данных.
  5. Код выполняется, и агент возвращает результат в удобной форме (например, количество игроков, кадр с голом, метаданные видео).

2. Механизм выполнения

Шаг 1: Обработка запроса. Агент использует prompt, чтобы понять задачу и определить, какие шаги необходимо выполнить. Например, запрос «подсчитай игроков на поле» инициирует процесс подсчёта объектов, учитывая, что нужно игнорировать игроков на заднем плане.

Шаг 2: Генерация плана и кода. Агент разбивает задачу на этапы: локализация объектов, фильтрация (например, исключение заднего плана) и подсчёт. На основании задачи агент генерирует Python-код, который включает все необходимые шаги для обработки данных.

Шаг 3: Выполнение кода. Сгенерированный код запускается, чтобы обработать изображение или видео, провести необходимые вычисления, вывести результат (например, количество игроков, точное время события).

Шаг 4: Результат. Агент возвращает результат пользователю, например, выделяет игроков на изображении или кадры с важными моментами видео.

Задачи для агента

  1. Подсчёт игроков на поле. Агент определяет области изображения, содержащие игроков, и исключает объекты на заднем плане.
  2. Поиск момента забитого гола. Видео разделяется на клипы фиксированной длины. Агент анализирует каждый клип, используя аудиовизуальные маркеры, чтобы определить момент гола. В результате определяются точное время гола и выделенный кадр.
  3. Генерация метаданных. Агент создаёт описания клипов (например, «игрок подаёт угловой») и сохраняет их в структурированной форме для дальнейшего использования.

Кроме этого, можно настроить AI-агента так, чтобы он способен анализировал тактику команд в реальном времени, строил визуализации расстановок и автоматически распознавал все ключевые объекты стадиона.

Эти возможности наверняка уже скоро сделают AI-агент востребованным инструментом для тренеров, аналитиков, спортивных медиа и букмекерских компаний. Футбольная аналитика уже давно «присматривается» к искусственному интеллекту, и AI-агенты играет в этом процессе ключевую роль. Компании, которые вовремя адаптируют новые технологии, хорошо вольются в плеяду отраслей, где данные решают всё (банкинг, сетевой ритейл, телеком и многие другие).

Заключение

AI-агенты перестают быть теорией и превращаются в прикладной инструмент. Их способность интегрироваться с большими языковыми моделями и мультимодальными моделями и взаимодействовать с другими системами делает их полезными в самых разных сферах — от бизнеса до науки.

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

Статьи по теме

graph RAG

Graph RAG: как RAG, только c графом знаний

Графы знаний отлично отражают взаимосвязи и контекст данных, что делает их идеальным дополнением к технологиям Retrieval-Augmented Generation (RAG). В этой статье мы разберём, как технология Graph RAG объединяет сильные стороны графов знаний и RAG, улучшает точность ответов и ускоряет разработку AI-приложений. Рассмотрим, где Graph RAG приносит наибольшую пользу и как внедрить эту технологию для улучшения контекста, который вы передаёте большим языковым моделям (LLM).

AI-агенты на основе LLM и мультиагентные системы

AI-агенты на основе LLM и мультиагентные системы

Текущие LLM генерируют текст или выполняют задачи только по запросу, но с появлением AI-агентов всё меняется. К 2028 году 33% корпоративного ПО будут использовать AI-агентов. AI-агенты не требуют явных запросов и не выдают предопределённые результаты. Вместо этого они принимают инструкции, самостоятельно строят планы, используют инструменты для их выполнения и адаптируются к изменениям. 

embedding vector semantic search

От слов к векторам: как эмбеддинги помогают моделям понимать нас

Эмбеддинги помогают преобразовать текст в векторы, что позволяет большим языковым моделям (LLM) понимать контекст и давать точные ответы. Они служат «языком», на котором модели «общаются» с нами. Разобравшись, как работают эмбеддинги, можно использовать LLM для решения бизнес-задач.

Запросить демонстрацию

Готовы увидеть, как это может работать для вашей организации?

Свяжитесь с нами