Кажется, что интерфейс конструктора снижает технический барьер. На деле пользователю приходится одновременно разбираться в бизнес-процессе, в архитектуре агента и в том, какие примитивы есть на платформе. Блоков в каталоге сотни, среди них Embeddings, Retrievers, Output Parsers, Vector Stores, и значение каждого придется выяснять.
Это работа для сильного архитектора, который проектирует серьезные системы, а такие конструкторы задумывались для обычных бизнес-пользователей. Накидать блоки, соединить их и нажать «Старт» у них, скорее всего, получится, хотя с первого раза агент вряд ли заработает. Но сопоставить бизнес-архитектуру агента с набором технических примитивов одной кнопкой не выйдет. Можно возразить, что пользователь будет двигаться итерациями, то есть соберет, посмотрит и поправит. Но для этого нужно понимать, что происходит на стыке двух блоков, а ждать такого знания от обычного пользователя нереально.
Я сам считаю себя продвинутым бизнес-пользователем и пробовал собрать агента в таком конструкторе. Расставить блоки оказалось мало, каждый нужно настроить. Заходишь внутрь блока и видишь, что данные соседнему блоку он передает в формате JSON, а тебе показывают схему этого формата. Первый вопрос, который у меня возник: что такое JSON и что за схема у него?
Это напоминает историю SQL. Его придумали в начале 1970-х, чтобы информацию из баз данных могли доставать не только программисты, но и, скажем, бухгалтеры или инженеры. Синтаксис и правда выглядит понятным: SELECT означает «извлеки», FROM показывает источник, в WHERE пишут условия. Казалось, что пользователи смогут сами выгружать любые данные, не дергая аналитиков. Но много ли бизнес-пользователей сегодня сами пишут SQL-запросы? С конструкторами агентов происходит то же самое. Идея хорошая, но порог входа на практике высокий.
Исключения бывают. Я знаю одну компанию, где нашлась группа продвинутых бизнес-пользователей, которая освоила конструктор и теперь как летучий отряд ходит по участкам и собирает агентов для себя и коллег.