Все материалы
Архитектура агентов4 мин чтения

Программный контур является частью агента

Одна и та же модель показывает разное качество в зависимости от сборки контекста, порядка инструментов, повторов и проверок. Сравнивать только названия моделей недостаточно.

Read in English

Одна модель, четыре разных результата

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

OpenForgeRL показал, что этот слой меняет результат настолько сильно, что его нельзя считать упаковкой. Авторы запускали одну базовую модель на одинаковых задачах внутри ReAct, OpenClaw, ZeroClaw и контура, похожего на Codex. Успешность заметно различалась. Обучение на траекториях из нескольких контуров улучшало перенос по сравнению с обучением внутри одного.

В OpenForgeRL между программным контуром и сервером модели стоит промежуточный узел. Он перехватывает вызовы, сохраняет траектории, ответы инструментов и итоговую награду. Обучение происходит в той же среде, где агент будет работать. Это убирает удобную, но ложную границу между "качеством модели" и "качеством обвязки".

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

Контур можно обучать отдельно

Harness-R1 идет дальше. Отдельная модель на 9 млрд параметров получает пачку неудачных траекторий и меняет исполняемый код агента: сборку контекста, работу с инструментами, проверку действий и восстановление после ошибок. Награда вычисляется не по мнению текстового судьи, а по повторному выполнению задачи после изменения.

Для Qwen3.5-9B успешность на WebShop, ALFWorld и DBBench выросла с 44,3% до 53,6% без дообучения самого агента. После дообучения модели изменение программного контура подняло результат с 59,2% до 64,2%.

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

Иногда ошибка рассуждения является ошибкой перехода

Исследование Read-Gate разобрало 12 000 траекторий поиска. Агенты часто вызывали поиск, получали короткие фрагменты результатов и сразу отвечали, не открывая найденные документы. Увеличение бюджета рассуждения не устраняло этот класс отказа.

Простое правило поиск -> чтение -> ответ дало прибавку от 14,9 до 19,9 процентного пункта на траекториях, где чтение иначе пропускалось. На полных выборках рост составил от 3,2 до 9,4 пункта.

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

HALT применяет похожую идею к остановке поиска. Система заранее формулирует промежуточные утверждения и прекращает поиск лишь после того, как найденные источники покрывают их. Если покрытие нельзя подтвердить, правильным исходом может быть отказ от ответа, а не бесконечный поиск.

Производительность тоже живет между вызовами модели

Программный контур влияет не только на точность. Исследование Architectural Implications of Agentic AI разбирает рабочие нагрузки Azure и показывает чередование генерации на графическом ускорителе, управления на процессоре и внешних инструментов. Нагрузка получается прерывистой: ускоритель простаивает во время инструмента, процессор резко загружается при параллельной сборке и тестах, а задержка складывается из множества разных очередей.

Авторы построили опытный планировщик Agora, который совместно размещает этапы и использует простаивающие ресурсы. В их измерениях загрузка процессора выросла на 30% при замедлении агента менее чем на 3%. Объединение нагрузки на ускорителях высвободило треть устройств, увеличило пропускную способность генерации на 82% и сократило хвостовую задержку в 2,5 раза.

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

Что измерять вместо названия модели

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

Отдельно стоит хранить причины остановки и точки, где контекст был сокращен. Если агент потерял важный ответ инструмента при сжатии истории, смена модели может случайно скрыть проблему, но не устранит ее.

Для рабочего контура полезен тот же подход, что и для обычной программы: версии, испытания изменений, раздельные проверки компонентов и возможность отката. Модель определяет диапазон доступных способностей. Программный контур решает, какая доля этих способностей дойдет до результата.

Версия контура должна попадать в каждую сохраненную траекторию. Без нее два одинаковых ответа модели могут привести к разным действиям, а расследование не сможет воспроизвести различие.

Поэтому отчет вида "мы перешли на модель X" почти ничего не объясняет без второй строки: какой код окружал модель, что изменилось в траектории и по каким конечным состояниям измерялся успех.

Автор / руководитель исследованийДмитрий / R&D Club

Принесите задачу, у которой нет очевидного пути реализации.

hello@rnd.club ↗