เตรียมชุดข้อมูลความพึงพอใจ (preference dataset)
ในแบบฝึกหัดนี้ จะได้ทำงานกับชุดข้อมูลที่มีฟีดแบ็กจากมนุษย์ในรูปแบบผลลัพธ์ที่ "เลือก" (chosen) และ "ปฏิเสธ" (rejected) หน้าที่ของคุณคือดึงพรอมต์จากคอลัมน์ "chosen" แล้วเตรียมข้อมูลสำหรับการฝึกโมเดลรางวัล (reward model)
ฟังก์ชัน load_dataset จาก datasets ได้ถูกนำเข้ามาให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Reinforcement Learning from Human Feedback (RLHF)
คำแนะนำการฝึกหัด
- โหลดชุดข้อมูล
qgallouedec/hh-rlhf-helpful-base-trl-styleจาก Hugging Face - เขียนฟังก์ชันที่ดึงพรอมต์จากฟิลด์
'content'โดยสมมติว่าพรอมต์อยู่ที่ตำแหน่ง index0ของอินพุตที่ส่งเข้าฟังก์ชัน - นำฟังก์ชันที่ดึงพรอมต์ไปใช้กับชุดข้อมูลย่อย
'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'])