選好データセットの準備
この演習では、"chosen" と "rejected" の出力という形で人手によるフィードバックを含むデータセットを扱います。あなたのタスクは、"chosen" 列からプロンプトを抽出し、報酬モデルの学習用にデータを準備することです。
datasets の load_dataset 関数はあらかじめインポートされています。
この演習はコースの一部です
人間のフィードバックによる強化学習(RLHF)
演習の手順
- Hugging Face から
trl-internal-testing/hh-rlhf-helpful-base-trl-styleデータセットを読み込みます。 - 関数の入力の 0 番目のインデックスにプロンプトがあると仮定して、
'content'フィールドからプロンプトを抽出する関数を書きます。 - プロンプトを抽出する関数を、
'chosen'データセットサブセットに適用します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Load the dataset
preference_data = ____
# Define a function to extract the prompt
def extract_prompt(text):
____
return prompt
# Apply the function to the dataset
preference_data_with_prompt = ____(
lambda sample: {**sample, 'prompt': ____(sample['chosen'])}
)
sample = preference_data_with_prompt.select(range(1))
print(sample['prompt'])