Ворклог по задаче "Разработать систему изучения вьетнамского языка для взрослой аудитории"
Первичное исследование озвучки вьетнамского
Проверен вариант использования browser speechSynthesis для озвучки курса. По результатам исследования использовать его как базовый механизм нельзя.
Что обнаружено
- Вьетнамский голос не удаётся надёжно установить в браузер.
- Доступный через Reading Mode путь крайне неудобен для обычного пользователя: открыть режим чтения → перейти в настройки → открыть языки → добавить вьетнамский.
- После включения вьетнамского появляется
Downloading voices ..., но загрузка может зависать бесконечно и фактически не завершаться. - Официальная документация не даёт понятной гарантии наличия и поддержки конкретного вьетнамского голоса.
- В Chromium язык может быть заявлен в исходниках, но сам Chromium не поставляет конечные голосовые словари. Это зона ответственности конкретного браузерного/облачного поставщика, в нашем случае Google, и прозрачной гарантии наличия такого словаря нет.
- Даже если установка сработает у разработчика, нельзя строить курс на требовании к пользователю самостоятельно ставить дополнительные голоса/словари.
Дополнительный риск
Разработчик не является носителем вьетнамского языка и не может самостоятельно гарантировать, что синтез корректно передаёт качество звуков и тонов. Поэтому финальное качество необходимо проверять с носителем языка.
Принятое решение
Перейти на собственный контролируемый пайплайн озвучки через OpenRouter + Google Gemini.
Озвучку не генерировать при каждом воспроизведении. Нужно завести постоянный словарь аудио: однажды сгенерировать букву/слог/слово/фразу, сохранить метаданные в БД и сам аудиофайл в файловом хранилище, после чего многократно переиспользовать готовую запись.
Также предусмотреть:
- перегенерацию конкретной озвучки;
- хранение версии модели и параметров генерации;
- статусы проверки качества;
- последующую проверку носителем языка;
- при необходимости отдельные северные/южные варианты;
- возможность вручную заменить синтетическую запись эталонной записью носителя.
Связанная задача
Создана дочерняя задача на проектирование и реализацию собственного TTS-пайплайна и словаря озвучек: «Разработать собственный пайплайн озвучки вьетнамского языка и словарь аудио», taskId cmu8uqhzc0we6qw0qlviqsm7q.
Первый целевой набор для генерации — букварь: базовые звуки, сочетания, тоны, дифтонги/трифтонги и примеры слов. После проверки качества тем же механизмом расширять озвучку на основной словарь курса.
Спроектировать методологию и интерфейс обучения вьетнамскому: первичный букварь, обучение через знакомые смыслы, постоянные возвраты к фонетике и выход в экспромт.