Evaluating Large Language Models Trained on Code
Статья OpenAI (2021) представляет Codex — GPT‑модель, дообученную на публичном коде GitHub, — и бенчмарк HumanEval для проверки функциональной корректности кода по docstring. Работа показывает, как измерять качество генерации программ через unit‑тесты, а не только совпадение с эталоном.
Методология и данные
1 блокДообучение GPT на публичном коде GitHub и оценка на HumanEval с unit‑тестами; метрика pass@k и анализ эффекта многократного сэмплирования.
Ключевые результаты
4 блокаМетодология
Фрагмент из раздела отчета
Codex обучен как языковая модель кода и оценен на HumanEval — 164 вручную написанных задачах на Python с тестами. Метрика pass@k измеряет вероятность получить хотя бы одно корректное решение среди k сэмплов; также анализируется эффект многократного сэмплирования.
Ключевые результаты
Фрагмент из раздела отчета
Codex заметно превосходит базовые LLM по функциональной корректности, а многократное сэмплирование резко повышает шанс получить рабочее решение.
HumanEval и pass@k
Фрагмент из раздела отчета
HumanEval оценивает функциональную корректность: решение считается верным только если проходит тесты, а pass@k — это шанс получить хотя бы одно корректное решение среди k сэмплов.
Ограничения
Фрагмент из раздела отчета
Авторы отмечают слабые места генерации: длинные цепочки операций и корректное связывание переменных.
Подробности из отчетаПоказатьСкрыть
Статья OpenAI (2021) представляет Codex — GPT‑модель, дообученную на публичном коде GitHub, — и бенчмарк HumanEval для проверки функциональной корректности кода по docstring. Работа показывает, как измерять качество генерации программ через unit‑тесты, а не только совпадение с эталоном.
Методология
Codex обучен как языковая модель кода и оценен на HumanEval — 164 вручную написанных задачах на Python с тестами. Метрика pass@k измеряет вероятность получить хотя бы одно корректное решение среди k сэмплов; также анализируется эффект многократного сэмплирования.
- Модель дообучена на публичном коде из GitHub.
- Каждая задача — это docstring и требуемая standalone‑функция с unit‑тестами.
- Сравнение ведется с GPT‑3 и GPT‑J на тех же задачах.
- Код исполняется в sandbox‑среде для безопасного тестирования.
Ключевые результаты
Codex заметно превосходит базовые LLM по функциональной корректности, а многократное сэмплирование резко повышает шанс получить рабочее решение.
- Codex‑12B решает 28,8% задач HumanEval при pass@1; GPT‑3 — ~0%, GPT‑J — 11,4%.
- Дополнительное дообучение на корректных функциях (Codex‑S) дает 37,7% pass@1.
- При 100 сэмплах на задачу модель решает 70,2% задач (pass@100).
HumanEval и pass@k
HumanEval оценивает функциональную корректность: решение считается верным только если проходит тесты, а pass@k — это шанс получить хотя бы одно корректное решение среди k сэмплов.
- Набор включает 164 задачи на алгоритмы, понимание текста и базовую математику.
- Датасет и раннер тестов опубликованы как открытый benchmark.
Ограничения
Авторы отмечают слабые места генерации: длинные цепочки операций и корректное связывание переменных.
- Оценка ограничена короткими standalone‑функциями и one‑shot постановкой задач.
- Долгие итеративные циклы разработки и отладки в эксперимент не входят.