HumanEval

HumanEval

HumanEvalとは

HumanEval とは、大規模言語モデルのコード生成能力を評価するためのベンチマークです。2021年にOpenAIがCodexの評価のために開発し、164個のPythonプログラミング問題で構成されています。各問題は関数のシグネチャとdocstringが与えられ、正しい関数本体を生成することが求められます。

HumanEvalの評価方法

HumanEvalではpass@k という指標が使われます。これは、モデルがk個のコードサンプルを生成したとき、少なくとも1つがすべてのテストケースをパスする確率を表します。pass@1はモデルの一発生成能力、pass@10やpass@100はモデルの潜在的な生成能力を測定します。

HumanEvalの問題内容

問題は文字列操作、数学的計算、リスト処理、再帰、ソートなど、さまざまなプログラミングスキルをカバーしています。各問題には平均7.7個のテストケースが用意されており、生成されたコードが正しく動作するかを自動的に検証します。

HumanEvalの発展

HumanEvalの問題は比較的簡単という指摘があり、HumanEval+(追加テストケースによる厳密な評価)、EvalPlus、MBPP、SWE-benchなどのより高度なコード評価ベンチマークが開発されています。最新のLLMではHumanEvalのpass@1が90%を超えるモデルも登場しています。