OpenAI14 июля 2021 г.МирHumanEval (164 задачи), модели Codex 300M–12B

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 постановкой задач.
  • Долгие итеративные циклы разработки и отладки в эксперимент не входят.