Материал подготовлен автоматически по первоисточникам: ссылки на них — в конце статьи.
Обвязку программного агента научили улучшать на истории запусков без дообучения базовой модели. В препринте ModularRSI, который ещё не прошёл рецензирование и приводит числа, полученные самими авторами, метод обошёл Meta-Harness и AHE на незнакомых задачах TerminalBench 2.0. Для команд, которые строят агентов для кода и командной строки, обвязка становится отдельным объектом разработки, а не фиксированным набором подсказок вокруг LLM.
Как успешные и неудачные запуски указывают на слабое место
Рекурсивное самоулучшение здесь означает, что агент анализирует собственные запуски и меняет код механизмов, которые управляют его работой. Веса базовой модели при этом не меняются: система дорабатывает цикл выполнения, обработку контекста, вызов инструментов и другие части обвязки.
Один неудачный запуск даёт слабый сигнал. Ошибка может находиться в обвязке, рассуждении модели или особенностях конкретной задачи. ModularRSI поэтому сопоставляет успешную и неудачную траектории для одного задания: где агент выбрал другой инструмент, сохранил нужный фрагмент вывода, вышел из повторяющегося цикла или правильно определил завершение работы.
Если все попытки завершились неудачей, система ищет успешный запуск той же задачи в накопленной истории. Если такого запуска нет, она диагностирует явные сбои: повторение действий, неверное применение инструмента, бесполезное восстановление после ошибки или преждевременную остановку. В полностью успешных запусках она ищет лишние шаги и повторные вызовы.
Найденное изменение принимают не по одному примеру. Система объединяет похожие диагнозы и выше ставит исправления, которые подтверждают разные задачи. Так конкретная команда для одного окружения не должна превратиться в общее правило поведения агента.
Обвязка разделена на пять частей:
- цикл агента — управляет чередованием рассуждений, действий и наблюдений;
- работа с инструментами — выбирает, вызывает и проверяет внешние средства;
- обработка наблюдений — сохраняет полезный вывод среды и отбрасывает шум;
- управление контекстом — организует историю, сжатие и извлечение сведений;
- определение завершения — решает, выполнена ли задача или работу нужно продолжить.
Каждую часть изменяют отдельно и только в пределах её функций. Затем варианты объединяют, устраняют дублирование и согласуют взаимодействие. Перед сохранением изменения проходят проверку синтаксиса, импортов и интерфейсов, просмотр на привязку к конкретной задаче и пробный запуск в исполняемой среде.
Разделение модулей дало переносимый результат
Для развития обвязки собрали 2 000 исполняемых задач из внешних источников и отфильтровали пересечения с последующей оценкой. После интеграции функции заморозили: во время итоговых испытаний система уже не могла подстраиваться под задания.
Метод проверяли на TerminalBench 2.0 и SWE-Bench Verified — задачах для командной строки и исправления программных репозиториев. Начальной точкой служила обвязка Terminus-2; оценка охватывала незнакомые задачи внутри исходной области и перенос между областями, а также между базовыми моделями.
В прямом сравнении все методы начинали с одной обвязки, использовали DeepSeek-V4-Flash-0731 и развивались на тех же 120 заданиях. ModularRSI решила 67,42% задач TerminalBench 2.0 против 61,79% у исходной версии. Meta-Harness достигла 62,92%, а AHE — 62,54%; внешний поиск отключили для всех вариантов.
Отдельные модули давали разные эффекты. Изменение цикла агента сильнее всего повысило долю решённых задач, а обработка наблюдений заметнее остальных сократила число шагов. Объединённая версия оказалась лучше любого отдельного модуля, то есть улучшения не свелись к одному удачному исправлению.
Меняет ли ModularRSI планы разработки агентов
Работа предлагает отделить развитие обвязки от выбора базовой модели. Если команда уже хранит траектории, запускает задачи в воспроизводимой среде и автоматически проверяет результат, эти данные можно использовать не только для оценки LLM, но и для изменения управляющего кода.
Практическая архитектура следует из метода: выделить узкие зоны ответственности, собирать несколько запусков одного задания, искать повторяющиеся различия между успехом и сбоем, а изменения принимать только после проверок и повторного исполнения. Отдельный набор для развития обвязки нужен, чтобы итоговая оценка показывала перенос, а не запоминание особенностей бенчмарка.
Такой подход особенно уместен для агентов, где результат можно выполнить и проверить автоматически: сборки, тесты, изменения репозитория и операции в терминале. На бизнес-процессы без надёжного критерия успеха вывод напрямую не переносится — там системе будет сложнее отличить полезное изменение механизма от случайно удачного поведения.
Масштаб подтверждения пока ограничен кодом и терминальными задачами. Основные эксперименты использовали лишь часть подготовленного набора из-за вычислительной стоимости, а вклад контрастного сравнения не отделяли специальным исследованием от эффекта модульной структуры. Поэтому ModularRSI скорее задаёт проверяемую схему развития обвязки, чем доказывает универсальность самоулучшения для любых агентов.
Источники
Похоже на вашу задачу?
Расскажите, что собираете. За полчаса разложим на этапы и назовём сроки — это бесплатно и ни к чему не обязывает.



