🔬 Интересная ещё работа по использованию тестов в обучении LLM, где доказывается, что применение unit-тестов «в лоб» на GRPO-обучении приводит к деградации модели.
Главный вклад статьи — это аудит обучающей динамики unit-test-only RL (GRPO). Авторы показывают, что такая награда не просто позволяет обходить тесты, а обучение через тесты целенаправленно формирует дополнительное вредное поведение:
• Рост размера правок (over-editing): по мере обучения модель учится проходить тесты, просто редактируя больше строк. Средний размер правок растёт, но качество фиксов не повышается.
• Галлюцинация багов в корректном коде: самое интересное — обучение только на багованном коде приводит к тому, что модель начинает «видеть» баги там, где их нет. На валидационном наборе из 200 безошибочных программ частота «no-op» (отсутствия правок) падает с 30.8% до 20.5%. То есть модель, никогда не видевшая правильный код, учится его ломать.
Проблема не только в том, что RL может привести к reward hacking, а в том, что стандартная награда за прохождение тестов сама по себе порождает еще целый букет вредных побочных эффектов.
Как решение авторы предлагают включать минимум дополнительный критерий оценки F1 как оценку ещё с эталонным diff, но это сразу означает, что датасет только из задача-код-тесты без истории правок не будет рабочим.
Правда, альтернатива методам авторов — включение тестов в ещё более комплексные оценки критиков на обучении. Но главный инсайт в том, что при попытке оценивать кодирующую модель только по тестам идёт многогранный развал качества обучения.
https://arxiv.org/abs/2610.18755v1
Post #5360
539