Короткий ответ: кодовый бенчмарк показывает результат системы на определённом наборе задач. HumanEval проверяет написание небольших функций, а SWE-bench — исправление задач в реальных репозиториях. Их проценты нельзя ставить рядом как две оценки одной способности: отличаются вход, инструменты и критерий успеха.
Когда выбираете ИИ для проекта, начните с типа работы. Подсказки во время набора кода, поиск ошибки в чужом репозитории и самостоятельная работа агента над задачей — разные сценарии. Полезно сначала прочитать общие правила чтения бенчмарков, а затем смотреть на специализированные тесты.
HumanEval: функция по заданию
В репозитории HumanEval опубликованы задачи и скрипт проверки функциональной корректности. Исследователи описывают набор как синтез программ по описанию функции. Метрика pass@k оценивает, удастся ли получить проходящий вариант среди k попыток; её считают по не менее чем k сгенерированным решениям на задачу. Поэтому pass@1 и pass@10 описывают разное число разрешённых попыток: их можно посчитать по одному набору решений, но сравнивать pass@1 одной системы с pass@10 другой нельзя.
Для редактора это важная граница. Успех на короткой функции не говорит, что система найдёт нужный файл, согласует правку с архитектурой большого проекта или безопасно выполнит команды. Но такой тест всё ещё полезен, если ваша задача похожа на небольшие изолированные функции.
SWE-bench: задача внутри репозитория
SWE-bench построен на реальных обращениях (issues) в GitHub-репозиториях и связанных с ними исправлениях. Исходный набор содержит 2294 задачи из 12 Python-репозиториев. Verified — подмножество из 500 задач, отобранных людьми; Lite — 300 задач для менее дорогой оценки. Показатель % Resolved означает долю решённых задач именно в выбранном наборе. Проверяйте его название рядом с числом.
Здесь на результат влияет не только модель. Агент может искать по проекту, редактировать файлы, запускать тесты и повторять попытку. Сравнение двух строк при разной обвязке показывает работу двух систем, а не чистое различие моделей. Режим Bash Only — стандартный вид Verified на 500 задачах с общей средой mini-SWE-agent; это один способ сделать сравнение ближе к одинаковым условиям.
Пять вопросов к «лидеру» таблицы
- Какой именно набор и версия использованы? Сверьте число задач и дату.
- Сколько попыток и какой бюджет разрешены? Более дорогой прогон может дать лучший процент.
- Какие инструменты доступны агенту? Поиск, тесты и готовые подсказки меняют результат.
- Есть ли логи изменений и воспроизводимый запуск? Одна цифра не покажет побочные правки.
- Совпадает ли ваш стек с набором? Для других языков у SWE-bench есть Multilingual, но и он не заменяет испытание на вашем репозитории.
Из первого места нельзя вывести, что конкретная команда сократит расходы или ускорит релизы. Такой вывод появляется только после измерения приёмки на её задачах.
Как устроить свой маленький пилот
Выберите 5–10 ранее закрытых задач разной сложности и подготовьте для каждой коммит до исправления. Уберите из копии будущую историю, ветки, pull request и обсуждение с готовым ответом. Приёмочные тесты храните отдельно; кандидат не вправе их менять. Уберите секреты и персональные данные, запускайте генерируемый код в изолированной среде без доступа к рабочей сети и данным: README HumanEval прямо предупреждает о недоверенном коде. Дайте кандидатам одинаковые инструменты, лимит времени и число попыток. Приёмку по возможности выполняет человек, не знающий автора варианта.
Записывайте долю принятых изменений, время человека на ревью, стоимость попыток и серьёзность побочных правок. При маленьком числе задач результат будет ориентиром, а не статистическим доказательством превосходства. Если нужна процедура, а не выбор таблицы, используйте методику проверки ИИ-агентов.
Первоисточники
- HumanEval: код набора и метрики.
- Chen et al., 2021: исследовательская статья HumanEval.
- SWE-bench: наборы и результаты.
- Исследовательская статья SWE-bench.
Сведения проверены 23 сентября 2026 года. Собственные прогоны HumanEval или SWE-bench для этого материала не проводились.