TL;DR
ABBEL — техника для многошаговых задач, которая заменяет всю историю переписки компактным текстовым резюме. Вместо того чтобы на каждом шаге держать в контексте все прошлые сообщения и ответы, модель поддерживает belief state — короткое описание того, что уже известно о задаче. На каждом шаге: (1) модель обновляет убеждение новой информацией, (2) выбирает следующее действие только на основе обновлённого убеждения, без доступа к полной истории.
Длинные диалоги быстро упираются в лимиты контекста — после 20-30 шагов полная история может занимать тысячи токенов. Frontier-модели уже умеют генерировать понятные belief states, которые растут гораздо медленнее истории или даже уменьшаются по мере сужения вариантов. Но есть три проблемы: модель галлюцинирует ложные воспоминания о прошлых шагах, пропагирует ошибки из одного убеждения в следующее, повторяет бесполезные действия когда убеждение не меняется без новой информации.
ABBEL разделяет процесс на два явных шага в каждом цикле. Первый промпт обновляет убеждение на основе последнего наблюдения. Второй промпт выбирает действие на основе только свежего убеждения. Исследователи показали, что с RL-тренировкой (включая reward за качество убеждений и penalty за длину) модель превосходит полноконтекстный подход на 20% при почти константной длине убеждений.
Схема метода
Цикл повторяется на каждом шаге:
ШАГ 1: Обновить убеждение
Вход: [инструкции задачи] + [прошлое убеждение] + [прошлое действие] + [новое наблюдение]
→ Генерируем новое убеждение (belief state)
ШАГ 2: Выбрать действие
Вход: [инструкции задачи] + [новое убеждение]
→ Генерируем следующее действие
ШАГ 3: Получить наблюдение от среды
→ Переходим к Шагу 1 с новым наблюдением
Важно: История взаимодействия НЕ передаётся дальше. Только последнее убеждение + последнее действие + последнее наблюдение для обновления.
Пример применения
Задача: Выбираешь нишу для запуска товаров на Wildberries — нужно сузить из 200+ категорий до конкретной ниши через серию аналитических вопросов (20+ шагов). Каждый ответ даёт новые данные: конкуренция, маржинальность, сезонность, барьеры входа.
Промпт для ШАГа 1 (обновление убеждения):
Ты анализируешь рынок Wildberries для выбора ниши.
ПРОШЛОЕ УБЕЖДЕНИЕ:
{текст прошлого belief state, например: "Рассматриваем категории: товары для дома, спорт, красота. Исключили электронику (высокая конкуренция, низкая маржа). Фокус на товарах с маржой >40%."}
ПОСЛЕДНИЙ ВОПРОС:
{например: "Какая сезонность у категории товары для дома?"}
ПОЛУЧЕННЫЙ ОТВЕТ:
{например: "Товары для дома — стабильный спрос круглый год, пик в сентябре-октябре. Спорттовары — пик январь-март и август-сентябрь. Красота — ровный спрос с просадкой летом."}
Обновите убеждение с учётом нового ответа. Сформулируйте коротко:
- Что теперь известно точно
- Что исключили
- Какие варианты остались
- Что ещё неизвестно
Промпт для ШАГа 2 (выбор действия):
Ты анализируешь рынок Wildberries для выбора ниши.
ТЕКУЩЕЕ УБЕЖДЕНИЕ:
{обновлённый belief state из Шага 1}
На основе текущего убеждения сформулируй следующий аналитический вопрос, который максимально сузит выбор ниши. Или, если информации достаточно, выбери конкретную нишу с обоснованием.
Результат:
Через 15-20 итераций модель постепенно сужает выбор от 200+ категорий до конкретной ниши (например, "Органайзеры для кухни из дерева"). В каждом шаге belief state остаётся компактным (100-200 токенов), вместо накопления полной истории в 3000+ токенов. Убеждение эволюционирует: сначала список категорий, потом критерии отбора, потом топ-3 варианта, в финале — обоснованный выбор с ключевыми метриками.
Почему это работает
LLM плохо работает с длинной историей в контексте — после 20+ обменов начинает терять фокус, пропускать детали из ранних шагов, медленнее генерирует. Полная история растёт линейно: каждый шаг добавляет действие + наблюдение.
LLM хорошо работает с структурированными резюме — умеет делать выводы, обобщать информацию, отбрасывать дубликаты. Когда получает инструкцию "обновить убеждение на основе нового факта", модель естественным образом фильтрует релевантное и отбрасывает избыточное.
ABBEL использует сильную сторону: явно разделяет обновление состояния и принятие решения. Первый промпт концентрируется только на синтезе информации, второй — только на выборе действия. Belief state сжимает информацию: вместо "вопрос 1 → ответ 1, вопрос 2 → ответ 2..." хранит "известно: X, исключено: Y, варианты: Z". Это похоже на рекурсивное обновление Байеса, только вместо формул вероятностей используется естественный язык.
Рычаги управления:
- Формат belief state — попроси структуру (списки, таблицу, пункты) для более предсказуемого сжатия
- Явная инструкция "коротко" в Шаге 1 → контроль длины убеждения, убери если хочешь подробное состояние
- Критерии обновления — укажи "обновляй только если новая информация противоречит или дополняет", чтобы избежать бесполезных повторений
- Условие остановки — вместо "пока не найдём ответ" можно задать "максимум 15 шагов" или "когда уверенность >90%"
Шаблон промпта
ДЛЯ ШАГА 1 — Обновление убеждения:
{инструкции_задачи}
ТЕКУЩЕЕ УБЕЖДЕНИЕ:
{прошлое_убеждение}
ПОСЛЕДНЕЕ ДЕЙСТВИЕ:
{прошлое_действие}
НОВОЕ НАБЛЮДЕНИЕ:
{новое_наблюдение}
Обновите убеждение на основе нового наблюдения. Сохраните только релевантную информацию: что теперь известно точно, что исключено, какие варианты остались. Формулируйте коротко.
ОБНОВЛЁННОЕ УБЕЖДЕНИЕ:
ДЛЯ ШАГА 2 — Выбор действия:
{инструкции_задачи}
ТЕКУЩЕЕ УБЕЖДЕНИЕ:
{обновлённое_убеждение}
На основе текущего убеждения выберите следующее действие. {специфичные_инструкции_для_действия}
ДЕЙСТВИЕ:
Что подставлять:
- {инструкции_задачи} — описание задачи, правила, формат действий
- {прошлое_убеждение} — belief state с прошлого шага (в первом шаге можно начать с "Убеждение: пусто" или задать начальное)
- {прошлое_действие} — что сделали на прошлом шаге
- {новое_наблюдение} — что получили от среды/пользователя в ответ
- {специфичные_инструкции_для_действия} — например "задайте вопрос" или "выберите вариант из списка"
🚀 Быстрый старт — вставь в чат:
Вот шаблон ABBEL для многошаговых задач с сжатием контекста. Адаптируй под мою задачу: [твоя задача].
Задавай вопросы для заполнения полей.
[вставить оба шаблона выше]
LLM спросит: какая задача, какой формат действий, какой формат наблюдений, как должно выглядеть начальное убеждение. Это нужно чтобы понять структуру environment и настроить промпты обновления и действия под твой случай.
Ограничения
⚠️ Пропагация ошибок: Если модель ошибается в обновлении убеждения на раннем шаге (неправильно интерпретирует наблюдение или галлюцинирует), ошибка переносится в следующие шаги. Без доступа к полной истории модель может не заметить противоречие. Особенно критично для задач с сложным рассуждением (например, дедукция в Wordle/Mastermind) — слабые модели делают больше ошибок.
⚠️ Ложные воспоминания: Модель иногда галлюцинирует детали прошлых шагов которых не было. Без полной истории для проверки эти галлюцинации остаются в belief state.
⚠️ Повторение бесполезных действий: Если наблюдение неинформативно (типа "не знаю" от пользователя), но belief state не обновился, модель может повторить то же действие. В full-context режиме она видит прошлое действие и избегает повтора.
⚠️ Требует frontier-модели для сложных задач: DeepSeek V3 и R1 показали значительное падение performance в большинстве сред без RL-тренировки. Gemini 2.5 Pro справляется лучше, но и у неё есть провалы (например, Mastermind).
⚠️ Неструктурированные длинные наблюдения: В задачах типа Customer Service или Murder Mystery, где наблюдения — длинные описательные тексты без чёткой структуры, слабые модели хуже выделяют что важно для belief state.
Как исследовали
Команда проверила три frontier-модели (Gemini 2.5 Pro, DeepSeek R1, DeepSeek V3) на шести многошаговых средах разной сложности: от структурированных игр Wordle и Mastermind (угадай код/слово за минимум попыток по косвенным подсказкам) до свободных диалогов Murder Mystery и Customer Service (собери улики/продиагностируй проблему через открытые вопросы). По 40 задач на каждую среду.
Сравнивали три варианта для каждой модели:
1. VANILLA — полная история в контексте
2. BELIEF PROMPTING — генерируем belief state, но история тоже в контексте
3. ABBEL — только belief state, история выброшена
Главная находка:Gemini 2.5 Pro с ABBEL сохраняет или превосходит performance full-context подхода почти везде, при этом belief states значительно короче (в 3-5 раз после нескольких шагов). DeepSeek модели проваливаются сильнее. BELIEF PROMPTING (belief + история) не даёт преимущества над VANILLA и часто вредит — видимо, наличие belief state в контексте путает модель при наличии дублирующей информации в истории.
Неожиданное: Belief states не просто медленнее растут чем история — они уменьшаются в некоторых средах ближе к концу, когда варианты сужаются. Например в Twenty Questions: история растёт от 50 до 1000+ токенов за 20 шагов, belief state растёт до 400 к 10-му шагу, потом падает до 200 к шагу 20, потому что "список возможных тем" сокращается.
Инсайт для практики: Простое промптирование "сначала belief, потом действие" не улучшает результат если история остаётся в контексте — модель как будто не знает на что опираться. Зато изоляция belief state сокращает лишнее рассуждение — модель генерирует более короткие chain-of-thought треки при сопоставимом качестве, потому что не пережёвывает всю историю заново.
Потом взяли Qwen2.5-7B-Instruct и обучили с GRPO reinforcement learning в упрощённой версии Wordle (3 символа, 12 шагов). Добавили два типа reward сигналов помимо outcome: - Belief grading — парсили belief state и сравнивали со ground truth posterior distribution, давали +1 за точное совпадение - Belief length penalty — штрафовали за длинные belief states пропорционально длине
Результат: ABBEL с belief grading превзошёл full-context на ~20% в success rate, при этом belief states остались короткими (~100 токенов vs 500+ в full history). На экстремально длинном QA environment (до 20 шагов, 300-токеновые наблюдения) ABBEL с length penalty обогнал метод MEM1 по performance при вдвое меньшем использовании памяти. В сложной среде ColBench (коллаборативное программирование) belief grading ускорил обучение и достиг 50% экономии памяти при близком к full-context качестве.
Адаптации
Техника: Единый чат вместо двух запросов → упрощение workflow
Оригинальный ABBEL требует два отдельных запроса на каждом шаге (обновление убеждения, потом действие). Можно объединить в один запрос с двумя секциями вывода:
{инструкции_задачи}
ТЕКУЩЕЕ УБЕЖДЕНИЕ: {прошлое_убеждение}
ПОСЛЕДНЕЕ ДЕЙСТВИЕ: {прошлое_действие}
НОВОЕ НАБЛЮДЕНИЕ: {новое_наблюдение}
Сначала обновите убеждение, затем на основе обновлённого убеждения выберите следующее действие.
ОБНОВЛЁННОЕ УБЕЖДЕНИЕ:
[модель генерирует]
СЛЕДУЮЩЕЕ ДЕЙСТВИЕ:
[модель генерирует]
Эффект: Экономия запросов (с 2N до N для задачи в N шагов), но теряем изоляцию — модель видит инструкцию для действия при генерации убеждения, может подгонять belief state под удобное действие. Для простых задач приемлемо, для сложных рассуждений лучше раздельные запросы.
Техника: Явный формат belief state → борьба с галлюцинациями
Из ограничений знаем про "ложные воспоминания". Можно задать жёсткий формат с полями:
Обновите убеждение в формате:
ДОКАЗАНО ТОЧНО: [факты подтверждённые наблюдениями]
ИСКЛЮЧЕНО: [варианты которые точно не подходят]
ВЕРОЯТНЫЕ ВАРИАНТЫ: [список + почему]
НЕИЗВЕСТНО: [что ещё нужно выяснить]
НЕ добавляйте информацию которой не было в наблюдениях.
Эффект: Структура заставляет модель явно разделять "знаю точно" vs "предполагаю" vs "не знаю", снижает риск галлюцинаций. Минус — чуть длиннее belief state из-за заголовков секций.
Экстраполяция: ABBEL + контрольные точки для самокоррекции
Добавь проверочный шаг каждые K итераций:
ПРОВЕРКА (каждые 5 шагов):
ТЕКУЩЕЕ УБЕЖДЕНИЕ: {belief_state}
Проверьте убеждение на внутренние противоречия или явные ошибки. Если найдены — сформулируйте исправленное убеждение.
ПРОВЕРЕННОЕ УБЕЖДЕНИЕ:
Эффект: Борьба с пропагацией ошибок — модель периодически "поднимает голову" и проверяет согласованность belief state. Стоит +1 запрос на каждые K шагов.
Ресурсы
ABBEL: LLM Agents Acting through Belief Bottlenecks Expressed in Language
[Citing related work: Recursive Bayesian estimation (Kalman 1960, Ho & Lee 1964, Åström 1965), Natural language belief updating (Arumugam & Griffiths 2025), MEM1 (Zhou et al. 2025b), ColBench (Zhou et al. 2025a)]
Aly Lidayan, Jakob Bjorner, Satvik Golechha, Kartik Goyal, Alane Suhr
UC Berkeley, Georgia Institute of Technology
