RLM (Recursive Language Model)

Определение

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


🧠 Ключевое отличие от агентов

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

ПодходЧто декомпозируетКто задаёт схему
ReAct / AgentsЗадачуЧеловек (инструменты, граф)
RLMКонтекстМодель сама решает

🏗 Архитектура

  1. Корневая модель (depth=0): получает запрос, а контекст доступен через переменную REPL-среды. Это уменьшает объём напрямую передаваемого текста, но не устраняет все ошибки длинного контекста.
  2. Среда (Python REPL): контекст как переменная в памяти, модель взаимодействует через блоки кода.
  3. Рекурсивные вызовы: корневая модель вызывает RLM(q, C_subset) внутри REPL — изолированный под-RLM с собственным запросом, фрагментом контекста и средой.
  4. Завершение: модель выводит FINAL(answer) или FINAL_VAR(var).

Формально: над средой — это LM с инструментом , где — трансформированный контекст, а — изолированная среда.


🔍 Спонтанные стратегии

Модели самостоятельно вырабатывают поведенческие паттерны:

  • Peeking: подсмотреть первые N символов контекста для оценки структуры.
  • Grepping: regex-поиск вместо семантического — модель предпочитает точные совпадения.
  • Partition + Map: разбить контекст на части и запустить рекурсивные LM-вызовы для каждого фрагмента.
  • Summarization: обобщить подмножества контекста для принятия решения корневой моделью.

📊 Результаты исходного эксперимента

  • На OOLONG автор сообщает преимущество конкретной конфигурации RLM над сравниваемыми baselines.
  • На BrowseComp-Plus автор показывает более устойчивое масштабирование на выбранной экспериментальной постановке.

Эти результаты относятся к конкретным моделям, настройкам, датасетам и метрикам исходной работы; их нельзя переносить на любой корпус без собственной оценки.


🛠 Ограничения

  • Рекурсивные вызовы блокирующие, без префиксного кэширования — медленно.
  • Нет гарантий контроля стоимости API или времени выполнения.
  • Эксперименты ограничены глубиной рекурсии 1.
  • Выполнение кода требует изоляции, лимитов ресурсов и контроля доступа к данным.

Связанные концепции

  • Context Window — проблема “context rot”, которую RLM обходит архитектурно.
  • Agent — альтернативный подход к масштабированию инференса.
  • Inference — RLM как следующий шаг после CoT и ReAct в масштабировании времени инференса.

Источник