Модель предназначена для определения позиции ударения в русских словах. Из-за особенностей русского языка обычно в проектах, связанных с устной речью (ASR, TTS) используется комбинация из словаря ударения и такой модели для oov-слов. Словарь для слов, ударение в которых известно априори, также находится в репозитории https://huggingface.co/inkoziev/accentuator.
В текущей версии модель умеет предсказывать только позицию основного ударения.
Все необходимые файлы находятся в репозитории https://huggingface.co/inkoziev/accentuator и загружаются оттуда автоматически.
import stress_model
def render(word):
px = accentuator.predict2(word)
print(' | '.join(accentuator.render_stress(word, pos) for pos in px))
if __name__ == '__main__':
accentuator = stress_model.AccentuatorWrapperWithDictionary()
render('моя')
render('насыпать')
render('кошка')
render('ничегошеньки')
Метод predict2
выдает список порядковых номеров гласных, на которые падает основное ударение. В случае слов, допускающих
более одного варианта ударения, выводится список длиной 2, или в некоторых редких случаях 3 значения.