“Вот развлекаются…” — думал я, читая новости об LLM, управляющей вендинговым автоматом. Как правило, в убыток.  И это те же LLM, которые решают математические задачи олимпиадного уровня.

Потом я запустил два проекта: ▪️формирование учебных заданий для своего сына ▪️ассистента для подразделения из 15-ти человек, в котором я работаю

Каждое решение - это пул “долгоживущих” агентов с ролевым распределением и коммуникациями между собой:  ▪️в первом проекте 7 агентов (“7 гномов”: “методист”, “автор”, “предметник”, “критик”, “дизайнер”, “адвокат ребенка”, “куратор”),  ▪️во втором - 5 (“оператор”, “лид”, “планировщик”, “разработчик”, “исполнитель” для мелких задач).

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

Все проекты на старте показывали отличные результаты. “Ассистент” стал почти собутыльником, а “7 гномов” делали задания, в которых ребенок с интересом разбирался.

Потом что-то пошло не так.

“Гномы” (каждый — модель уровня Opus 5) стали  выдавать перлы типа “Найди информацию о том, когда он родился 10 лет назад”, а ассистент начал терять информацию по статусам задач и обновлениям.

И каждый стал “жрать” очень много токенов на коммуникации между собой по каким-то мелочам — для генерации очередного задания "гномы" провели 21(!) круг согласования между собой (я оставил их на ночь). При этом в коммуникациях появлялся какой-то абстрактный “птичий” язык, наподобие "Топливо - управлять временем".

Сначала я думал, что что-то не так в моих настройках. По каждому проекту была сделана ревизия долговременной памяти, переработаны инструкции и т.д. Эффект слабый.

После этого я открыл Fable, и начал с ним обсуждать.

И он сказал, мол, да, проблема известная, вот статьи. Ключевая проблема - когда агенты не имеют собственной “терминальной цели” (“терминальная” — значит по достижению работа завершается, по-нашему — “проектная”), а работают в режиме некоторого сопровождения процессов “внешнего мира”, основным критерием их “релевантности” становится внутренняя согласованность. Это работает на единичных агентах, и дополнительно усиливается, когда они работают в пуле — помимо внутренней согласованности контекста, они еще начинают согласовывать контекст между собой.

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

И отсюда - тот самый “птичий” язык.

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

"Рожденные в СССР" с ним согласятся.

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