MulaiMulai sekarang secara gratis

Penyetelan halus dengan PPO

Setelah menginisialisasi trainer, sekarang Anda perlu menyiapkan loop untuk menyetel halus model.

Reward trainer ppo_trainer telah diinisialisasi menggunakan kelas PPOTrainer dari pustaka Python trl.

Latihan ini adalah bagian dari kursus

Reinforcement Learning from Human Feedback (RLHF)

Lihat Kursus

Petunjuk latihan

  • Hasilkan tensor respons menggunakan input ids, dan trainer di dalam loop PPO.
  • Lengkapi langkah di dalam loop PPO yang menggunakan kueri, respons, dan data reward untuk mengoptimalkan model PPO.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

for batch in tqdm(ppo_trainer.dataloader): 

    # Generate responses for the given queries using the trainer
    response_tensors = ____(batch["input_ids"])

    batch["response"] = [tokenizer.decode(r.squeeze()) for r in response_tensors]

    texts = [q + r for q, r in zip(batch["query"], batch["response"])]

    rewards = reward_model(texts)

    # Training PPO step with the query, responses ids, and rewards
    stats = ____(batch["input_ids"], response_tensors, rewards)

    ppo_trainer.log_stats(stats, batch, rewards)
Edit dan Jalankan Kode