Вдвое меньше токенов без смены модели: что NVIDIA сделала с harness кодинг-агента

—

от автора

Исследователи из NVIDIA, MIT и NTU поручили одному ИИ-агенту улучшать программу, в которой работает другой ИИ-агент, кодинг-ассистент. Цель поставили одну: тратить меньше токенов и сохранить качество решения задач.

Найденные приёмы сократили расход токенов на 45–49 %, счёт за API снизился примерно на треть. Счёт упал меньше, потому что сэкономленные токены в основном приходились на prompt cache, который и так стоит дешевле. Средний балл на бенчмарке EdgeBench при этом снизился на 6 %.

Статья SoL-Pi вышла 17 сентября 2026 года, код открыт в репозитории NVlabs/SoL-Pi.

Что такое harness

Кодинг-агент вроде Claude Code или Codex состоит из двух частей: языковой модели и программы вокруг неё, которую называют harness. Модель читает текст и пишет текст. Harness передаёт ей задачу, выполняет команды, которые она запросила (открыть файл, запустить тесты), и отправляет ей результат.

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

Поэтому одна и та же модель в разных harness стоит разных денег. На 51 задаче EdgeBench с моделью GPT-5.6 Sol harness Codex потратил 1787 $, открытый harness Pi потратил 1339 $ и набрал больше баллов: 44,8 против 34,7.

Идея: harness улучшает другой агент

Вручную harness настраивают так: инженер читает логи работы агента (трейсы), ищет, где агент делает лишнюю работу, и правит код. Авторы поручили эту работу отдельному ИИ-агенту-исследователю. Он читает трейсы агента на базе Pi, придумывает изменение harness, реализует его и проверяет на тестовых задачах.

Этот цикл повторяется сотни раз, и весь процесс дальше называется подбором: исследователь раз за разом придумывает изменения, проверяет их и оставляет те, что прошли отбор. В статье процесс называется auto-research.

Изменение принимается по двум правилам, которые исследователь изменить не может: качество решения задач остаётся в заданных пределах, и расход токенов снижается. Всего исследователь перебрал 152 идеи на 535 задачах, из них 495 взяты из реальных исправлений ошибок на GitHub, а 40 синтетические с автоматической проверкой. Весь подбор занял больше 3000 прогонов.

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

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

Четыре приёма, которые прошли отбор

Из 152 идей проверку прошли 4, и каждая убирает свой вид лишних токенов.

  • Action Fusion: раньше агент правил файл, получал ответ и следующим запросом просил запустить тесты, и каждый запрос снова отправлял модели всю историю. Теперь правка и запуск тестов идут одним вызовом, на такой паре действий модель получает 2 запроса вместо 3.

  • ObservationPack: вывод команды больше 10 KiB, например лог сборки, раньше оставался в истории и уходил модели с каждым следующим запросом. Теперь он идёт целиком только в двух ближайших запросах, дальше модель видит короткую ссылку, размер и первые и последние строки. Полный текст агент запрашивает по ссылке.

  • Evidence-Preserving Reducer: длинные логи сборки и тестов сначала читает дешёвая модель GPT-5.6 Luna и выписывает важное с точными цитатами. Программа сверяет цитаты с оригиналом, и при ошибке основная модель получает исходный лог.

  • Online Context Compact: сжатие истории в краткий пересказ экономит токены в следующих запросах и при этом сбрасывает prompt cache, за повторную запись которого провайдер тоже берёт деньги. После каждого выполненного шага плана harness сравнивает обе суммы и сжимает историю, когда экономия больше.

Сколько удалось сэкономить

На 51 задаче EdgeBench с моделью GPT-5.6 Sol SoL-Pi со всеми четырьмя приёмами отправил модели 1,10 млрд токенов против 2,15 млрд у Pi, на 49 % меньше. Счёт составил 894 $ против 1339 $ у Pi и 1787 $ у Codex. Средний балл составил 42,0 против 44,8 у Pi.

Harness

Токены, млрд

Счёт за API, $

Средний балл

$ за балл

SoL-Pi, все 4 приёма

1,10

894

42,0

0,42

Pi + ObservationPack

2,02

1271

47,2

0,53

Pi

2,15

1339

44,8

0,59

Codex

3,05

1787

34,7

1,01

Один ObservationPack дал другой результат: балл вырос до 47,2, счёт снизился на 5 %. Ещё 4 открытых harness (OpenSquilla, Oh-My-Pi, OpenCode, Oh-My-Opencode) набрали 24,5–38,5 балла при счёте 1243–3422 $. Цены API взяты на 17 августа 2026 года.

Приёмы искали только на модели GPT-5.6 Sol. На Claude Opus 5 SoL-Pi запустили без изменений и получили похожую картину: счёт 1158 $ против 1741 $ у Pi и 2535 $ у Claude Code, балл 42,2 против 44,8 и 43,7. В пересчёте на час работы агента авторы оценивают экономию в 8,75–13,50 $ относительно Codex и Claude Code.

На Terminal-Bench 4 SoL-Pi решил 15 задач из 63 против 18 у Pi и Codex и потратил 211 $ против 286 $ у Pi. На 6 задачах олимпиады IMO 2026 с проверкой доказательств в Lean 4 SoL-Pi и Pi решили по 3 задачи, Codex решил 5, и счёт SoL-Pi составил 63 $ против 76 $ у Pi.

В эксперименте с роем из 20 агентов, которые 2 часа ускоряли вычислительное ядро, рой на SoL-Pi получил самое быстрое ядро и обошёлся на 27 % дешевле роя на Pi.

Что смущает

Экономия оплачена качеством: на EdgeBench полный SoL-Pi теряет около 6 % балла, на Terminal-Bench 4 решает на 3 задачи меньше. Авторы называют это сопоставимым результатом.

  • Выбор лучшей конфигурации: вариант с одним приёмом, который дал 47,2 балла на GPT-5.6 Sol и 50,5 на Opus 5, выбрали по результатам того же EdgeBench. Эти цифры стоит считать оптимистичными.

  • Один прогон: каждую конфигурацию запускали по разу, разброс между прогонами в статье отсутствует. Разницу в 2–3 балла на 51 задаче по такой проверке отделить от случайности нельзя.

  • Часть бенчмарка: EdgeBench открыл 51 задачу из 134, все замеры сделаны на открытой части.

  • Цены: выгода от сжатия истории зависит от того, сколько провайдер берёт за prompt cache. При других ценах результат изменится.

Итог

Полный набор из 4 приёмов сокращает расход токенов почти вдвое и счёт за API на треть ценой 2,5–2,8 балла EdgeBench. Тем, кто работает с Pi, приёмы можно подключать по одному: Action Fusion и ObservationPack по отдельности на обеих моделях снизили счёт и подняли средний балл.

Источники

ссылка на оригинал статьи https://habr.com/ru/articles/1089370/