PPO ile ince ayar
Eğiticiyi başlattıktan sonra, şimdi modeli ince ayar yapmak için döngüyü başlatman gerekiyor.
Ödül eğiticisi ppo_trainer, trl Python kütüphanesindeki PPOTrainer sınıfı kullanılarak başlatıldı.
Bu egzersiz
İnsan Geri Bildiriminden Pekiştirmeli Öğrenme (RLHF)
kursunun bir parçasıdırEgzersiz talimatları
- PPO döngüsü içinde, girdi kimliklerini (input ids) ve eğiticiyi kullanarak yanıt tensörleri üret.
- Sorgular, yanıt ve ödül verilerini kullanarak PPO modelini optimize eden PPO döngüsündeki adımı tamamla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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)