このレポは、評価を実行し、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で、実行するタスクとモデルのリストを受け取ります。
モデルの引数は、プロバイダーが「AI21」または「OpenAI」にすることができ、モデル名はプロバイダーサポートモデルの1つである「プロバイダー/model_name」という形式である必要があります。
APIモデルのいずれかを実行するときは、環境変数AI21_STUDIO_API_KEYおよびOpenAI_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
現在、このリポジトリは、Jurassic-1テクニカルペーパーで報告されているゼロショットの複数選択およびドキュメント確率データセットをサポートしています。
Multhy ChoiceデータセットはGPT3ペーパーで説明されているようにフォーマットされており、デフォルトの報告された評価メトリックはそこに記載されているものです。
StoryClozeを除くすべてのフォーマットされたデータセットは公開されており、lm_evaluation/tasks_config.pyで参照されています。 StoryClozeは手動でダウンロードしてフォーマットする必要があり、場所は環境変数「StoryCloze_Test_Path」を介して構成する必要があります。
ドキュメントの確率タスクには、C4や「The Pile」のデータセットを含む19のデータソースからのドキュメントが含まれます。
各ドキュメントは、各モデルがトークン化に関係なく同じ入力/コンテキストを確認し、1024のシーケンス長に制限されているモデルの評価をサポートするために、それぞれ最大1024 GPTトークンのサブドキュメントへの文の境界で事前にスプリットされています。
19のタスクのそれぞれには、合計テキストデータの〜4MBがあります。
デフォルトでは、すべての結果がフォルダー「結果」に保存され、同じタスクを再実行すると既存の結果がロードされます。環境変数lm_evaluation_results_dirを使用して、結果フォルダーを変更できます。