есть чтобы генерация останавливалась после точки. Смотрю исходники transformers и не понимаю, как это сделать, не переопределяя класс модели. Кто нить что нить делал похожее?
Просто поставить eos_token_id в точку чем-то не устраивает?
Ну там могут быть всякие и т.д. , вопросительные знаки и прочие корнер-кейсы
Тогда поставить eos_token_id в точку и сделать пост-отработку: сплит по нужным знакам.
Не совсем понял, что значит сплит по нужным знакам
Ну условно если получилось "...! ...?....", то просто нарезаем на части
Ну это означает что лишнее уже сгенерено. Тратим инференс-время впустую
Да, но другого легкого выхода как будто бы нет. Есть ещё в аргументах нечто под названием stopping_criteria, но я с этим дела ни разу не имел
да, покопал в ту сторону, его можно сделать кастомнымб но только переопределив метод сэмплинга в собственном классе
Обсуждают сегодня