Ядро правил поведения
Неизменяемые правила, которые агент проверяет на каждом шаге. Работают независимо от длины диалога и содержания запроса.
Агент, который не теряет себя
к третьему сообщению.
Вы настроили агента. Первые 20 сообщений — работает точно. Потом что-то меняется: тон стал другим, инструкции «забылись», ограничения нарушены.
Это не баг реализации. Это поведение модели по умолчанию: чем длиннее диалог, тем больше контекст вытесняет исходные инструкции.
Большинство команд патчат это одинаково: больше инструкций, строже промпт, перезапуск сессии. Ничего из этого не решает проблему архитектурно.
Три года назад я начал строить агентов для реальных задач: клиентский сервис, продажи, диспетчеризация. Каждый раз натыкался на одну и ту же стену — агент устойчив в начале и разрушается в длинном диалоге.
Я исследовал эту задачу отдельно: что именно держит агента в роли через 30, 50, 100 сообщений.
Пять точных правил держат поведение агента устойчивее, чем 200 строк системного промпта. Три компонента:
Неизменяемые правила, которые агент проверяет на каждом шаге. Работают независимо от длины диалога и содержания запроса.
Оперативная (текущий диалог) + эпизодическая (история клиента) + семантическая (база знаний). Каждый слой загружается только когда нужен — не весь контекст сразу.
Агент проверяет собственные ответы на соответствие роли до их отправки. Не после.
Принимает звонки, квалифицирует заявки, назначает запись. До архитектуры: выходил из роли после ~80 сообщений, путал протокол, давал противоречивые цены.
После: стабилен на любой длине сессии. Протокол соблюдает точно. Персонал перестал проверять каждый второй диалог.
Вёл переговоры, отвечал на вопросы о продукте, передавал в CRM. Проблема: к третьей сессии с одним клиентом агент «забывал» предыдущие договорённости и начинал противоречить себе.
После архитектуры памяти + поведенческого ядра: 0 случаев потери контекста из 50 диалогов. Клиент получает последовательного агента, который помнит историю.
Использую в собственных продуктах и у клиентов. Открытая часть — методология и результаты тестов. Подробности — в research/behavior.
Разберём задачу, оценим что подходит и что нет. Первый разговор бесплатный.