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