ProgramBench
ProgramBench — весьма мощный бенчмарк для ИИ, который показывает, что все современные модели — таки стохастические попугаи. Даже самые современные модели показывают 0 %.
Описание[править]
Это хитроумный тест на понимание в человеческом смысле, а не просто поиск в интернете и поигрывание с токенами. Был выпущен 5 мая 2026 года.
Его смысл просто: могут ли языковые модели воссоздавать целые программы с нуля, имея в распоряжении только скомпилированный исполняемый файл и его документацию? ProgramBench не требует исправления багов или заполнения пропусков в готовом коде. Агент должен самостоятельно спроектировать архитектуру, выбрать язык программирования, реализовать весь код и создать скрипт сборки, чтобы полученная программа точно воспроизводила поведение оригинального бинарника. Оказывается, что заниматься подобным они не в состоянии.
Ведь реальный программист высокой квалификации не просто долбит код, который проходит конкретные тесты, но осуществляют настоящую программную инженерию, и определяет, что должен код делать в целом. В современных проектах этим занимаются только люди, в то время как ИИ набивают конкретные функции по запросам.
Каждая задача ProgramBench состоит из скомпилированного исполняемого файла и документации программы (man-страницы, вывод --help, примеры использования, README). Агенту запрещено восстанавливать код бинарника, его можно только запускать. Также нельзя подключаться к интернету или пакетным менеджерам. Программы в тесте есть простые и есть сложные.
Агент должен провести исследование, то есть запускать оригинальный бинарник с различными входными данными и наблюдать поведение, затем спроектировать архитектуру программы, выбрать язык программирования, написать весь исходный код и скрипт сборки, после чего скомпилировать и протестировать свою версию. Если программы будут идентичны, тест будет считаться пройденным.
Итоги[править]
Ни одна из современных моделей не смогла пройти хотя бы один тест полностью. Таким образом все модели показали 0 %.
Для сравнения, для человека с профильным образованием такая задача не была бы особо сложной.
Модели демонстрируют частичный прогресс на простых задачах, но полностью проваливаются на сложных проектах вроде FFmpeg и SQLite. Анализ кода показал, что модели предпочитают монолитные однфайловые реализации, пишут значительно меньше строк кода и используют меньше файлов, чем оригинальные проекты. Любят питон.
И это в тесте ещё нет проверки нефункциональных свойств (производительность, расход памяти, безопасность).