ChatPaper.aiChatPaper

Vibe Checker: Согласование оценки кода с человеческими предпочтениями

Vibe Checker: Aligning Code Evaluation with Human Preference

October 8, 2025
Авторы: Ming Zhong, Xiang Zhou, Ting-Yun Chang, Qingze Wang, Nan Xu, Xiance Si, Dan Garrette, Shyam Upadhyay, Jeremiah Liu, Jiawei Han, Benoit Schillings, Jiao Sun
cs.AI

Аннотация

Крупные языковые модели (LLM) стимулировали развитие "виб-кодинга", где пользователи используют LLM для генерации и итеративного улучшения кода через взаимодействие на естественном языке до тех пор, пока он не пройдет их "виб-проверку". Виб-проверка связана с реальными человеческими предпочтениями и выходит за рамки функциональности: решение должно казаться правильным, выглядеть чистым, сохранять замысел и оставаться корректным. Однако текущая оценка кода остается привязанной к метрике pass@k и учитывает только функциональную корректность, игнорируя нефункциональные инструкции, которые пользователи регулярно применяют. В этой статье мы выдвигаем гипотезу, что следование инструкциям — это недостающий элемент, лежащий в основе виб-проверки, который отражает человеческие предпочтения в кодировании помимо функциональной корректности. Чтобы количественно оценить способности моделей следовать инструкциям в коде с измеримыми сигналами, мы представляем VeriCode — таксономию из 30 проверяемых инструкций для кода вместе с соответствующими детерминированными верификаторами. Мы используем эту таксономию для расширения существующих наборов оценки, создавая Vibe Checker — тестовую среду для оценки как следования инструкциям, так и функциональной корректности. Оценив 31 ведущую LLM, мы показываем, что даже самые сильные модели с трудом соблюдают несколько инструкций и демонстрируют явный функциональный регресс. Важнее всего, что комбинированный показатель функциональной корректности и следования инструкциям лучше всего коррелирует с человеческими предпочтениями, причем последнее становится основным дифференцирующим фактором в реальных задачах программирования. Наша работа выявляет ключевые факторы виб-проверки, предлагая конкретный путь для бенчмаркинга и разработки моделей, которые лучше соответствуют предпочтениям пользователей в кодировании.
English
Large Language Models (LLMs) have catalyzed vibe coding, where users leverage LLMs to generate and iteratively refine code through natural language interactions until it passes their vibe check. Vibe check is tied to real-world human preference and goes beyond functionality: the solution should feel right, read cleanly, preserve intent, and remain correct. However, current code evaluation remains anchored to pass@k and captures only functional correctness, overlooking the non-functional instructions that users routinely apply. In this paper, we hypothesize that instruction following is the missing piece underlying vibe check that represents human preference in coding besides functional correctness. To quantify models' code instruction following capabilities with measurable signals, we present VeriCode, a taxonomy of 30 verifiable code instructions together with corresponding deterministic verifiers. We use the taxonomy to augment established evaluation suites, resulting in Vibe Checker, a testbed to assess both code instruction following and functional correctness. Upon evaluating 31 leading LLMs, we show that even the strongest models struggle to comply with multiple instructions and exhibit clear functional regression. Most importantly, a composite score of functional correctness and instruction following correlates the best with human preference, with the latter emerging as the primary differentiator on real-world programming tasks. Our work identifies core factors of the vibe check, providing a concrete path for benchmarking and developing models that better align with user preferences in coding.
PDF292October 9, 2025