Перейти к основному содержимому

Подходы к построению ИИ-решений

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

  • Workflow (рабочий процесс) — линейная, заранее определенная последовательность действий, как в классических чат-ботах.
  • Агентский подход — логика на базе LLM, которая позволяет адаптироваться к контексту и вызывать внешние инструменты.
  • MAS (Multi-Agent System) — система из нескольких агентов, объединенных в общую структуру для решения сложных задач.

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

Рассмотрим, как эта задача решается разными подходами.

Workflow подход

Решение через workflow:

  1. Пользователь загружает файл → проверка формата (только PDF или DOCX).
  2. Если формат правильный → извлечение текста.
  3. Поиск ключевых слов: «стороны», «сумма», «срок».
  4. Заполнение фиксированного шаблона отчета.
  5. Отправка результата пользователю.

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

Агентский подход

Что такое агент

Агент — это полноценный автономный исполнитель на базе языковой модели (LLM). У агента есть своя цель, логика и набор инструментов. Он не требует жестко заданной цепочки действий, а сам решает, какие шаги предпринять для достижения цели.

Агент может:

  • самостоятельно понимать запрос пользователя;
  • определять, какие действия необходимо выполнить;
  • вызывать внешние инструменты (функции, API, парсеры);
  • уточнять у пользователя детали;
  • адаптироваться к различным ситуациям и контексту;
  • возвращать осмысленный результат.

Пример реализации агента вы можете увидеть в Быстром старте, а подробную настройку — в документации по блоку «Агент».

Компоненты агента

КомпонентНазначение
LLM (модель)«Мозг» агента: интерпретирует запросы и принимает решения.
ПромтОпределяет роль агента, стиль ответов и правила работы.
Инструменты (tools)Функции, которые агент может использовать для взаимодействия с системами, которые делают то, на что LLM не способна самостоятельно: API-запросы, поиск в базах данных, обработка файлов.

Отличия от workflow

Workflow (рабочий процесс) — это заранее определенная последовательность действий и условий, где каждый шаг четко регламентирован. В workflow-системах логика работы описывается через схемы типа «если условие X, то выполнить действие Y», что обеспечивает предсказуемость, но ограничивает гибкость.

ХарактеристикаWorkflowАгент
Определение действийЗаранее заданная последовательность: «если А, то Б».Самостоятельно определяет необходимые действия.
ПредсказуемостьВысокая — при одинаковых условиях результат всегда одинаковый.Адаптивная — результат зависит от контекста.
ОтладкаПростая — четкие правила и логика.Сложнее — требует анализа решений модели.
ГибкостьНизкая — плохо справляется с неопределенностью.Высокая — адаптируется к различным ситуациям.
Понимание запросовЗаранее определенные категории (интенты или друга логика).Контекстуальная интерпретация.
Последовательность действийФиксированная.Динамическая, в зависимости от задачи.

Агентский подход особенно полезен, когда:

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

На практике агент часто встраивается в workflow. Workflow управляет общим процессом, а агент используется на интеллектуальных этапах: анализ, генерация, поиск.

Рекомендации по настройке агента

При создании агента определите три ключевых аспекта:

ПолеНазначениеПринципПример
РольПрофессия или специализация агента.Конкретность, не общие термины.Аналитик договоров.
ЦельКонкретная задача, которую выполняет агент.Измеримость, четкие границы.Извлечь из договора: стороны, сроки, суммы, риски. Вернуть структурированный JSON.
ИнструкцииПравила работы, стиль общения, ограничения.Структурированность, примеры.Процесс работы, формат ответа, ограничения (пример хорошей инструкции смотрите ниже).

Структура эффективных инструкций:

  1. Процесс работы — пошаговый алгоритм действий.
  2. Стиль общения — тон и манера ответов.
  3. Формат ответа — как структурировать результат.
  4. Ограничения — что агент не должен делать.

Пример:

Роль: Аналитик договоров
Цель: Проверь, соответствует ли документ стандартам

Инструкции:
ПРОЦЕСС:
- Изучи документ полностью
- Извлеки ключевую информацию (стороны, сроки, суммы)
- Проверь соответствие стандартам компании

ОТВЕТ:
- Краткое резюме
- Список ключевых условий
- Выявленные риски

ОГРАНИЧЕНИЯ:
- Не давай юридических советов
- При сомнениях рекомендуй специалиста

Создание инструментов для агента

Принципы хороших инструментов:

ПринципОписаниеПример
АтомарностьОдин инструмент = одна цельПоиск документов вместо Поиск документа и рисование картинок в нем
Понятное названиеНазвание отражает действиеИзвлечь данные из PDF
Четкое описаниеАгент понимает, что делает инструментИщет документы по ключевым словам в базе данных

Рекомендации по описанию инструментов:

  • Начинайте с глагола: Извлекает, Анализирует, Отправляет.
  • Указывайте источник данных: из базы, из файла, через API.
  • Поясняйте формат результата: возвращает список документов, создает отчет в PDF.
  • Отмечайте ограничения: работает только с текстовыми файлами.

Пример хорошего описания:

Название: Поиск договоров
Описание: Ищет договоры в корпоративной базе по названию компании,
номеру договора или дате. Возвращает список найденных документов
с основной информацией. Поддерживает только активные договоры.

Частые ошибки:

  • Неясные описания инструментов: обрабатывает данные, работает с файлами.
  • Отсутствие ограничений: не указано, с какими форматами работает инструмент.
  • Противоречивые инструкции: будь кратким + объясняй подробно.

Пример агента

Решение через агента:

Агент анализирует тот же договор, но адаптируется к его содержимому:

  1. Получает документ любого формата (PDF, DOCX, изображение).
  2. Самостоятельно определяет тип договора (поставка, аренда, услуги).
  3. Извлекает релевантную информацию в зависимости от типа.
  4. Проверяет логическую согласованность данных.
  5. Формирует отчет в подходящем формате.

Агент самостоятельно:

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

Мультиагентная система (MAS)

Что такое MAS

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

Вместо одного универсального агента создается несколько специализированных. Например:

  • один анализирует документы;
  • другой извлекает информацию;
  • третий формирует документ по шаблону;
  • четвертый отправляет результат.

Преимущества:

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

Почему не один универсальный агент

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

  • появляются «галлюцинации»;
  • ошибки сложно диагностировать;
  • инструкция становится слишком объемной и противоречивой.

Сравнение: один агент vs. MAS

Один агентMAS
ЛогикаОбщая, в рамках одного промта.Разделена между отдельными агентами.
ПоддержкаУсложняется при росте требований.Легче изменять отдельных агентов.
МасштабируемостьОграничена размером промта.Легко добавить нового агента.
ПереиспользуемостьНизкая.Высокая.
НадежностьЗависит от одной модели.Ошибка локализуется в рамках одного агента.

Как устроена MAS

Координация агентов обычно происходит через workflow или специального агента-оркестратора, который управляет остальными.

Когда использовать MAS

Использовать MAS, если:

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

Не использовать MAS, если:

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

Важно выбирать MAS только когда это действительно нужно. Если задача простая, один агент будет эффективнее и проще в поддержке.

Пример MAS

Решение через MAS:

Для анализа договора создается команда из трех специализированных агентов:

  1. Агент извлечения — обрабатывает файл и извлекает текст.
  2. Агент анализа рисков — ищет проблемные пункты и юридические риски.
  3. Агент анализа финансов — проверяет суммы, валюты и условия оплаты.

Роль оркестратора:

  • Координирует работу агентов (сначала извлечение, затем параллельный анализ).
  • Решает, какие агенты нужны в зависимости от типа договора.
  • Объединяет результаты всех агентов в единый отчет.
  • При обнаружении противоречий запрашивает повторный анализ.

Например, если агент рисков находит проблему с суммой, оркестратор может попросить агента финансов дополнительно проверить именно этот пункт.

Сравнение подходов на примере

Сравним все подходы на примере задачи по обработке документов.

АспектWorkflowАгентMAS
Гибкость к форматуТолько PDF/DOCXЛюбой формат, поддерживаемый платформойЛюбой формат, поддерживаемый платформой
Адаптация к типу договораОдинаково для всехУниверсальный подходСпециализированные агенты под тип
Параллельная обработкаПоследовательнаяНетДа (аналитики работают одновременно)
Обработка неясностей в текстеПропускает или выдает ошибкуПытается интерпретировать самостоятельноПривлекает нужного эксперта
Разрешение противоречийНе предусмотреноОграниченноеОркестратор координирует решение
Сложность внедренияПростаяСредняяВысокая
Качество анализаБазовоеХорошееЭкспертное (каждый агент — специалист)
МасштабируемостьОграниченнаяХорошаяОтличная (легко добавить экспертов)

Вывод: Выбор подхода зависит от требований к качеству, разнообразия задач и ресурсов на разработку.