# ❌ No # collator.py class TRLCollator: ... # dpo_trainer.py class DPOTrainer: def __init__(self, ...): self.collator = TRLCollator(...) # kto_trainer.py class KTOTrainer: def __init__(self, ...): self.collator = TRLCollator(...) # ✅ Better # dpo_trainer.py class DataCollatorForPreference: ... class DPOTrainer: def __init__(self, ...): self.collator = DataCollatorForPreference(...) # kto_trainer.py class DataCollatorForUnpairedPreference: ... class KTOTrainer: def __init__(self, ...): self.collator = DataCollatorForUnpairedPreference(...)