Рекурсивные языковые модели (RLM): что это и почему это важно
В конце 2025 года MIT предложил парадигму инференса, которая позволяет LLM обрабатывать контексты на два порядка длиннее окна модели - без сжатия, без потерь и часто дешевле прямого вызова. Разбираемся, как RLMs меняют правила игры для длинных контекстов и что это значит для бизнеса.
Проблема: контекстное окно не резиновое
Что не так с длинными контекстами
Современные LLM формально поддерживают контексты в 128K, 256K и даже 1M токенов. Но на практике работает «контекстное гниение» (context rot) - чем больше токенов модель видит, тем хуже она извлекает из них релевантную информацию. Это не баг, а фундаментальное свойство архитектуры Transformer: механизм внимания размазывается по шуму, и модель теряет точность.
Для бизнеса это критично. Типовой сценарий: нужно проанализировать сотни PDF-документов, логов или записей из CRM, найти связи и дать ответ. Прямой вызов LLM со всеми документами в контексте либо не влезает в окно, либо выдаёт низкое качество. Традиционные агенты (CodeAct, ReAct) помогают, но ограничены: промпт всё равно попадает в контекст, а координация между вызовами ломается на больших объёмах.
Что предложили в MIT
В декабре 2025 года Alex Zhang, Tim Kraska и Omar Khattab из MIT OASYS Lab опубликовали работу «Recursive Language Models» (arXiv:2512.24601, принято на ICML 2025). Ключевая идея - перестать воспринимать промпт как текст, который нужно скормить модели, и начать воспринимать его как переменную во внешней среде.
RLM - это тонкая обёртка над LLM, которая заменяет вызов llm.completion(prompt) на rlm.completion(prompt). С точки зрения пользователя это тот же API. Но внутри промпт помещается в переменную Python-окружения, а модель получает доступ к REPL (как в Jupyter Notebook), где может:
- изучать контекст программно - резать, искать regex'ом, загружать по частям;
- рекурсивно вызывать себя или другие модели для обработки фрагментов (
rlm.completion(sub_prompt)); - агрегировать результаты и формировать финальный ответ.
Модель сама решает, какую стратегию декомпозиции выбрать, без жёстко заданного пайплайна. Это inference-time scaling: вы тратите compute не на прогон миллиона токенов через attention, а на серию прицельных вызовов.
Ключевые отличия RLM от других подходов
Промпт как переменная
Контекст хранится в Python-переменной REPL-окружения, а не в токенах внутри окна модели. Модель работает с ним программно, а не пассивно.
Символьная рекурсия
Модель может вызывать себя (или более лёгкие модели) для подзадач внутри REPL как обычную функцию. Глубина и структура рекурсии определяются адаптивно.
Inference-time scaling
Вычислительные ресурсы тратятся не на attention по всему контексту, а на серию точных вызовов. Это даёт новую ось масштабирования - рекурсивную глубину.
Программный поиск
Модель может использовать grep, regex и собственную логику чанкования для навигации по контексту. Никакого внешнего retrieval-пайплайна не требуется.
Разделение ролей
Корневая модель (глубина 0) координирует, дочерние вызовы (глубина 1+) обрабатывают фрагменты. Дочерние модели могут быть легче корневой - это снижает стоимость.
Обучаемость
Траектория рекурсивных вызовов обучаема через RL - так же, как обучаются reasoning-модели. RLM-Qwen3-8B после дообучения приблизился к ванильному GPT-5 на трёх из четырёх задач.
Что показывают бенчмарки
Четыре бенчмарка - четыре уровня сложности
Авторы протестировали RLM на четырёх задачах с нарастающей сложностью:
- S-NIAH: найти одну иголку в стоге сена. Сложность O(1) - простейший случай. RLM(GPT-5) набирает 98.0%, ванильный GPT-5 - 92.0%. Разрыв появляется на длинах свыше 16K токенов.
- BrowseComp-Plus: multi-hop-вопросы по 1000 документов. Нужно найти и связать несколько документов среди отвлекающих. RLM(GPT-5) - 47.3%, CodeAct+BM25 (GPT-5) - 41.3%, summary agent - 18.0%.
- OOLONG: каждый фрагмент контекста нужно семантически преобразовать, затем агрегировать. Сложность O(n). RLM(GPT-5) - 69.5% F1, ванильный GPT-5 - 41.1%, CodeAct+BM25 - 24.5%.
- OOLONG-Pairs: агрегация по парам фрагментов. Сложность O(n^2). Ванильный GPT-5 - менее 0.1% (практически ноль). RLM(GPT-5) - 58.0% F1. Модель пишет вложенный цикл в REPL и сравнивает каждую пару - то, что невозможно сделать одним forward pass.
Экономика: RLM часто дешевле прямого вызова
Один из контринтуитивных результатов: на 50-м перцентиле RLM(GPT-5) стоит меньше, чем ванильный GPT-5. Модель не загружает весь контекст в окно, а просматривает выборочно. На задаче BrowseComp-Plus с 6-11 млн токенов прямой вызов обошёлся бы в $1.50-$2.75, RLM в среднем - $0.99 при превосходстве по качеству на +29%.
Плата за это - разброс: на 95-м перцентиле некоторые траектории дороже из-за избыточных вызовов. Это фронт для оптимизации: обучение на оптимальных траекториях через RL должно сократить хвост.
Абляции: что именно работает
Авторы разобрали вклад компонентов:
- Только REPL (без рекурсивных подвызовов) - уже сильно лучше ванильной модели и большинства агентов, преодолевает лимит контекстного окна.
- Только рекурсивные подвызовы (без REPL, промпт в контексте) - не закрывает разрыв. Бутылочное горлышко - именно промпт в контексте.
- REPL + рекурсия вместе - комбинация даёт больший эффект, чем сумма частей. На OOLONG-Pairs подвызовы добавляют 10-59% сверх одного REPL.
- Использование более лёгкой модели (GPT-5-mini) для подвызовов и тяжёлой (GPT-5) для корневого - работает и снижает стоимость.
Главный вывод для бизнеса
RLM превращает проблему длинных контекстов из hardware-ограничения в software-задачу. Вместо того чтобы ждать модель с окном в 10M токенов (и покупать под неё GPU), можно взять существующую LLM и обернуть её в RLM. Это особенно важно для on-premise-развёртывания, где железо ограничено, а данные покидать периметр не должны.
Эволюция идеи: от RLM к рекурсивным мультиагентным системам
Ouro / LoopLM: рекурсия на уровне претрейна
В октябре 2025 года ByteDance (Zhu et al., с участием Yoshua Bengio) опубликовали работу «Scaling Latent Reasoning via Looped Language Models». Идея: не применять рекурсию только на инференсе, а встроить её в претрейн. Модель Ouro-2.6B (открытые веса на HuggingFace) обучалась на 7.7 трлн токенов с механизмом итеративных вычислений в латентном пространстве.
Ключевое отличие: модель сама решает, сколько итераций ей нужно, через entropy-regularized objective. Название отсылает к Уроборосу - змее, поедающей свой хвост. Модель зацикливает вычисления через собственные латентные представления вместо наращивания слоёв.
Значение: если RLM доказал, что рекурсия работает как файнтюнинг-стратегия, то Ouro доказал, что модель, обученная быть рекурсивной с нуля, организует вычисления эффективнее, чем feedforward-архитектуры той же параметрической ёмкости.
RecursiveMAS: рекурсия для мультиагентных систем
В апреле 2026 года Stanford + UIUC опубликовали «Recursive Multi-Agent Systems» (Yang, Zou et al.). Вопрос: если рекурсия работает для одной модели, работает ли она для системы агентов?
RecursiveMAS рассматривает всю мультиагентную систему как единое рекурсивное вычисление в латентном пространстве:
- RecursiveLink-модуль передаёт латентные представления между агентами (не текст!), сокращая токены на 34.6-75.6%;
- inner-outer loop learning кооптимизирует всю систему через градиенты по раундам рекурсии;
- 4 паттерна взаимодействия: последовательный конвейер, параллельные агенты и гибриды.
Результаты на 9 бенчмарках: +8.3% точности к лучшим single/multi-agent baseline, ускорение в 1.2-2.4 раза. Но главное - сокращение токенов на три четверти. Это критично для production: мультиагентные системы всегда были дороги из-за текстового обмена между агентами.
Куда всё идёт в 2026 году
Три направления уже видны:
- Претренированные рекурсивные модели становятся стандартом. Ouro показал, что рекурсию можно запечь в претрейн. Следующее поколение foundation-моделей, вероятно, будет включать рекурсивные вычисления как нативную способность.
- Мультиагентная рекурсия для production. RecursiveMAS академический, но 75%-ное сокращение токенов делает идею немедленно применимой в production-пайплайнах.
- Рекурсивное самоулучшение. ICLR 2026 Workshop on AI with Recursive Self-Improvement сигнализирует: агенты, рекурсивно переписывающие свой код и промпты, уже не теория. Claude Code и Codex делают это ad-hoc, следующий шаг - системное градиентное самоулучшение.
Сравнение подходов к работе с длинными контекстами
| Подход | Как работает | Контекст за окном | Качество на сложных задачах | Стоимость |
|---|---|---|---|---|
| Прямой вызов LLM | Весь промпт в контекстном окне | Нет - ограничен окном | Деградирует с ростом контекста | Пропорциональна длине промпта |
| Суммаризация | Агент сжимает контекст перед вызовом LLM | Да, но с потерями | Низкое на задачах с плотной информацией | Контролируемая, но потери качества |
| CodeAct + BM25 | Агент ищет в контексте через retrieval | Да, но retrieval несовершенен | Среднее, retrieval не справляется с multi-hop | Зависит от retrieval-инфраструктуры |
| RLM (REPL + рекурсия) | Модель программно работает с контекстом в REPL, рекурсивно вызывает себя | Да - до 100x окна модели | Лучшее в классе на O(n) и O(n^2) | Часто дешевле прямого вызова на 50-м перцентиле |
Что это значит для on-premise ИИ
Рекурсия в закрытом контуре
RLM меняет экономику частных LLM. Традиционно для on-premise-развёртывания действует жёсткая связка: хотите работать с большими объёмами документов - покупайте GPU под модель с большим контекстным окном. Это дорого и не всегда возможно в условиях санкционных ограничений на поставки.
RLM разрывает эту связку. Модель с окном в 32K токенов, обёрнутая в RLM, может обрабатывать корпус в 3-5 млн токенов - без апгрейда железа. На практике это означает:
- Доступность: для пилота достаточно одного сервера с RTX 6000 Ada и RLM-обёрткой вокруг Qwen3 или DeepSeek.
- Приватность: вся обработка идёт локально, в REPL на вашем железе. Ни один токен не уходит наружу.
- Контроль: модель сама выбирает стратегию декомпозиции, но вы можете ограничить глубину рекурсии, бюджет токенов и модель для подвызовов.
- Стоимость владения: не нужно платить за внешние API по числу токенов. RLM поверх локальной модели даёт предсказуемую стоимость.
Стек RLM сегодня
Пакет rlms (pip install rlms) с открытым кодом на GitHub (alexzhang13/rlm). Поддерживает:
- бэкенды: OpenAI, Anthropic, OpenRouter, vLLM (для локальных моделей);
- окружения REPL: локальное, IPython, Docker, Modal Sandboxes, E2B;
- обучение: RL-трейн через адаптацию prime-rl.
Интеграции уже есть: DSPy.RLM, Ax, контекстные агенты HALO, Google ADK. Экосистема растёт быстро.
Кому это нужно уже сейчас
RLM не заменяет RAG - он решает смежную задачу. RAG хорош, когда у вас есть индексируемый корпус и типовые запросы. RLM нужен, когда задача требует семантического анализа всего корпуса целиком: сравнить тысячи документов, найти зависимости, провести сквозной аудит. Типовые сценарии:
- аудит договоров: найти все пункты с определённым типом риска по тысячам PDF;
- анализ логов безопасности: связать события из разных систем без предварительного индексирования;
- due diligence: обработать всю документацию сделки и ответить на сложные multi-hop-вопросы.
Во всех этих сценариях RLM-подход даёт качество, недоступное ни прямому вызову LLM, ни классическому RAG, ни агентным фреймворкам.
Хотите развернуть RLM в своём контуре?
Мы помогаем с подбором моделей, GPU-инфраструктуры и интеграцией RLM-подхода в ваши бизнес-процессы. Опишите задачу и объёмы данных - предложим архитектуру пилота.