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

Вместе с тем большое количество провальных пилотных проектов внедрения ИИ-агентов породило ряд вопросов:

  • Может ли ИИ-агент правильно интерпретировать заказы?
  • Может ли он понимать специфику процесса конкретной организации?
  • Можно ли ИИ доверить обработку заказов в корпоративной CRM?

Типичный пример: создали ИИ-агента, но на этапе тестирования стабилизировать его работу не получается. Например, при одном и том же вопросе сумму заказа агент берет то из одного столбца таблицы, то из другого.

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

Проблема интерпретации данных

Базовое назначение большой языковой модели (Large Language Model, LLM) — выдавать последовательность букв и слов исходя из контекста, причем контекст непрерывно меняется в ходе взаимодействия с ИИ-агентом. «Плавающий контекст LLM» — важная особенность, которую необходимо учитывать при создании ИИ-агентов, призванных предсказуемо и стабильно интерпретировать данные бизнес-процесса.

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

  • непонятные названия столбцов («исторические названия» SUMMA_NEW, SUMMA2 и т. п.);
  • непонятное кодирование аналитических признаков («что это за подразделение № 104»);
  • качество данных оставляет желать лучшего (часть заказов приходит от партнера, у которого свой справочник товаров, а графа «Подразделение» вообще не заполнено).

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

В контексте задачи предоставления ИИ-агенту описания данных не важно, на каком уровне зрелости находится каталог данных, — необходимо, чтобы он существовал и был корректно заполнен по данным, с которыми взаимодействует ИИ-агент.

Сценарий взаимодействия ИИ-агента с каталогом данных

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

Семантический слой и каталог данных в архитектуре ИИ-агентов

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

Пример. Если начальник отдела продаж говорит сотруднику: «Посмотри, что зависло в Тимофеевке», то опытный сотрудник зайдет в систему CRM, отследит заказы филиала «Тимофеевский» со статусом «Требует уточнения» и по каждому из них отправит заявку на производство с указанием недостающих параметров. Если сотрудник неопытный, то он попросит уточнить задачу. Если сотрудник совсем «зеленый», то начальнику проще самому зайти в систему и обработать проблемные заказы. Естественно, желательно, чтобы ИИ-агент был опытным членом команды, сразу правильно понимал, что от него требуется и в каком виде ожидается результат. Для этих целей следует подготовить семантический слой — описание предметной области.

Роль семантического слоя

В классическом понимании семантический слой может включать в себя ряд согласованных между собой частей (таблица 2).

Семантический слой и каталог данных в архитектуре ИИ-агентов

В таблице 3 приведен пример последовательности работы ИИ-агента с семантическим слоем.

Семантический слой и каталог данных в архитектуре ИИ-агентов

Работа с каталогом данных включена в середину последовательности работы с семантическим слоем (таблица 3). Каталог данных и семантический слой дают результат при совместном использовании. Рассмотрим их совместную работу в сквозном процессе подготовки ответа.

На рисунке приведена последовательность подготовки ответа на вопрос пользователя.

Семантический слой и каталог данных в архитектуре ИИ-агентов

Особенности процесса (см. рисунок):

  • подготовку ответа выполняет ИИ-агент. Пользователь задает один вопрос и получает один ответ на шестом шаге. Но ИИ-агент выполняет несколько ключевых шагов, которые не видны пользователю. Если ИИ-агент будет задерживаться с ответом, то для повышения комфорта пользователя можно предусмотреть индикацию хода выполнения. Например, «ищу данные по прибыли…», «оформляю результат…»;
  • на каждом шаге ИИ-агент выполняет рассуждение, для чего многократно обращается к большой языковой модели;
  • семантический слой востребован в начале и в конце подготовки ответа. Сначала ИИ-агент обращается к семантическому слою для корректного и быстрого понимания сути задания, а в конце для понимания того, как «упаковать», «преподнести» ответ лучшим образом;
  • весь процесс поиска ответа можно сделать итеративным, если ИИ-агенту не удастся найти ответ с первой попытки.

Настройка ИИ-агента

Для повышения качества ответов ИИ-агентов следует следовать ряду рекомендаций по подготовке каталога данных и семантического слоя.

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

В процессе наполнения и каталог данных, и семантический слой становятся очень емкими, накапливая в себе множество бизнес-ракурсов. При этом конкретный вопрос к ИИ-агенту относится, как правило, к одной предметной области. Например, вопрос «Какие клиенты самые прибыльные в третьем квартале?» относится к предметной области «Экономика». Для ответа на него ИИ-агенту необходимо и достаточно использовать лишь часть каталога данных и семантического слоя, которые относятся к этой предметной области. Передача в контекст ИИ-агента всего каталога данных и всего семантического слоя организации ухудшает качество ответов. В этом случае контекст «забивается», возникает путаница, что провоцирует галлюцинации. В корпоративных решениях это плохо — пользователям не нужен «креатив от ИИ», а требуется стабильно получать верные ответы на свои вопросы.

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

***

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

Виталий Когтев (vkogtev@mail.ru) — руководитель команды Data Science, «Нейросетевые технологии» (Москва).