3,583 papers
arXiv:2512.11421 76 12 дек. 2025 г. FREE

Behavioral Guidance Framework: профилирование задачи перед решением

КЛЮЧЕВАЯ СУТЬ
Знакомая боль: модель правильно формулирует ограничение «буква A на 2-й позиции», а в следующем же выводе предлагает слово где A на 3-й. Причина — нет явной проверки между пониманием правила и его применением. Behavioral Guidance Framework позволяет удерживать строгую логику в многошаговых задачах с накапливающимися ограничениями (каждый шаг добавляет новые условия). Фишка: разделение на три процесса — профилировщик определяет тип задачи (последовательная / накопительная, лёгкие / жёсткие ограничения), модуль рассуждений извлекает правила «если-то» из прошлых успехов, модуль генерации проверяет каждый вывод на валидность и отсекает нарушения до генерации ответа.
Адаптировать под запрос

TL;DR

Behavioral Guidance Framework — трёхкомпонентная система, которая анализирует структуру задачи, извлекает правила из прошлых успехов и проверяет выводы на валидность перед выполнением. Вместо слепого генерирования ответа на каждом шаге, система сначала определяет тип задачи (последовательная, накопительная, с жёсткими ограничениями), выбирает стратегию рассуждений под этот тип, а потом применяет её через три модуля: Task Profiler (профилировщик задачи), Reasoning Module (модуль рассуждений) и Generation Module (модуль генерации).

Модели плохо удерживают логику в многошаговых задачах: они переформулируют ограничения правильно, но нарушают их в следующем же выводе. Например, в Wordle модель может сказать "буква A точно на 2-й позиции", а в следующей попытке предложить слово где A на 3-й. Причина — отсутствие явной проверки между рассуждением и генерацией. Модель не различает "я понимаю правило" и "я применяю правило". В задачах с накапливающимися ограничениями (каждый шаг добавляет новые условия) это приводит к хаотичному поведению: модель помнит контекст, но не удерживает строгую валидность.

Решение — разделение на три этапа: анализ структуры задачи → извлечение проверенных правил из прошлых успехов → принудительная валидация вывода. Task Profiler определяет тип задачи (кратко-временная / долго-временная, лёгкие / жёсткие ограничения). Reasoning Module извлекает правила типа "если [наблюдение], то [действие]" из успешных прошлых попыток и сохраняет в RuleBank. Generation Module проверяет каждый вывод: если нарушены ограничения — включает программный fallback (детерминированный перебор валидных вариантов). Три модуля эволюционируют вместе: профилировщик уточняет понимание задачи, рассуждения накапливают правила, генерация адаптирует стратегию вывода.

🔬

Схема метода

ФАЗА 1: Профилирование задачи (после первых 5 эпох)
Task Profiler анализирует:
- Временную структуру (sequential / cumulative)
- Интенсивность ограничений (лёгкие / жёсткие)
- Зависимость успеха от длинного контекста
→ Выбор стратегии рассуждений и генерации

ФАЗА 2: Цикл выполнения (каждый шаг в задаче)
ШАГ 2.1: Reasoning Module
- Получает: текущее observation, RuleBank с правилами
- Находит применимые правила для текущей ситуации
- Предлагает: action + список ограничений
→ Структурированное решение с обоснованием

ШАГ 2.2: Generation Module  
- Проверяет: соответствует ли предложенный action всем ограничениям
- Если валидно → выполняет action
- Если нет → Fallback: программный перебор валидных вариантов
→ Гарантированно валидный вывод

ШАГ 2.3: Environment Feedback
- Выполнение action в среде
- Получение: новое observation + reward
→ Обновление истории траектории

ФАЗА 3: Обучение между эпохами
Reasoning Module анализирует успешные траектории:
- Извлекает паттерны "observation → action" которые дали reward
- Обобщает правила (сначала переобучается на конкретных значениях, потом генерализует)
- Тестирует правила на новых траекториях
→ Обновлённый RuleBank

**Примечание:** Полная система требует множественных запусков (epochs) и хранения RuleBank между сессиями. В чате применимы **принципы**, но не полная архитектура.
🚀

Пример применения

Задача: Выбираешь между двумя предложениями работы — стартап друга vs корпорация. У тебя уже было 3 похожих выбора в карьере. Нужно решение с учётом прошлого опыта и жёстких личных ограничений (не переезжать, зарплата не ниже текущей, удалёнка обязательна).

Промпт:

Я принимаю решение о смене работы. У меня есть накопленный опыт прошлых выборов и жёсткие ограничения.

ПРОШЛЫЙ ОПЫТ (что привело к удовлетворённости):
1. Год назад: выбрал стартап Х вместо корпорации Y → через 3 месяца выгорел от хаоса
2. Два года назад: выбрал удалёнку в корпорации Z → доволен стабильностью, но скучно
3. Три года назад: пошёл в агентство W с офисом → ушёл через 6 месяцев из-за переездов

ТЕКУЩИЙ ВЫБОР:
Вариант А: стартап друга, equity 2%, хаотичная культура, зарплата -20% от текущей, гибрид
Вариант Б: корпорация, стабильная позиция, зарплата +30%, полная удалёнка, чёткие процессы

ЖЁСТКИЕ ОГРАНИЧЕНИЯ (нельзя нарушить):
- Не переезжать из Москвы
- Зарплата не ниже текущей
- 100% удалёнка обязательна

ЗАДАНИЕ:
Шаг 1 (ПРОФИЛИРОВАНИЕ): Определи тип этой задачи — какая структура принятия решения тут нужна? Краткосрочная или долгосрочная? Есть ли накапливающиеся паттерны из прошлого?

Шаг 2 (REASONING): Извлеки правила типа "если [ситуация из прошлого], то [какое решение привело к удовлетворённости]". Найди паттерны в моих прошлых выборах.

Шаг 3 (GENERATION): Проверь каждый вариант на соответствие жёстким ограничениям. Если вариант нарушает хотя бы одно — исключи немедленно. Из оставшихся выбери по правилам из Шага 2.

Покажи логику каждого шага отдельно.

Результат:

Модель выведет три отдельных блока:

Шаг 1: Классификация задачи — "накопительная, с жёсткими ограничениями и долгосрочными паттернами". Обоснование: предыдущие решения формируют правила, ограничения категоричны.

Шаг 2: Извлечённые правила в формате "если-то": - Правило 1: "если стартап без удалёнки → выгорание и уход" - Правило 2: "если корпорация + удалёнка → долгая удовлетворённость" - Правило 3: "если хаос + переезды → уход через 6 месяцев"

Шаг 3: Проверка ограничений → Вариант А нарушает 2/3 ограничений (зарплата ниже, не полная удалёнка) → автоматическое исключение. Вариант Б проходит все проверки + соответствует Правилу 2 → финальный выбор.

Ты увидишь не просто "выбирай Б", а пошаговую верифицируемую логику: почему такая стратегия анализа, какие правила извлечены из опыта, как ограничения отсекли варианты.

🧠

Почему это работает

LLM отлично генерируют связный текст, но плохо удерживают строгую логику между шагами. Модель может написать "учитываю ограничение X" и тут же нарушить его в следующем предложении — потому что генерация идёт токен за токеном без явной валидации. Это как человек, который понимает правила игры, но не проверяет каждый ход на соответствие им.

Сильная сторона LLM — распознавание паттернов и структурирование информации. Если дать модели явную структуру "сначала найди правила, потом проверь на соответствие, потом выведи", она следует этой логике гораздо надёжнее, чем при генерации "в лоб".

Фреймворк использует три разделённых процесса вместо одного слитного: анализ типа задачи → извлечение проверенных правил → принудительная валидация вывода. Профилирование направляет модель на правильную стратегию (краткосрочная vs накопительная). Извлечение правил из прошлого опыта создаёт явную базу знаний ("если-то"), которую модель применяет механически. Валидация перед выводом обеспечивает соответствие ограничениям — модель не может "случайно" нарушить условие, потому что проверка идёт отдельным шагом.

Рычаги управления:

Глубина профилирования — можешь попросить модель анализировать больше измерений задачи (эмоциональная vs рациональная, обратимая vs необратимая) → детальнее стратегия, но дольше обработка.

Формат правил — вместо абстрактных "если-то" попроси конкретные триггеры с метриками ("если ситуация повторилась >2 раз → сильный паттерн") → острее выводы из опыта.

Строгость валидации — можешь добавить "останови меня если я нарушу ЛЮБОЕ ограничение" или смягчить до "отметь нарушения, но продолжай" → контроль между гибкостью и строгостью.

Источник правил — вместо личного опыта можно дать кейсы других людей, индустриальные бенчмарки, исторические данные → модель извлечёт паттерны из любого структурированного опыта.

📌

Extractable принципы для чата

Полная система работает через код и хранение RuleBank между сессиями, но три принципа применимы в обычном чате прямо сейчас:

📌

Принцип 1: Профилирование задачи перед решением

Суть: Вместо сразу решать, попроси модель сначала определить тип задачи и выбрать стратегию.

Шаблон:

Перед решением задачи, проанализируй её структуру:

ЗАДАЧА: {твоя задача}

Определи:
1. Временная структура: решение зависит от одного шага (sequential) или накапливает информацию через шаги (cumulative)?
2. Ограничения: лёгкие/гибкие или жёсткие/категоричные?
3. Зависимость от контекста: нужна ли долгая память или достаточно текущего состояния?

На основе анализа предложи стратегию решения.

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

📌

Принцип 2: Извлечение правил из прошлого опыта

Суть: Если у тебя есть история похожих ситуаций (прошлые проекты, решения, эксперименты), попроси модель извлечь паттерны в формате "если-то" перед решением новой задачи.

Шаблон:

У меня есть история прошлых ситуаций:

{список прошлых кейсов с результатами}

Извлеки правила в формате "ЕСЛИ [условие] → ТО [действие привело к успеху/провалу]".
Найди повторяющиеся паттерны в 2+ кейсах — это сильные правила.

Теперь применяй эти правила к новой ситуации: {новая задача}

Применение: Повторяющиеся бизнес-решения (найм, запуск фич, ценообразование), личные выборы с историей (переезды, смена работы). Модель станет твоей базой знаний, которая обобщает твой опыт.

📌

Принцип 3: Разделение рассуждений и генерации с валидацией

Суть: Вместо одного слитного ответа, разбей на два запроса: сначала модель выводит логику + проверяет ограничения, потом генерирует финальный ответ.

Шаблон (запрос 1 — рассуждение):

ЗАДАЧА: {задача}

ОГРАНИЧЕНИЯ (нельзя нарушить):
{список жёстких условий}

ШАГ 1: Определи все применимые ограничения к каждому варианту.
ШАГ 2: Проверь каждый вариант — соответствует ли ВСЕМ ограничениям?
ШАГ 3: Исключи варианты, нарушающие хотя бы одно ограничение.

Выведи только логику проверки, не финальное решение.

Шаблон (запрос 2 — генерация):

На основе проверки выше, сгенерируй финальное решение:
- Выбери из валидных вариантов по [твой критерий]
- Объясни выбор через призму проверенных правил

Если все варианты нарушают ограничения — скажи об этом явно, не предлагай компромиссов.

Применение: Задачи с категоричными условиями (юридические ограничения, бюджетные лимиты, технические требования). Разделение не даёт модели "забыть" проверку в процессе генерации ответа.

🚀 Быстрый старт для сложных задач:

Если задача многошаговая с ограничениями и прошлым опытом, объедини все три принципа:

Вот структура Behavioral Guidance для твоей задачи.
Адаптируй под мою ситуацию: {опиши задачу, прошлый опыт, ограничения}.

Сначала задай уточняющие вопросы, чтобы понять:
- Тип задачи и стратегию
- Прошлые кейсы для извлечения правил
- Жёсткие ограничения для валидации

Потом пройди по трём шагам:
1. Профилирование: определи структуру задачи
2. Reasoning: извлеки правила "если-то" из прошлого
3. Generation: проверь варианты на ограничения, выбери валидный

Покажи логику каждого шага отдельно.

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

⚠️

Ограничения

⚠️ Требует множественных попыток: Полная система работает через накопление опыта (epochs) и хранение правил между сеансами. В чате нужно вручную поддерживать RuleBank (копировать правила в новые сессии) или переизвлекать их каждый раз.

⚠️ Переобучение на конкретике: Reasoning Module сначала извлекает правила, привязанные к конкретным значениям ("если цена 5000₽") вместо обобщённых паттернов ("если цена ниже среднего на 20%"). В чате нужно явно просить обобщать.

⚠️ Не для простых задач: Профилирование + извлечение правил + валидация — избыточно для задач без истории и жёстких ограничений. Для разового вопроса ("какая столица Франции?") это overhead.

⚠️ Зависит от качества прошлого опыта: Если в истории только провалы или непоследовательные данные, модель извлечёт слабые или вредные правила. Работает лучше всего когда есть 3+ кейса с чётким успехом/провалом.

🔍

Как исследовали

Исследователи взяли GPT-4.1-mini (специально не reasoning-модель, чтобы изолировать эффект фреймворка от встроенных способностей) и протестировали на двух многошаговых играх: Guess My Number и Wordle. В GmN агент угадывает число от 0 до 10000 за 15 попыток, получая зашумлённые подсказки о расстоянии (шум уменьшается с каждым ходом — после 5-го хода почти точное расстояние). В Wordle — классическая игра на 6 попыток с буквенным фeedback'ом и накапливающимися ограничениями (какие буквы где могут/не могут быть).

Прогнали 30 epochs по 20 trajectories каждая (epoch = цикл из 20 полных игр, trajectory = одна игра от начала до конца). Сравнивали три варианта: baseline без фреймворка, baseline с in-context learning (добавили примеры успешных игр в промпт), guided agent с полным фреймворком. Измеряли три метрики: средний reward (чем быстрее угадал — тем выше), reasoning consistency (как часто агент правильно применяет извлечённые правила), constraint compliance (процент ходов без нарушения ограничений).

Главная находка: Baseline-агенты показали нулевой прогресс через 30 epochs, даже с примерами успешных траекторий в контексте — модель видит правильные паттерны, но не обобщает их в применимые правила. Guided agent достиг стабильно высокого reward после 15 epochs, при этом reasoning consistency вырос с ~20% до ~90%, а constraint compliance держался выше 95%. Интересный инсайт: В epochs 8, 11, 13 производительность guided agent падала — это моменты когда Reasoning Module открывал новые правила и тестировал их. Падения = exploration в reasoning. После epoch 15 правила стабилизировались и агент перешёл от ad-hoc рассуждений к обобщённым паттернам.

Что удивило: In-context learning вообще не помог. Исследователи думали хотя бы небольшой эффект будет, но baseline с ICL показал ту же производительность что и без него. Это подтверждает: пассивная экспозиция к успешным примерам ≠ извлечение применимых правил. Модели нужна явная инструкция "анализируй траектории, находи паттерны, формулируй правила, тестируй их" — без этого она не переносит знания между траекториями.

В Wordle эффект ещё драматичнее: включили Generation Module только с epoch 10 (первые 10 epochs работал только Reasoning). Момент включения виден как резкий скачок в constraint compliance с ~40% до ~98% за одну epoch. Task Profiler правильно классифицировал Wordle как "cumulative + constraint-heavy" и активировал code-based generation (детерминированный перебор валидных слов). Baseline-агенты часто переформулировали ограничения правильно ("буква A точно на позиции 2"), но тут же нарушали их в следующем слове — классический разрыв между "понимаю" и "применяю".

Практический инсайт для нас: Явное разделение reasoning (извлечение правил) и generation (валидация вывода) + профилирование задачи перед решением дают измеримый скачок в надёжности даже на маленькой модели. Это не магия больших параметров, это архитектурный принцип. Применительно к чату: если добавить в промпт "сначала определи тип задачи → извлеки правила из прошлого → проверь вывод на соответствие" вместо "просто ответь", модель выдаст структурированную, верифицируемую логику вместо stream-of-consciousness генерации.

🔗

Ресурсы

Towards Trustworthy Multi-Turn LLM Agents via Behavioral Guidance Gonca Gürsun, Bosch Center for Artificial Intelligence, Renningen, Germany

Исследование ссылается на ключевые работы по agentic LLMs: ReAct (Yao et al. 2023), Reflexion (Shinn et al. 2023), Toolformer (Schick et al. 2023), AutoGPT (Richards 2023), BabyAGI (Nakajima 2023), MemGPT (Packer et al. 2024), Voyager (Wang et al. 2023).

Теоретические основы Task Profiler опираются на: принципы гибкого обучения Newell (1990), символический AI (Fikes and Nilsson 1971, Solar-Lezama 2008), reinforcement learning (Sutton, Precup, and Singh 1999, García and Fernández 2015).


📋 Дайджест исследования

Ключевая суть

Знакомая боль: модель правильно формулирует ограничение «буква A на 2-й позиции», а в следующем же выводе предлагает слово где A на 3-й. Причина — нет явной проверки между пониманием правила и его применением. Behavioral Guidance Framework позволяет удерживать строгую логику в многошаговых задачах с накапливающимися ограничениями (каждый шаг добавляет новые условия). Фишка: разделение на три процесса — профилировщик определяет тип задачи (последовательная / накопительная, лёгкие / жёсткие ограничения), модуль рассуждений извлекает правила «если-то» из прошлых успехов, модуль генерации проверяет каждый вывод на валидность и отсекает нарушения до генерации ответа.

Принцип работы

Три этапа вместо слитной генерации. Этап 1: профилировщик задачи анализирует структуру — краткосрочная или накопительная? Лёгкие или жёсткие ограничения? Зависит от долгой памяти? На основе анализа выбирается стратегия. Этап 2: модуль рассуждений находит в истории прошлых попыток паттерны «если [ситуация] → то [действие дало успех]» и сохраняет в базу правил. Этап 3: модуль генерации проверяет предложенный вывод на соответствие ВСЕМ ограничениям — если нарушены, включается запасной вариант (программный перебор валидных решений). Три модуля эволюционируют вместе: профилировщик уточняет понимание задачи, рассуждения накапливают правила, генерация адаптирует стратегию вывода.

Почему работает

LLM отлично распознают паттерны, но плохо удерживают строгую логику токен за токеном. Модель может написать «учитываю ограничение X» и тут же нарушить его в следующем предложении — потому что генерация идёт без явной валидации. Это как человек, который понимает правила игры, но не проверяет каждый ход. Явная структура «найди правила → проверь соответствие → выведи» заставляет модель следовать логике механически, а не полагаться на связность текста. Профилирование направляет на правильную стратегию (краткосрочная vs накопительная). Извлечение правил из прошлого опыта создаёт базу знаний в формате «если-то», которую модель применяет пошагово. Валидация перед выводом обеспечивает соответствие ограничениям — модель не может «случайно» нарушить условие, потому что проверка идёт отдельным шагом.

Когда применять

Многошаговые задачи с историей прошлых попыток и жёсткими ограничениями → конкретно для выбора стратегии развития продукта, планирования карьеры, анализа инвестиций, особенно когда есть 3+ прошлых кейса с чётким успехом/провалом и категоричные условия (бюджет, сроки, юридические рамки). НЕ подходит для простых разовых вопросов — профилирование + извлечение правил + валидация избыточны для задач без истории.

Мини-рецепт

Полная система требует кода и хранения базы правил между сессиями, но три принципа применимы в чате:

1. Профилирование перед решением: Попроси модель сначала определить тип задачи — Перед решением проанализируй структуру: временная (один шаг / накопительная)? Ограничения (лёгкие / жёсткие)? Зависимость от долгой памяти? Предложи стратегию на основе анализа. Модель осознанно выберет подход, а не использует дефолтный.

2. Извлечение правил из опыта: Если есть история похожих ситуаций, дай модели список прошлых кейсов с результатами — Извлеки правила в формате ЕСЛИ [условие] → ТО [действие привело к успеху/провалу]. Найди паттерны в 2+ кейсах — это сильные правила. Применяй к новой задаче: {задача} Модель станет твоей базой знаний.

3. Разделение рассуждений и генерации: Вместо слитного ответа, разбей на два запроса — первый: Определи ограничения к каждому варианту. Проверь соответствие ВСЕМ ограничениям. Исключи нарушающие хотя бы одно. Выведи только логику проверки. Второй: На основе проверки выше, выбери из валидных по [критерий]. Если все нарушают — скажи явно, не предлагай компромиссов. Разделение не даёт модели забыть проверку.

Примеры

[ПЛОХО] : Помоги выбрать между двумя предложениями работы — стартап друга (equity 2%, зарплата -20%, гибрид) vs корпорация (зарплата +30%, полная удалёнка). Что посоветуешь?
[ХОРОШО] : У меня три прошлых выбора работы: 1) стартап X вместо корпорации Y → выгорел от хаоса через 3 месяца, 2) удалёнка в корпорации Z → доволен стабильностью, 3) агентство W с офисом → ушёл из-за переездов. Жёсткие ограничения: не переезжать, зарплата не ниже текущей, 100% удалёнка. ШАГ 1: Определи тип задачи — накопительная с жёсткими ограничениями? ШАГ 2: Извлеки правила «если-то» из прошлых кейсов. ШАГ 3: Проверь каждый вариант на ограничения — исключи нарушающие, выбери по правилам. Покажи логику каждого шага отдельно.
Источник: Towards Trustworthy Multi-Turn LLM Agents via Behavioral Guidance
ArXiv ID: 2512.11421 | Сгенерировано: 2026-01-08 22:27
📖 Простыми словами

Behavioral Guidance Framework: профилирование задачи перед решением

arXiv: 2512.11421

Нынешние AI-агенты — это талантливые болтуны, которые напрочь лишены самоконтроля. Проблема в том, что LLM генерируют текст слово за словом, не имея в голове четкого плана на десять шагов вперед. В итоге модель может в начале диалога пообещать соблюдать твои условия, а через три сообщения благополучно на них забить, потому что контекст размылся. Метод Behavioral Guidance лечит эту амнезию, заставляя нейронку сначала думать над структурой задачи, а уже потом открывать рот.

Это как если бы ты нанял импульсивного, но умного стажера и приставил к нему занудного контролера с чек-листом. Стажер хочет просто выдать ответ, чтобы от него отстали, но контролер бьет его по рукам и заставляет сначала определить тип задачи, выписать правила из прошлого опыта и каждый шаг сверять с жесткими ограничениями. Формально модель всё еще генерирует токены, но теперь она зажата в тиски логической структуры, которая не дает ей уйти в творческий запой.

Вся магия держится на трех модулях, которые работают как конвейер. Task Profiler сразу вешает на задачу ярлык: это последовательный квест или набор жестких условий. Затем Reasoning Module достает из закромов памяти стратегии, которые сработали в прошлый раз, а Generation Module выдает финальный результат, только если он прошел внутреннюю проверку на вшивость. Если ты ищешь работу с зарплатой от ста тысяч и удаленкой, система не предложит тебе «классный офис в центре за пятьдесят», просто потому что это красиво звучит.

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

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

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с