HumanEval

HumanEval

程式碼生成評估基準

詳細解釋

OpenAI 於 2021 年發布的代碼生成評估基準,包含 164 個手工編寫的編程問題,測試 LLM 的函數級代碼生成能力。

測試設計:

  • 164 個問題:涵蓋算法、數學、字符串處理、數據結構
  • 形式:函數簽名 + docstring,模型填充函數體
  • 測試:每題包含多個單元測試用例
  • 評分:pass@k(k 個樣本中至少一個通過所有測試的概率)

例子:

題目描述:編寫函數找出列表中的最長遞增子序列。

模型輸出:Python 函數代碼

驗證:運行測試用例,檢查正確性

當前性能(2024):

  • o1/o3:90%+
  • GPT-4:87%
  • Claude 3.5:92%
  • CodeLlama 70B:81%
  • DeepSeek-Coder 33B:90%+
  • 人類程序員:約 80-90%

局限與批評:

  • 僅 Python:不支持其他語言(雖然有 MultiPL-E 擴展)
  • 算法題:類似競賽編程,非真實軟件工程
  • 短函數:平均 10 行,非系統級代碼
  • 數據污染:訓練數據可能包含這些題目

改進版本:

  • HumanEval+:增加測試用例,減少假陽性
  • MBPP:Google 的類似基準,更多 Python 入門級問題
  • SWE-bench:真實 GitHub issue 修復(更難)

這是「AI 編程能力」的標準測試—— 雖不完美,但提供了客觀可比較的指標。

探索更多AI詞彙

查看所有分類,繼續學習AI知識