Перейти к основному содержимому

Бенчмарки в порядке; проблема в обвязке, которую вы не версионировали

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

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

Что на самом деле измеряет оценка

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

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

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

Крупный план освещённых серверных стоек в дата-центре, показывающий современную технологическую инфраструктуру

Режимы отказа, которые скрывает обвязка

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

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

Сетевая политика песочницы — самая значимая невидимая настройка. Запуск с отключённым исходящим трафиком измеряет планирование и рассуждения об инструментах, а не использование инструментов. Запуск с включённым исходящим трафиком измеряет, выживет ли модель при реальной задержке, частичных отказах и несогласованных схемах. Это разные продукты. Когда поставщик сообщает оценку использования инструментов, не указывая сетевую политику, читатель не может узнать, что именно из двух было измерено, а эти два не сравнимы.

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

Контракт публикации результатов оценки

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

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

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

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

Указывайте компромисс, на который вы пошли. Каждый выбор обвязки покупает воспроизводимость ценой репрезентативности или наоборот. Скажите, в какую сторону вы пошли. Набор с заглушками, изолированный от сети и с жёстким бюджетом — прекрасная вещь для публикации, если на этикетке так и написано.

Почему это инженерная проблема, а не отчётная

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

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

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

Бенчмарк — не та переменная, которую вы упускаете. Обвязка — вот она, и именно её вы можете версионировать уже сегодня.

Макрофотография электронной печатной платы с микросхемами и компонентами

ПоделитьсяXLinkedInПостоянная ссылка5 мин чтения

Связанное чтение

На какие вопросы это отвечает

What is an agent evaluation harness?

The scaffolding around a model during an eval: tool schemas, retry policy, step and time budgets, sandbox limits and network policy. It determines what the agent can attempt, so it belongs in the published result.

Why does an unpublished harness make scores non-comparable?

Two runs with the same model but different step ceilings or network policies measure different capabilities. Without the manifest a reader cannot tell whether two numbers describe the same task.

Should eval tools be stubbed or live?

Both. Stubs give reproducibility for regression detection; live tools capture the ambiguity production agents face. Publish them as separate numbers with the harness attached to each.