工程開發
evaluating-code-models avatar

evaluating-code-models

使用 BigCode Evaluation Harness 評估代碼生成模型。包含 HumanEval、MBPP 和 MultiPL-E 等基準測試,並提供多語言編碼模型的 pass@k 指標評估。

簡介

evaluating-code-models 技能為評估專注於程式設計任務的大型語言模型 (LLM) 提供了強大的框架。該技能基於業界標準的 BigCode Evaluation Harness,使研究人員和工程師能夠系統地測量模型的代碼生成能力、邏輯推理能力和多語言熟練度。它專為訓練、微調或比較以代碼為中心的模型的開發者而設計,並需要 NVIDIA GPU 等計算資源來進行高效評估。

  • 完整支援主要的代碼基準測試,包括 HumanEval、HumanEval+、MBPP、MBPP+、APPS 和 DS-1000。

  • 透過 MultiPL-E 支援 18 種程式語言的多語言評估,包括 Python、C++、Java、JavaScript、Rust、Go 等。

  • 精確的 pass@k 指標計算 (pass@1, pass@10, pass@100),以了解模型的樣本效率和可靠性。

  • 支援多樣化的模型架構,包括標準 HuggingFace 模型、針對記憶體受限環境的量化 (4-bit) 模型以及自定義私人模型路徑。

  • 與 accelerate 整合以進行分佈式多 GPU 評估,並支援 Docker 以安全地執行生成的代碼。

  • 針對指令微調模型(Instruction-tuned models)的評估工作流,包括自定義提示模板注入和特定基於指令的任務。

  • 使用者在執行評估前應配置必要的依賴項 (transformers, accelerate, datasets)。

  • 進行多語言測試時,建議使用安全容器來隔離可能不安全的生成代碼。

  • 評估結果將匯出為結構化的 JSON 文件,詳細說明 pass@k 分數以及配置元數據,便於在不同訓練檢查點或模型版本之間進行比較。

  • 強烈建議在隔離的基礎設施上謹慎使用 --allow_code_execution 標誌。典型的輸入包括模型標識符或本地路徑以及任務列表;預期的輸出是量化生成片段功能正確性的綜合評估報告。

倉庫統計

Star 數
7,624
Fork 數
585
Open Issue 數
13
主要語言
TeX
預設分支
main
同步狀態
閒置
最近同步時間
2026年4月30日 上午11:31
在 GitHub 查看