Harness² от Google Research: как ИИ-агент улучшает собственную рабочую среду

Harness² предлагает улучшать ИИ-агентов без дообучения модели: менять инструкции и инструменты, проверять эффект на той же задаче и сохранять подтверждённый опыт.

Можно ли сделать ИИ-агента полезнее, не меняя саму языковую модель? Исследователи Google Cloud AI Research и Northwestern University предлагают искать ответ не в весах модели, а в том, что её окружает: инструкциях, памяти, инструментах и правилах работы. Их открытый фреймворк Harness² пробует менять эту среду прямо во время решения задачи.

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

Модель — только часть агента

Языковая модель генерирует ответы, но самостоятельным агентом её делают дополнительные компоненты. Они задают правила, дают доступ к терминалу и другим инструментам, хранят контекст, делегируют подзадачи и определяют порядок действий. Этот слой в исследовании называется harness — рабочая среда агента.

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

Как проверять улучшения без готового ответа

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

Propose: предложить варианты

Сначала агент выполняет задачу с исходной средой. Затем система формирует два кандидата на изменение. Один ищет общую причину сбоя — например, слабое планирование или неудачную работу с инструментом. Другой учитывает особенности предметной области и текущего задания.

Probe: запустить варианты в одинаковых условиях

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

Compose: собрать итоговую конфигурацию

На основании этих наблюдений Harness² объединяет полезные изменения, может пересмотреть спорную правку или оставить исходную конфигурацию. После этого задача запускается ещё раз с собранной средой. Такой цикл называется Propose–Probe–Compose.

Ключевая оговорка: сравнение поведения не является доказательством истинности ответа. Оно даёт основание считать, что правка повлияла на конкретный сбой, но сама модель может ошибаться, а случайность выполнения — менять траектории. Поэтому «подтверждённое поведением» здесь означает наблюдаемое различие, а не формальную гарантию корректности.

Память о правках переносится между задачами

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

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

Что показали тесты — и чего они не доказывают

Исследователи проверили Harness² на WorkBuddy-Bench, JobBench и юридическом тесте LAB. Они сочетали две модели-исполнителя — GLM-5 и Gemini 3.5 Flash — с OpenCode и Codex. Во всех четырёх конфигурациях один шаг улучшил показатели на всех трёх бенчмарках. Наибольший из заявленных приростов составил 11,5 пункта на WorkBuddy-Bench для GLM-5 с OpenCode; на JobBench — 4,5 пункта; в LAB доля пройденных критериев выросла максимум на 11,8 процентного пункта.

Есть нюанс, который меняет трактовку слова «самоулучшение»: во время экспериментов среду по умолчанию редактировала отдельная модель Claude Opus 4.8, тогда как GLM-5 или Gemini 3.5 Flash выполняли задачи. Это не делает результат менее интересным, но показывает, что Harness² — прежде всего механизм координации и проверки правок, а не демонстрация того, что любая модель самостоятельно переписывает себя.

На WorkBuddy-Bench GLM-5 с улучшенной средой обошла базовую Gemini 3.5 Flash в одном сравнении. На юридическом тесте LAB картина сложнее: результат Meta-Harness для Gemini 3.5 Flash с Codex составил 76,5, а Harness² — 75,6. Значит, новый подход не побеждает каждый альтернативный метод в каждой конфигурации. Кроме того, основные таблицы усредняют три запуска, а бенчмарки охватывают ограниченный набор задач — переносить цифры на любые реальные проекты рано.

За качество приходится платить вычислениями

В простейшем режиме k=1 метод запускает исходную версию задачи, два пробных варианта и итоговую конфигурацию. Это около четырёх выполнений задачи вместо одного, ещё до учёта работы модели-редактора и последующего анализа. Больше шагов расширяют поиск, но увеличивают задержку и расходы на вызовы моделей.

У эксперимента есть и вопрос изоляции. В README авторы отмечают, что доступ исполнителей к сети не ограничен, а Codex по умолчанию запускается с отключённой песочницей. Для исследования это может быть источником утечки: агент способен открыть опубликованные критерии или ответы бенчмарка. В реальной работе та же свобода требует аккуратно ограничивать доступ к репозиторию, секретам и внешним ресурсам.

Почему Harness² заслуживает внимания

Harness² переносит фокус с вопроса «какую модель выбрать?» на другой: «какую среду нужно построить, чтобы эта модель стабильно справлялась с конкретной работой?». Это полезный поворот для агентных систем, где результат зависит от цепочки инструментов, инструкций и решений, а не только от размера модели.

Пока речь идёт об исследовательском методе, а не о кнопке, которая гарантированно делает любой агент умнее. Результаты на трёх тестах показывают, что аккуратные правки среды могут заметно помочь; дополнительные запуски, неопределённость поведенческих сравнений и требования к изоляции задают практические пределы.

Код Harness² опубликован под лицензией Apache-2.0. Подробности экспериментов приведены в статье на arXiv, реализация и инструкции — в репозитории проекта. Описание и ограничения инструмента собраны на странице Harness² в разделе «Инструменты». Для сравнения систем вокруг моделей можно также посмотреть на страницы OpenCode и Codex.