Russian phonemizer
Project description
RUPhon
RUPhon - это библиотека для фонемизации русского текста, использующая передовые модели RUAccent-encoder.
Особенности
RUPhon - библиотека, позволяющая фонемизировать текст с учетом ударений. Модель поддерживает два языка - английский и русский.
Фонемсет следующий:
k|l|s:|ʒ|t~ɕ|j|'ɐ|iː|fʲ:|ɹ|'ʉ|v|'ɵ|ə+r|d͡ʒ|ʊ|ɫ|ɪ|oː|jɵ|ɔː|ɚ|j:|dʲ:|ʔ|sʲ|ɛː|u|nʲ:|ʃ|d~zʲ|'je|t~s|ɑː|mʲ|ɵ|ɡʲ|jə|d:|jʊ|ɛ|k:|vʲ:|x|nʲ|n|jɪ|zʲ|ɐ|æː|n:|pʲ:|v:|r|l̩|t~ɕ:|'ju|xʲ|'jæ|'ɪ|ɕ|b|aː|o|kʲ:|'ə|ɕ:|dʲ|rʲ|d~ʐ|'ji|tʲ:|w|bʲ|p:|r:|ɝ|eː|ə|t|'ja|'ʊ|b:|mʲ:|'jʉ|'u|z|ju|t~sʲ|ɣ|z:|jæ|ð|je|ʐ|ʂ:|ɜː|ʐ:|ʑ:|lʲ|ɡ:|ɨ|ji|pʲ|ɒ|ɪː|zʲ:|ɔ|θ|ɫ:|fʲ|p|vʲ|i|t~ʂ|'i|'a|ŋ|ɜ|ʊ̯|ɪ̯|n̩|kʲ|'o|uː|f|jʉ|'ɛ|s+_|ɡ|'æ|ʉ|m|s|a|'e|æ|tʲ|h|ɪ+rʲ|m:|ɑ|e|'jɵ|d|sʲ:|ʌ|d~z|lʲ:|t~s+_|m̩|ʂ|ja|t~s:|ɝː|'ɨ|ʍ|t:|t͡ʃ|'jɪ|rʲ:
Установка
pip install ruphon
или
pip install git+https://github.com/Den4ikAI/ruphon.git
Основные функции
Phonemizer.load(model_type, workdir, device)
Загружает модель фонемизатора.
model_type
: "small" или "big". small - 14 миллионов параметров, big - 28 миллионовworkdir
: директория для сохранения моделей (по умолчанию - директория библиотеки)device
: "CPU" или "CUDA" (для использования GPU) (Требуется установить onnxruntime-gpu)
phonemizer.phonemize(text, put_stress, stress_symbol)
Фонемизирует входной текст.
text
: входной текст для фонемизацииput_stress
: добавлять ли ударения (по умолчанию True)stress_symbol
: символ для обозначения ударения (по умолчанию "'")
Использование
from ruphon import RUPhon
phonemizer = RUPhon()
phonemizer = phonemizer.load("small", workdir="./models", device="CPU")
input_text = "+я программ+ирую н+а python."
result = phonemizer.phonemize(input_text, put_stress=True, stress_symbol="'")
print(f"Input: {input_text}")
print(f"Phonemized: {result}")
Использование с автоматической расстановкой ударений
from ruphon import RUPhon
from ruaccent import RUAccent
phonemizer = RUPhon()
phonemizer = phonemizer.load("small", workdir="./models", device="CPU")
accentizer = RUAccent()
accentizer.load(omograph_model_size='turbo3', use_dictionary=True, tiny_mode=False)
input_text = "я программирую на python."
accented_text = accentizer.process_all(input_text)
print(f"Input: {input_text}")
print(f"Accented: {accented_text}")
result = phonemizer.phonemize(accented_text, put_stress=True, stress_symbol="'")
print(f"Phonemized: {result}")
Донат
Вы можете поддержать проект деньгами. Это поможет быстрее разрабатывать более качественные новые версии. CloudTips: https://pay.cloudtips.ru/p/b9d86686
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
ruphon-1.1.tar.gz
(14.1 kB
view details)
Built Distribution
ruphon-1.1-py2.py3-none-any.whl
(18.7 kB
view details)
File details
Details for the file ruphon-1.1.tar.gz
.
File metadata
- Download URL: ruphon-1.1.tar.gz
- Upload date:
- Size: 14.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.31.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0b783c40b508c81f3f2b751aa16b8e99f433ec2e6ce3bacfd1f8831bc5f3f2f1 |
|
MD5 | bb8639780ba91bc73c69014e34a75724 |
|
BLAKE2b-256 | 0f03440e7af8724214cfc4a9b97ea7e75755b9144abdd9e22296e5cc642fdb90 |
File details
Details for the file ruphon-1.1-py2.py3-none-any.whl
.
File metadata
- Download URL: ruphon-1.1-py2.py3-none-any.whl
- Upload date:
- Size: 18.7 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.31.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 58c301ef152bbe2a5d291ffd551b1164eb366c91925b6b3f77c742bd5697277a |
|
MD5 | b6c90d1b000cdf02728df355a3d8e51e |
|
BLAKE2b-256 | b1907e429faf3788587bdfc6989fbf43098fb2585682e10acf99aec1e28aa899 |