Language Model Evaluation Harness
Language Model Evaluation Harness 是一个统一框架,用于在大量不同的评估任务上测试生成性语言模型。其特点包括:
- 实现了 200 多个子任务/评估设置。
- 支持通过 transformers、GPT-NeoX 和 Megatron-DeepSpeed 等加载模型,并提供灵活的无关词元化接口。
- 支持使用 OpenAI、goose.ai 和 TextSynth 等商业 API 进行评估。
- 支持在适配器(如 LoRa)上的评估,确保实验的可重复性和可比较性。
- 任务版本化确保了任务更新后结果的可重复性。
安装方法
使用如下命令安装 lm-eval
:
git clone https://github.com/EleutherAI/lm-evaluation-harness
cd lm-evaluation-harness
pip install -e .
基本使用
以下是一些基本使用示例:
评估 HuggingFace Hub 上的 GPT-J-6B
模型:
python main.py \
--model hf-causal \
--model_args pretrained=EleutherAI/gpt-j-6B \
--tasks hellaswag \
--device cuda:0
调用 OpenAI API 进行评估:
export OPENAI_API_SECRET_KEY=YOUR_KEY_HERE
python main.py \
--model gpt3 \
--model_args engine=davinci \
--tasks lambada_openai,hellaswag
使用场景
- 模型评估: 对不同任务(如文本生成、分类、问答等)上的语言模型进行评估,以比较模型性能。
- 任务迁移: 将旧版库支持的任务迁移到新的 YAML 配置格式,确保不同实现之间的表现一致性。
- 支持多种模型和加载方式: 支持 HuggingFace transformers、GPT-NeoX、Megatron-DeepSpeed 以及多种 API 进行模型评估。
- 测试和验证: 为研究人员和开发者提供工具,允许他们测试和验证模型,确保结果的重复性和可靠性。
总之,Language Model Evaluation Harness 是一个强大且灵活的工具,用于统一和简化生成性语言模型的评估过程。
广告:私人定制视频文本提取,字幕翻译制作等,欢迎联系QQ:1752338621