Нота та же

Камертон даёт одну ноту — ля. По ней строят скрипку, потом рояль, потом хор, и каждый раз сверяются с тем же звуком. Сам камертон не подстраивают ни под кого: он не слышит ни скрипки, ни хора.

Агентов долго настраивали на слух — по ощущению, без камертона.

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

Начинать удобно с навыков — обычно это текстовые файлы с инструкциями и приёмами под конкретную работу. В SkillOpt от Microsoft агент решает набор задач, программа разбирает оценённые попытки и предлагает небольшую правку файла: что-то добавить, вычеркнуть или заменить. Правку проверяют на задачах, которых программа при её подготовке не видела, и оставляют, только если оценка выросла.

В Google Research взялись за другую трудность: всё, что нужно для такой правки, разбросано по разным частям системы. WikiSkill складывает опыт агента — удачи и провалы — в одну вики, чтобы не находить одну и ту же ошибку заново и не пробовать снова исправление, которое уже отвергли. Модель при этом не меняется — меняется текст, который можно прочитать и хранить по версиям.

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

Self-Harness ищет такие повторяющиеся сбои в записях работы агента, предлагает точечные изменения обвязки и прогоняет регрессионные тесты — проверяет, что улучшение в одной задаче не сломало другие. В экспериментах результат в лучшем случае вырос на 132% относительно исходного.

Darwin Gödel Machine устроена свободнее: агент-программист правит собственный код, проверяет получившуюся версию и хранит варианты в архиве — можно вернуться к старому и пойти другим путём. В Meta сделали Hyperagents для задач не из программирования: в одной программе соединены агент, решающий задачу, и второй агент, который его переделывает. Меняться может и сам способ переделки.

Xiaomi в HarnessX доходит до самой модели. Записи, по которым правят обвязку, могут стать данными для дообучения. Модель может перенять стратегии, найденные обвязкой, и решать задачи экономнее, с меньшим числом токенов на входе, а новое поведение модели даёт материал для следующего круга.

Обычно разработчики правят обвязку. EnvHarness предлагает менять и то, на чём агент учится, — обучающую среду. Среды дорого делать, и их редко меняют: на освоенной среде агент почти ничему не учится. Логику среды и проверяющую часть при этом не трогают. На пяти наборах тестовых задач агенты, обученные в таких средах, прибавили до девяти пунктов в оценке на задачах, которых не видели при обучении, и тратили меньше шагов. Та же идея работает и на уровне команды агентов.

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