Маршрутизаторы моделей сейчас на каждом шагу, но у них есть фундаментальное ограничение. Неважно, работают ли они на продвинутой эвристике или на небольшой модели, которая читает каждый шаг и выбирает нужную LLM — маршрутизатор всегда будет слабее той модели, которую он подбирает. Replit Agent поступает иначе: он позволяет самой модели принимать решения.
Главный агент (или основной цикл) сам выбирает уровень и режим усилий для своих субагентов, а по ходу задачи корректирует и свои собственные параметры. Получив такую свободу, GPT-6 Astra отдает рутинную реализацию менее дорогим субагентам и сама решает, на что стоит тратить токены. И на DeepSWE, и на Terminal-Bench Replit Agent оказывается Парето-эффективнее «голой» Astra: ни один опубликованный базовый вариант Astra не обходится дешевле при более высоком результате. Он также обходит архитектуру sidekick (ту же схему, но с одним долгоживущим воркером) на 11 и 16 баллов.

Полную версию статьи с анимациями и примечаниями читайте здесь: https://replit.com/blog/free-the-models
Почему мы делаем меньше «костылей»
Каждый релиз модели ломает допущения, зашитые в харнес.
По мере того как модели лучше справляются с задачами, рассчитанными на множество шагов, им требуется всё меньше вспомогательной инфраструктуры на уровне харнеса. На практике мы заметили, что они сами тянутся к делегированию: используют субагентов для управления контекстом и параллелизма. Недавние прорывы, включая решение уравнений Навье — Стокса, отчасти стали возможны благодаря координации роев агентов под управлением frontier-моделей [[1]](https://openai.com/index/navier-stokes-solution/).
Но граница возможностей неровная. Самая сильная модель для написания кода не обязательно лучше всех проектирует интерфейсы или делает Slides, равно как и не всегда идеально пишет письма.
Поэтому мы строим харнес так, чтобы каждая модель работала по-своему — с теми ограничениями, которые ей всё ещё нужны, и с главной целью: максимальное качество при минимальных затратах.
Каждая новая модель заставляет нас заново проверять то, в чём мы были уверены, и быстро экспериментировать с подходами, опирающимися на возникающие способности. Освободить модель — значит позволить ей самой решать, насколько глубоко думать, когда передавать работу и кому именно её поручить.

Рисунок 1: три решения, которые основной цикл принимает на каждом шаге.
Компонуемые примитивы для делегирования
Когда мы начали экспериментировать с GPT-6 Astra [[2]](https://openai.com/index/gpt-6-astra), оказалось, что модель отлично умеет делегировать. Семейство GPT-6 — первое у OpenAI, которое поддерживает изменение уровня усилий прямо во время генерации без сброса кэша.
Чтобы использовать эти возможности, мы доработали четыре примитива харнеса. Они дают основному циклу небольшой набор вариантов на каждом шаге: какого субагента запустить, какого размера и с каким уровнем усилий, возвращаться ли к уже проинструктированному и насколько глубоко думать:
- Субагенты с пониманием предметной области. Помимо универсального воркера, харнес предлагает специалистов: исследователей в режиме только для чтения, браузерных тестировщиков, ревьюеров и дизайн-субагента для Slides и UI — у каждого своя модель и свой набор инструментов. Пока харнес определяет, какие специалисты вообще существуют, а основной цикл решает, когда и как их применять.
- Уровни и усилия субагентов. Малый, стандартный и большой — каждый следующий дороже и мощнее, плюс выбор уровня усилий внутри уровня. Оба параметра применимы к любому субагенту, и основной цикл задаёт их при каждом вызове. Например, механическое переименование уходит малому субагенту с низким уровнем усилий, а генерация гипотез для упрямого бага — большому с высоким.
- Переиспользуемые субагенты. Основной цикл может вернуться к уже проинструктированному субагенту вместо того, чтобы начинать всё сначала. Нет никакого единственного «напарника», которого держат в живых всю сессию: любое количество субагентов разных типов и уровней остаётся «тёплым», и цикл сам выбирает, кого разбудить. Увеличенное время жизни кэша в новых моделях OpenAI не даёт расходам на это взлететь.
- Динамическая настройка усилий. Теперь, когда смена усилий посреди генерации сохраняет кэш на некоторых моделях, мы обучили систему эскалации: она проверяет траекторию на каждом шаге и подбирает усилия под сложность задачи. В отличие от маршрутизатора, она работает прямо в процессе над текущей задачей, а не один раз при получении запроса.
Качество кода у Astra и Fable 5.1 [[3]](https://www.anthropic.com/claude-fable-and-mythos-5-1) также позволило нам реже привлекать субагента для код-ревью — и оценки при этом не упали. Такого инженерного уровня мы раньше не видели ни у одной модели.
Новые модели делегируют сами по себе
Frontier-модели вроде Astra и Fable стоят дороже за токен, поэтому на фоне более мелких выглядят неэкономичными. Но мы заметили, что они естественным образом делегируют задачи менее дорогим субагентам, оставляя собственные токены для решений, где они действительно нужны.
Replit Agent никогда не принуждает основной цикл создавать субагентов. В таблице 1 показано, как три модели принимают это решение в продакшене:

Таблица 1: Делегирование в продакшене Replit Agent, каждая модель со средним уровнем рассуждений.
Все три модели делегируют, но каждая по-своему. При среднем уровне усилий модели Fable редко отдают работу универсальному воркеру: они запускают исследователей только для чтения и ревьюеров, а реализацию оставляют себе. Astra — первая модель на нашей памяти, которая регулярно делегирует задачи универсальным воркерам без явного указания, и, проинструктировав одного из них, обычно возвращается к нему, а не начинает заново. Доля таких возвратов росла с каждым поколением моделей.

Рисунок 2: рабочий шаг в продакшене от 17 сентября 2026 года, восстановленный по трейсу. Основной цикл запустил исследователя, двух воркеров и тестировщика; из пяти вызовов воркеров три были возвратами к уже проинструктированным.
Результаты
Мы протестировали Replit Agent в режиме Max — нашей настройке максимального качества с Astra в роли основного цикла — на двух бенчмарках по разработке ПО: DeepSWE и Terminal-Bench. Для сравнения взяли два базовых варианта: Astra сама по себе в mini-swe-agent (как опубликовано в соответствующих таблицах лидеров) и архитектуру sidekick — ту же конфигурацию, но с одним изменением: примитивы субагентов заменены единственным долгоживущим воркером. На каждом графике результат сопоставлен со стоимостью задачи, поэтому самые эффективные конфигурации находятся ближе к левому верхнему углу.
На DeepSWE v1.1 [[4]](https://deepswe.datacurve.ai/), который проверяет многошаговые изменения в активных open-source-репозиториях, Replit Agent набирает 72% при стоимости $2,11 за задачу. Astra в mini-swe-agent с низким уровнем усилий показывает 67% за $1,60, а с уровнем xhigh — 74% за $4,43; архитектура sidekick даёт 61% за $1,34. Terminal-Bench 4.0 [[5]](https://www.tbench.ai/) проверяет многошаговую работу, выполняемую целиком через командную строку. Replit Agent достигает 49% при $2,53 за задачу, тогда как Astra с низким уровнем усилий — 42% за $2,25, а с xhigh — 60% за $5,86. Архитектура sidekick вытягивает 33% за $1,84.

Replit Agent обходит архитектуру sidekick на обоих бенчмарках — на 11 и 16 баллов. Sidekick обходится дешевле, но расплачивается за это потерей от одной шестой до трети результата. Astra сама по себе набирает больше только за счёт больших затрат: её лучшие настройки оказываются на 2 и 11 баллов выше Replit Agent, но стоят более чем вдвое дороже. Ни один из базовых вариантов не выигрывает одновременно и по цене, и по баллам. При этом Replit Agent работал точно в том виде, в каком попадает к пользователям, без каких-либо изменений промптов или харнеса.
Горький урок проектирования харнесов
Мы считаем эти результаты иллюстрацией «горького урока» Саттона [[6]](http://www.incompleteideas.net/IncIdeas/BitterLesson.html). Зашитые в агента человеческие знания помогают в краткосрочной перспективе, но в долгосрочной приводят к плато, и в итоге их обходят общие методы, масштабирующиеся вместе с вычислительными мощностями. Жёсткий харнес загоняет модель в единственный способ работы; компонуемый — позволяет выбирать. Чем умнее становятся модели, тем меньше харнес должен решать за них.
По сравнению с более предписывающей архитектурой такой подход даёт нам три преимущества:
- Он делает ставку на законы масштабирования моделей. Делегирование, опирающееся на «вкус» модели, становится лучше с каждым релизом. Ранние превью моделей следующего поколения продолжают этот тренд.
- Он подстраивается под задачу. Для мелкой задачи модель не создаёт ничего, для поиска — одного исследователя, а если сборку можно разбить на независимые части — целую команду.
- Он переиспользует, но не хранит. Субагент сохраняет контекст на случай, если модель захочет к нему вернуться, и ничего не остаётся в памяти, если этого не происходит.
Если говорить словами Саттона, харнес должен позволять модели самой находить способ выполнить работу, а не навязывать ей наш собственный. Освободите модели.
Благодарности
Авторы: Daniel Furman, Jacky Zhao, Vaibhav Kumar, Ed Sioufi и Michele Catasta. Спасибо James Austin, Toby Ho, Preeya Kirani, Zhen Li, Robin Newhouse, Devanshu Sen Pandey, Ibrahim Sheikh, Samuel Spitz, Peter Zhong и остальной команде AI в Replit за вклад в эту работу. Если вы хотите заниматься AI в Replit, моя команда нанимает людей — пишите на pirroh@repl.it.





