Знаете, где ещё забыли не считать лосс по pad-токенам? В TRL!
https://github.com/huggingface/trl/blob/main/trl/trainer/orpo_trainer.py#L718
Вам может показаться, что есть же [:len_chosen], но это количество положительных примеров в батче, а не длина самих последовательностей 😡
По идее должен помогать -100 в labels... Но тут их просто копируют из input_ids строчкой выше!
И всё это внесли в результате другого исправления: https://github.com/huggingface/trl/commit/57aebe9c36021e679662181468b04ff42432daf3
Пойду писать PR...
UPD: https://github.com/huggingface/trl/pull/1625
https://github.com/huggingface/trl/blob/main/trl/trainer/orpo_trainer.py#L718
Вам может показаться, что есть же [:len_chosen], но это количество положительных примеров в батче, а не длина самих последовательностей 😡
По идее должен помогать -100 в labels... Но тут их просто копируют из input_ids строчкой выше!
И всё это внесли в результате другого исправления: https://github.com/huggingface/trl/commit/57aebe9c36021e679662181468b04ff42432daf3
Пойду писать PR...
UPD: https://github.com/huggingface/trl/pull/1625