Фонемизация Тайский язык Синтез речи
arXiv cs.CL

FastThaiG2P: Lightning-fast Thai Grapheme-to-phoneme Conversion for Voice Agent Pipelines

arXiv:2608.12814

FastThaiG2P - в первую очередь инженерная работа о том, как сделать преобразование тайского написания в фонемы предсказуемым и почти бесплатным по задержке. Вместо нейросети в рабочем контуре авторы соединяют словарь, нормализацию текста и правиловый резервный путь, а затем показывают весь тракт на небольшой системе синтеза речи для процессора.

Метод. Конвейер сначала раскрывает числа, единицы, сокращения, адреса электронной почты и другие непроизносимые формы, затем PyThaiNLP делит текст на слова по тому же словарю, который используется для фонемного поиска. Из 62 112 слов около 13 тысяч взяты из Wiktionary, примерно 49 тысяч транскрибированы Claude Opus 4.6 и проверены по допустимому фонемному набору, а ошибки перекрываются ручными правилами. Для неизвестных слов используется разбор TLTK; сотни регулярных выражений компилируются заранее и хранятся без ограничения стандартного кэша Python.

Результаты. На 27 242 синтетических репликах среднее время составляет 0,15 мс против примерно 2 мс до оптимизации, то есть ускорение достигает 15 раз. В проверке 500 слов автоматически созданная часть словаря даёт 78,8% точных совпадений и 1,8% грубых фонологических ошибок. Обученный на 20 часах Som-TTS вариант Kokoro-82M синтезирует 24-кГц звук на одном потоке процессора с RTF 0,25 и занимает около 330 МБ.

Ограничения. Полного независимого набора для оценки ошибок фонем или слов нет: 500 примеров использовались при настройке самого запроса к языковой модели. Проверка скорости синтетическая и не охватывает длинный шумный ввод из реальных диалогов. Словарь ориентирован на центральный тайский и хуже покрывает диалекты, новые заимствования, сленг и смешанный тайско-английский текст. Качество синтеза описано как разборчивое, но MOS с носителями языка и сравнения с промышленными системами нет.

Фишка из статьи. Неизвестные слова составляют только 0,5% токенов, но потребляют 58% времени фонемизации. Причина не в сложной модели, а в повторной компиляции большого числа регулярных выражений внутри триграммного разбора слогов.

Часть конвейераДоля времениЧто происходит
Разбиение на слова30%PyThaiNLP и общий словарь
Нормализация12%числа, единицы, сокращения и символы
Резервный разбор OOV58%только 0,5% токенов

Как это читать: редкая ветвь определяет среднюю задержку. Предварительная компиляция шаблонов уменьшила полное время примерно с 2 до 0,15 мс без замены алгоритма и без нейросетевого вывода - полезный пример того, как профилирование важнее усложнения модели.

Оригинальная статья на arXiv