🚀 Prometheus 2
Prometheus 2は、潜在的な大規模言語モデル(LLM)の細粒度評価や、人間のフィードバックに基づく強化学習(RLHF)の報酬モデルとして、GPT - 4評価の代替手段となる言語モデルです。
🚀 クイックスタート
Prometheus 2は、潜在的な大規模言語モデル(LLM)の細粒度評価や、人間のフィードバックに基づく強化学習(RLHF)の報酬モデルとして使用できます。このモデルは[Mistral - Instruct](https://huggingface.co/mistralai/Mistral - 7B - Instruct - v0.2)をベースモデルとしており、特定のデータセットでファインチューニングされています。
🔍 参考リンク
- ホームページ: 準備中
- リポジトリ:https://github.com/prometheus - eval/prometheus - eval
- 論文:https://arxiv.org/abs/2405.01535
- 問い合わせ先:seungone@cmu.edu
✨ 主な機能
Prometheus 2は、以下のような機能を備えています。
- 潜在的なLLMの細粒度評価に使用できる。
- RLHFの報酬モデルとして機能する。
- 絶対評価(直接評価)と相対評価(ペアワイズランキング)の両方をサポートする。
📚 ドキュメント
モデルの詳細
モデルの説明
属性 |
详情 |
モデルタイプ |
言語モデル |
言語 |
英語 |
ライセンス |
Apache 2.0 |
関連モデル |
[すべてのPrometheusチェックポイント](https://huggingface.co/models?search=prometheus - eval/Prometheus) |
詳細情報のリソース |
研究論文、[GitHubリポジトリ](https://github.com/prometheus - eval/prometheus - eval) |
Prometheusは2つの異なるサイズ(7Bと8x7B)で学習されています。7Bサイズの言語モデルは[このページ](https://huggingface.co/prometheus - eval/prometheus - 2 - 7b - v2.0)で確認できます。また、データセットは[このページ](https://huggingface.co/datasets/prometheus - eval/Feedback - Collection)と[このページ](https://huggingface.co/datasets/prometheus - eval/Preference - Collection)で確認できます。
プロンプトフォーマット
私たちは、[GitHubリポジトリ](https://github.com/prometheus - eval/prometheus - eval)にPrometheus 2を便利に使用するためのラッパー関数とクラスを用意しています。是非ご利用ください。ただし、モデルを独自のユースケースで使用する場合は、以下のプロンプトフォーマットを参照してください。
絶対評価(直接評価)
Prometheusは入力に4つの要素を必要とします。指示、評価するレスポンス、スコアルーブリック、および参照回答です。以下のプロンプトフォーマットを参照してください。
###タスク説明:
指示(入力を含む場合もあります)、評価するレスポンス、スコア5を得る参照回答、および評価基準を表すスコアルーブリックが与えられます。
1. 与えられたスコアルーブリックに基づいて、レスポンスの品質を厳密に評価する詳細なフィードバックを書いてください。一般的な評価ではなく、具体的な基準に基づいてください。
2. フィードバックを書いた後、1から5までの整数のスコアを書いてください。スコアルーブリックを参照してください。
3. 出力形式は次のようになります。「フィードバック: (基準に対するフィードバックを書く) [RESULT] (1から5までの整数)」
4. 他の開頭、閉じ括弧、および説明を生成しないでください。
###評価する指示:
{orig_instruction}
###評価するレスポンス:
{orig_response}
###参照回答 (スコア5):
{orig_reference_answer}
###スコアルーブリック:
[{orig_criteria}]
スコア1: {orig_score1_description}
スコア2: {orig_score2_description}
スコア3: {orig_score3_description}
スコア4: {orig_score4_description}
スコア5: {orig_score5_description}
###フィードバック:
この後、Mistralの会話テンプレートを適用する必要があります(適用しないと予期しない動作につながる可能性があります)。会話クラスはこの[リンク](https://github.com/lm - sys/FastChat/blob/main/fastchat/conversation.py)で見つけることができます。
conv = get_conv_template("mistral")
conv.set_system_message("You are a fair judge assistant tasked with providing clear, objective feedback based on specific criteria, ensuring each assessment reflects the absolute standards set for performance.")
conv.append_message(conv.roles[0], dialogs['instruction'])
conv.append_message(conv.roles[1], None)
prompt = conv.get_prompt()
x = tokenizer(prompt,truncation=False)
結果として、フィードバックとスコアの決定が生成され、区切り語句 [RESULT]
で区切られます。
相対評価(ペアワイズランキング)
Prometheusは入力に4つの要素を必要とします。指示、評価する2つのレスポンス、スコアルーブリック、および参照回答です。以下のプロンプトフォーマットを参照してください。
###タスク説明:
指示(入力を含む場合もあります)、評価する2つのレスポンス(レスポンスAとレスポンスBと表記)、参照回答、および評価基準が与えられます。
1. 与えられた評価基準に基づいて、2つのレスポンスの品質を厳密に評価する詳細なフィードバックを書いてください。一般的な評価ではなく、具体的な基準に基づいてください。
2. レスポンスA、レスポンスB、および参照回答の間の比較を行ってください。レスポンスAとレスポンスBを個別に調べるのではなく、要点を直截に述べ、それらの共通点と相違点について言及してください。
3. フィードバックを書いた後、より良いレスポンスを「A」または「B」で示してください。
4. 出力形式は次のようになります。「フィードバック: (基準に対するフィードバックを書く) [RESULT] (「A」または「B」)」
5. 他の開頭、閉じ括弧、および説明を生成しないでください。
###指示:
{orig_instruction}
###レスポンスA:
{orig_response_A}
###レスポンスB:
{orig_response_B}
###参照回答:
{orig_reference_answer}
###スコアルーブリック:
{orig_criteria}
###フィードバック:
この後、Mistralの会話テンプレートを適用する必要があります(適用しないと予期しない動作につながる可能性があります)。会話クラスはこの[リンク](https://github.com/lm - sys/FastChat/blob/main/fastchat/conversation.py)で見つけることができます。
conv = get_conv_template("mistral")
conv.set_system_message("You are a fair judge assistant assigned to deliver insightful feedback that compares individual performances, highlighting how each stands relative to others within the same cohort.")
conv.append_message(conv.roles[0], dialogs['instruction'])
conv.append_message(conv.roles[1], None)
prompt = conv.get_prompt()
x = tokenizer(prompt,truncation=False)
結果として、フィードバックとスコアの決定が生成され、区切り語句 [RESULT]
で区切られます。
ライセンス
Feedback Collection、Preference Collection、およびPrometheus 2は、生成されたデータに関してOpenAIの利用規約の対象となります。違反が疑われる場合は、ご連絡ください。
引用
もしこのモデルが役に立った場合は、論文を引用していただけると幸いです。
@misc{kim2023prometheus,
title={Prometheus: Inducing Fine-grained Evaluation Capability in Language Models},
author={Seungone Kim and Jamin Shin and Yejin Cho and Joel Jang and Shayne Longpre and Hwaran Lee and Sangdoo Yun and Seongjin Shin and Sungdong Kim and James Thorne and Minjoon Seo},
year={2023},
eprint={2310.08491},
archivePrefix={arXiv},
primaryClass={cs.CL}
}
@misc{kim2024prometheus,
title={Prometheus 2: An Open Source Language Model Specialized in Evaluating Other Language Models},
author={Seungone Kim and Juyoung Suk and Shayne Longpre and Bill Yuchen Lin and Jamin Shin and Sean Welleck and Graham Neubig and Moontae Lee and Kyungjae Lee and Minjoon Seo},
year={2024},
eprint={2405.01535},
archivePrefix={arXiv},
primaryClass={cs.CL}
}