该回购包含用于运行评估的代码并重现Jurassic-1技术论文的结果(请参阅博客文章),当前支持通过AI21 Studio API和OpenAI的GPT3 API运行任务。
请使用以下Bibtex条目:
@techreport{J1WhitePaper,
author = {Lieber, Opher and Sharir, Or and Lenz, Barak and Shoham, Yoav},
title = {Jurassic-1: Technical Details And Evaluation},
institution = {AI21 Labs},
year = 2021,
month = aug,
}
git clone https://github.com/AI21Labs/lm-evaluation.git
cd lm-evaluation
pip install -e .
运行评估的输入点是lm_evaluation/run_eval.py,它接收到要运行的任务和模型列表。
模型参数应为“提供商/model_name”的形式,其中提供商可以为“ AI21”或“ OpenAI”,并且模型名称是提供商支持的模型之一。
通过一种API模型运行时,请使用环境变量AI21_STUDIO_API_KEY和OPERAI_API_KEY设置您的API密钥。确保考虑您事先运行的模型的成本和配额限制。
示例:
# Evaluate hellaswag and winogrande on j1-large
python -m lm_evaluation.run_eval --tasks hellaswag winogrande --models ai21/j1-large
# Evaluate all multiple-choice tasks on j1-jumbo
python -m lm_evaluation.run_eval --tasks all_mc --models ai21/j1-jumbo
# Evaluate all docprob tasks on curie and j1-large
python -m lm_evaluation.run_eval --tasks all_docprobs --models ai21/j1-large openai/curie
目前,该存储库支持了《侏罗纪-1技术论文》中报告的零射击多项选择和文档概率数据集。
按照GPT3论文中所述的多项选择数据集的格式,默认报告的评估指标是其中所述的。
除了StoryCloze之外,我们所有格式化的数据集公开可用,并在LM_EVALUATION/TASKS_CONFIG.PY中引用。需要手动下载和格式化StoryCloze,该位置应通过环境变量“ storycloze_test_path”配置。
文档概率任务包括来自19个数据源的文档,包括C4和“堆”的数据集。
每个文档都是在句子边界上预先放置的,每个文档每个文档最多1024个GPT代币,以确保所有模型都可以看到相同的输入/上下文,而不论令牌化如何,并支持对限制在1024序列长度的模型的评估。
这19个任务中的每一个都有约4MB的总文本数据。
默认情况下,所有结果都将保存到文件夹“结果”中,并且重新设计相同的任务将加载现有结果。可以使用环境变量lm_evaluation_results_dir更改结果文件夹。