Mulai sekarangMulai 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 merupakan bagian dari kursus

Reinforcement Learning from Human Feedback (RLHF)

Lihat Kursus

Instruksi 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 langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

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