3,583 papers
arXiv:2610.29792 73 21 окт. 2026 г. FREE

MAPS: борьба с «инерцией поиска» через параллельные направления и забывание старых запросов

КЛЮЧЕВАЯ СУТЬ
Обнаружено: каждый новый поисковый запрос тянется в ту же сторону, что и прошлые. Если первые два запроса ушли вбок, третий уйдёт ещё дальше, а сам агент этого не заметит. Метод MAPS позволяет поисковому агенту (модель ищет в базе знаний и отвечает по найденному) собирать данные из разных источников и не топтаться на одном месте. Фишка: на каждом шаге агент сначала намечает несколько разных направлений, а потом стирает историю прошлых запросов. Остаются только найденные факты и короткая сводка «что мы поняли». У модели нет прошлого курса, которому нужно следовать. Без любого из двух ходов качество заметно падает.
Адаптировать под запрос
⚡

TL;DR

MAPS — схема работы поискового агента (RAG: модель ищет в базе знаний и отвечает по найденному). На каждом шаге агент сначала намечает несколько разных направлений поиска, потом пишет по запросу на каждое. После шага он стирает историю прошлых запросов и рассуждений. В памяти остаются только найденные факты и короткая сводка «что мы поняли».

Главная находка: каждый следующий поисковый запрос тянется в ту же сторону, что и предыдущие. Агент не замечает, что ушёл от исходного вопроса, и сам себя не поправляет. Авторы измерили это на запросах агента: чем глубже поиск, тем сильнее новый запрос повторяет накопленный курс. Если первые два запроса ушли вбок, третий уйдёт ещё дальше. Итог: цепочка похожих запросов, повторы и неполные ответы.

Метод ломает инерцию двумя ходами. Первый — параллельные направления: сначала список разных углов поиска, потом запросы по ним. Второй — забывание: в следующий раунд идут факты и сводка, а не прежние запросы. Без любого из ходов качество заметно падает.

🔬

Схема метода

СОСТОЯНИЕ (всё, что агент помнит между раундами):
  • исходный вопрос q0
  • найденные факты O (накопленные)
  • сжатая сводка рассуждений r̃  (БЕЗ списка прошлых запросов)

КАЖДЫЙ РАУНД (до 10 раз или пока фактов не хватит):
ШАГ 1: Предложить N разных направлений поиска → список направлений
ШАГ 2: По каждому направлению написать свой запрос → N запросов
ШАГ 3: Выполнить все запросы независимо (топ-5 документов каждый)
ШАГ 4: Свести найденное → обновить факты O и сводку r̃
        История прошлых запросов и рассуждений ВЫБРАСЫВАЕТСЯ

ФИНАЛ: ответ по q0 + факты O + сводка r̃

В исследовании это три роли одной модели: предлагающая направления, пишущая запросы и сводящая результаты.

🚀

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

Задача: Предприниматель решает, открывать ли пункт выдачи Wildberries в Казани. Нужно собрать условия партнёрства, экономику точки, конкуренцию в районе и налоговый режим. Данные лежат в разных местах и зависят друг от друга. Обычный агент нащупает «условия WB» и три раза подряд поищет то же самое другими словами.

Промпт:

Ты — исследовательский агент с доступом к веб-поиску.

Исходный вопрос: «Стоит ли открывать пункт выдачи Wildberries в Казани
в 2025 году при бюджете 1,5 млн рублей?»

Работай раундами (максимум 6). Между раундами помни ТОЛЬКО:
<Факты> — найденные факты с источниками
<Сводка> — 3–5 строк: что уже ясно и чего не хватает

НЕ пересказывай и не опирайся на свои прошлые запросы.
В каждом раунде:
1. <Направления> — предложи 3 РАЗНЫХ направления поиска, которые
   закрывают то, чего не хватает по <Сводке>.
2. <Запросы> — по каждому направлению напиши один запрос.
3. Выполни все запросы.
4. <Свод> — объедини найденное, обнови <Факты> и <Сводка>.
Остановись, когда <Факты> достаточно для ответа.

Финал: рекомендация «открывать / не открывать» с расчётом
и списком непроверенных допущений.

Результат: Модель выдаст несколько раундов. В каждом будет список из трёх разных направлений (например, экономика точки, конкуренция, налоги), запросы по ним, а затем обновлённые «Факты» и «Сводка». В финале придёт рекомендация с опорой на собранные факты и список того, что не удалось подтвердить.

🧠

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

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

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

Как метод это использует: забывание убирает источник инерции. Параллельные направления страхуют от неверной ставки. Если одно направление пустое, остальные закрывают дыру. Параллельные запросы сами по себе не спасают: конкурент ParallelSearch тоже пишет несколько запросов, но проигрывает. Помогает именно сочетание «разные направления + чистый контекст».

Рычаги управления: - Число направлений N → больше для широких вопросов, меньше (2) для простых, экономия токенов и времени. - Лимит раундов → в исследовании 10. Для рабочих задач 4–6 обычно хватает. - Что хранится в «Сводке» → если не ограничить, она превратится в скрытую историю запросов. Держи её короткой и без формулировок прошлых запросов. - Условие остановки → «фактов достаточно для ответа». Можно заменить на «закрыты все пункты чек-листа».

📋

Шаблон промпта

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


Ты — исследовательский агент с доступом к поиску.
Твоя задача — ответить на исходный вопрос, опираясь на найденные факты.


{исходный_вопрос}


Между раундами хранится ТОЛЬКО:
   — найденные факты с источниками (накапливаются)
   — краткая сводка: что ясно, чего не хватает ({строк} строк)
ЗАПРЕЩЕНО хранить, пересказывать или опираться на формулировки
прошлых запросов и прошлых рассуждений.



  
    По  и  предложи {N} РАЗНЫХ
    дополняющих направлений поиска. Направления не должны пересекаться.
    Выведи список направлений.
  
  
    Для каждого направления напиши один поисковый запрос,
    исходя из исходного вопроса и направления.
  
  
    Выполни все запросы независимо друг от друга.
  
  
    Сведи результаты по всем направлениям:
    — добавь новые факты в ;
    — перепиши ;
    — выброси историю запросов.
  
  
    Остановись, если  достаточно для ответа
    или достигнут максимум раундов.
  



Ответь на {исходный_вопрос} по  и .
Отметь, что не удалось подтвердить.

Что подставлять: {исходный_вопрос} — вопрос, где данные разбросаны по разным источникам. {N} — 3 для старта. {число_раундов} — 4–6. {строк} — 3–5.

🚀 Быстрый старт — вставь в чат:

Вот шаблон MAPS (поиск с параллельными направлениями и забыванием
истории запросов). Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

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

⚠️

Ограничения

⚠️ Нужен контроль над контекстом: метод работает за счёт того, что история запросов исчезает из контекста. В обычном чате вся переписка остаётся перед глазами модели, поэтому запрет «не опирайся на прошлые запросы» только ослабляет эффект и не гарантирует его. Нужен агент, который сам решает, что передавать в следующий раунд, либо ручной перенос «Фактов» и «Сводки» в новый чат.

⚠️ Оригинал — код, а не промпт: авторы реализовали метод как программный конвейер: свой поисковый индекс, векторный поиск, три вызова модели на раунд. Перенос в инструкцию агенту — наша трактовка, в статье её нет.

⚠️ Проверено на узком классе задач: вопросы с ответом в Википедии и научные вопросы, оценка по совпадению с эталонным ответом. Деловые исследования с неоднозначными источниками и мнениями не проверялись.

⚠️ Только две модели одного семейства (Qwen): на ChatGPT, Claude и Gemini результат не проверялся.

⚠️ Цена: несколько запросов за раунд — это больше токенов и времени. Для простых фактологических вопросов (одна нужная страница) метод избыточен. Разница на однопереходных датасетах заметно меньше.

⚠️ Измерение инерции требует эмбеддингов: сам анализ «поискового импульса» читатель повторить не сможет. Практичен только вывод.

🔍

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

Сначала авторы разобрались, почему поисковые агенты буксуют. Они взяли траектории Search-o1 (агент, который по ходу рассуждения пишет запросы в поиск) и посмотрели, как смещаются запросы шаг за шагом. По смыслу запросов (в виде векторов) они посчитали накопленное смещение, то есть «импульс» поиска. Затем проверили, совпадает ли направление этого импульса с тем, куда уйдёт следующий запрос. Совпадение росло с каждым шагом: на трёх датасетах многошаговых вопросов оно выросло примерно с 0,3–0,4 на первом шаге до 0,7–0,8 на четвёртом. Это и есть инерция: агент не выходит из колеи, а углубляется в неё.

Затем исследователи собрали MAPS и сравнили с шестью конкурентами: обычной моделью без поиска, обычным RAG, Self-RAG, IRCoT, Search-o1, S3 и ParallelSearch. Тестировали на шести наборах вопросов: два простых, три многошаговых и один научный (GPQA). Моделей две: Qwen3-32B и Qwen3.6-35B-A3B. Поиск шёл по Википедии, лимит 10 раундов, метрика — вхождение эталонного ответа в ответ модели.

Результат: в среднем 56,0 против 49,2 у ParallelSearch и 43,9 у Search-o1 на первой модели; 63,1 против 57,3 и 54,3 на второй. Больше всего MAPS выигрывает на многошаговых вопросах.

Ещё полезнее абляции, то есть эксперименты «отключи компонент и посмотри». Без параллельных направлений среднее падало с 56,1 до 49,8. Без забывания истории — до 50,1. Без шага «сначала направления, потом запросы» — до 51,9. Особенно сильно просела научная часть: на Qwen3-32B с 62 до 45–46. Вывод для практики: важны оба хода сразу. Удивляет, что ParallelSearch, уже умевший писать несколько запросов, всё равно проигрывает. Широта сама по себе не лечит инерцию, нужно ещё чистить контекст.

💡

Адаптации и экстраполяции

🔧 Техника: перенос состояния в новый чат → ручное «забывание»

Раз в 2–3 раунда попроси: «Выведи только блоки <Факты> и <Сводка>». Скопируй их в новый чат и продолжи с них. Старые запросы и рассуждения остаются в прошлом чате. Так в обычном чате получается тот самый «сброс истории», который в статье делает программа.

🔧 Техника: условие остановки по чек-листу → контроль полноты

Вместо «фактов достаточно» задай список обязательных пунктов (экономика, конкуренция, налоги, риски). Раунд заканчивается, когда по каждому пункту есть факт с источником. Это защищает от раннего «хватит».

Экстраполяция: направления + проверка гипотез. Это моя комбинация, в статье её нет. В шаге направлений требуй, чтобы одно из N направлений было опровергающим («найти данные, которые противоречат текущей версии»):

Предложи 3 направления поиска. Одно из них обязано искать
свидетельства ПРОТИВ текущей версии в <Сводка>.

Идея: если инерция тянет агента подтверждать то, что он уже нашёл, обязательное «против» ломает колею ещё сильнее. Пока это догадка, проверь на своей задаче.

🔗

Ресурсы

  • Работа: MAPS: Macro-Adaptive Parallel Reasoning for Regulating Search Momentum in Retrieval-Augmented Generation (arXiv, препринт)
  • Код: https://github.com/NEUIR/MAPS
  • Авторы: Xinze Li, Dingwen Zhang, Zhenghao Liu, Yukun Yan, Shuo Wang, Yu Gu, Ge Yu, Maosong Sun
  • Университеты: Northeastern University (Шэньян, Китай); Tsinghua University (Пекин, Китай)
  • Связанные работы: Search-o1 (Li et al., 2025), ParallelSearch (Zhao et al., 2025), IRCoT (Trivedi et al., 2023)

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

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

Обнаружено: каждый новый поисковый запрос тянется в ту же сторону, что и прошлые. Если первые два запроса ушли вбок, третий уйдёт ещё дальше, а сам агент этого не заметит. Метод MAPS позволяет поисковому агенту (модель ищет в базе знаний и отвечает по найденному) собирать данные из разных источников и не топтаться на одном месте. Фишка: на каждом шаге агент сначала намечает несколько разных направлений, а потом стирает историю прошлых запросов. Остаются только найденные факты и короткая сводка «что мы поняли». У модели нет прошлого курса, которому нужно следовать. Без любого из двух ходов качество заметно падает.

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

Раунд устроен как конвейер из четырёх остановок. Первая: список из N разных направлений поиска. Вторая: по запросу на каждое направление. Третья: все запросы идут независимо, берём топ-5 документов. Четвёртая: сводим найденное в факты и обновляем сводку. Потом история запросов и рассуждений выбрасывается. В следующий раунд едут только факты, сводка и исходный вопрос. Это как следователь, который каждое утро начинает с доски улик, а не со вчерашних догадок. Старые версии не мешают смотреть на дело свежим взглядом.

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

Модель продолжает то, что уже лежит в контексте. Прошлые запросы перед глазами, и новый запрос подстраивается под них. Просьба «проверь, не ушёл ли ты в сторону» по данным авторов инерцию не гасит. Лечится не самопроверкой, а удалением самого источника инерции из контекста. Модель хорошо сводит найденное в факты. Она хорошо придумывает разные углы, если прямо попросить. Когда цепочки запросов нет, она смотрит на исходный вопрос и на то, чего не хватает. Параллельные направления страхуют от неверной ставки. Одно направление пустое — остальные закрывают дыру. Прикол: просто параллельные запросы не спасают. Конкурент ParallelSearch тоже пишет несколько запросов за раз, но проигрывает. Работает именно связка «разные направления + чистый контекст».

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

Исследовательский поиск → вопросы, где данные лежат в разных местах и зависят друг от друга. Например, решение об открытии бизнеса: условия партнёрства, экономика, конкуренты, налоги. Особенно когда обычный агент три раза подряд ищет одно и то же другими словами. НЕ подходит для простых вопросов, где ответ на одной странице: токены и время уйдут впустую. Нужен контроль над контекстом. В обычном чате вся переписка остаётся перед глазами модели, поэтому запрет «не опирайся на прошлые запросы» только ослабляет эффект. Либо агент сам решает, что передавать дальше, либо переноси факты и сводку в новый чат руками. Метод проверили только на вопросах с ответом в Википедии и на научных вопросах. Деловые задачи с мнениями и спорными источниками не тестировали. Проверяли только две модели семейства Qwen.

Мини-рецепт

1. Задай вопрос один раз: исходный вопрос остаётся неизменным в каждом раунде.
2. Заведи две коробки: <Факты> с источниками (копятся) и <Сводка> на 3–5 строк (переписывается каждый раунд).
3. Запрети хранить прошлое: «не пересказывай и не опирайся на свои прошлые запросы».
4. Требуй разные углы: для старта 3 направления, которые не пересекаются и закрывают то, чего не хватает по сводке. Для простых вопросов хватит 2, для широких бери больше.
5. Один запрос на направление: все запросы выполняются независимо.
6. Сведи и забудь: обнови факты, перепиши сводку, выброси запросы.
7. Ограничь сводку: без формулировок прошлых запросов, иначе она станет скрытой историей.
8. Задай остановку: максимум 4–6 раундов или «фактов достаточно для ответа». Можно заменить на «закрыты все пункты чек-листа».

Примеры

[ПЛОХО] : Найди всё про то, стоит ли открывать пункт выдачи Wildberries в Казани, и сделай вывод
[ХОРОШО] : Ты — исследовательский агент с доступом к веб-поиску. Исходный вопрос: «Стоит ли открывать пункт выдачи Wildberries в Казани в 2025 году при бюджете 1,5 млн рублей?» Работай раундами, максимум 6. Между раундами помни ТОЛЬКО <Факты> (с источниками) и <Сводка> (3–5 строк: что ясно, чего не хватает). НЕ пересказывай и не опирайся на свои прошлые запросы. В каждом раунде: 1) предложи 3 РАЗНЫХ направления поиска под то, чего не хватает по <Сводке>; 2) напиши по одному запросу на направление; 3) выполни все запросы; 4) обнови <Факты> и <Сводка>. Остановись, когда фактов хватает для ответа. Финал: рекомендация «открывать / не открывать» с расчётом и списком непроверенных допущений. В первом раунде агент возьмёт, например, экономику точки, конкурентов в районе и налоговый режим. Во втором он уже не будет искать «условия WB» пятью способами. Он посмотрит на сводку и закроет то, чего не хватает.
Источник: MAPS: Macro-Adaptive Parallel Reasoning for Regulating Search Momentum in Retrieval-Augmented Generation
ArXiv ID: 2610.29792 | Сгенерировано: 2026-10-22 17:00

Проблемы LLM

ПроблемаСутьКак обойти
В многошаговой работе каждый новый шаг тянется туда же, куда шли прошлыеАгент работает по кругу: ищет, думает, снова ищет. Прошлые запросы и рассуждения лежат в контексте. Модель продолжает их курс. Если первые шаги ушли вбок, следующий уйдёт ещё дальше. Ошибка копится. Получаются повторы, похожие запросы и неполный ответ. Просьба "проверь, не ушёл ли ты в сторону" почти не помогаетУбери причину, а не проси самопроверку. Не оставляй в контексте историю прошлых запросов. Передавай дальше только факты и короткую сводку. Подробности в методе ниже

Методы

МетодСуть
Раунды с разными направлениями и чистой памятью — полнее покрытие, меньше повторовРаботай раундами. Между раундами храни только две вещи: <Факты> (найденное, с источниками) и <Сводка> (3–5 строк: что ясно, чего не хватает). Прошлые запросы и рассуждения выбрасывай. В каждом раунде: 1) предложи 3 РАЗНЫХ направления, которые закрывают недостающее; 2) напиши по одному запросу на каждое направление; 3) выполни все запросы; 4) обнови <Факты> и <Сводка>. Остановись, когда фактов хватает для ответа. Почему работает: без цепочки прошлых запросов у модели нет курса, которому надо следовать. Она смотрит на исходный вопрос и на пробелы. Несколько направлений страхуют от неверной ставки: если одно пустое, другие закрывают дыру. Нужны оба хода сразу. Несколько запросов в одной цепочке без чистки контекста помогают слабо. Следи за сводкой: если дать ей разрастись, она станет скрытой историей запросов. Пиши в запросе: "без формулировок прошлых запросов". Когда применять: вопрос широкий, данные лежат в разных местах и зависят друг от друга. Например, оценка бизнес-идеи, обзор темы, сбор условий из разных источников. Когда не нужен: ответ лежит на одной странице. Метод дороже по токенам и времени. Важно: в обычном чате вся переписка остаётся перед глазами модели. Запрет "не опирайся на прошлые запросы" лишь ослабляет инерцию. Надёжнее перенести <Факты> и <Сводка> вручную в новый чат. Или использовать агента, который сам решает, что передавать дальше
📖 Простыми словами

MAPS: Macro-Adaptive Parallel Reasoning for Regulating Search Momentum in Retrieval-Augmented Generation

arXiv: 2610.29792

Обычные поисковые AI-агенты страдают дурацкой болезнью — инерцией контекста. Модель видит свои прошлые запросы и тупо бурит в одну точку, бесконечно перефразируя одну мысль. Любая попытка заставить её «остановиться и перепроверить себя» проваливается: старый мусор остаётся перед глазами, и нейронка упрямо тянет за собой накопленную ошибку.

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

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

Авторы гоняли схему на бизнес-задачах, где нужно собрать кучу разрозненных условий, но принцип универсален. Это база для любых сложных AI-исследований: аудита кода, юридического анализа, медицинской диагностики. Везде, где ответ требует собрать пазл из разных источников, обычный RAG утонет в самоповторах, а параллельный сброс памяти выдаст результат.

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

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

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

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