Локальный переводчик и синтез голоса на Кабардинском языке

Привет, Хабр! Меня зовут Эдуард, и сегодня я хочу рассказать о небольшом проекте Kabardian Translator — локальном переводчике с озвучкой для кабардинского языка. Эта история началась с сотрудничества с командой Silero TTS и превратилась в инструмент, который, надеюсь, поможет соотечественникам за границей учить родной язык.

Начало: запись голоса для Silero TTS

Всё началось с того, что я записал свой голос для проекта Silero TTS — системы синтеза речи, которая поддерживает множество языков стран СНГ. Работая над кабардинским голосом, я понял: как здорово было бы создать инструмент, где можно не только переводить слова на кабардинский, но и сразу слышать их правильное произношение. Особенно для тех, кто живёт далеко от родины и хочет учить его, чтобы сохранить связь с родным языком.

Идея была проста: локальный переводчик + синтез речи моим голосом = персональный языковой помощник.

Что уже есть на рынке? Небольшое исследование

Прежде чем писать код, я решил посмотреть, что уже сделано для кабардинского языка. И был приятно удивлён!

1. Работа Адама Паногова

Мой земляк Адам Паногов обучил отличную модель, которая умеет переводить с 200 языков на кабардинский в обе стороны, ниже информация о его проектах:

2. Работа Анзора Кунашева

Другой мой земляк, Анзор Кунашев, пошёл другим путём — обучил две модели на каждое направление, ниже информация о его проектах:

У самого Анзора есть более мощный переводчик на сайте zedzek.com, но он работает только на серьезных картах и не пригоден для локального развертывания, так как обучен на более чем 3 миллиардах параметров.

Почему я выбрал две модели, а не одну универсальную?

Хотя модель Адама впечатляет своей поддержкой 200 языков, для локального запуска я выбрал модели Анзора по нескольким причинам:

  1. Лёгкость для локального запуска — модель на 100 языков более оптимизирована для ограниченных ресурсов памяти

  2. Специализация — отдельные модели для каждого направления дают лучший контроль качества

  3. Производительность — при тестах на моём Mac Mini M4 разница в качестве была минимальной, а скорость выше

Собираем пазл: что получилось в итоге

Мой проект объединил несколько компонентов:

Перевод:

Синтез речи:

Неожиданное открытие: транслитерация + Silero = мультиязычность

Самое интересное случилось, когда я начал экспериментировать. Модель Silero TTS для стран СНГ (подробнее в этой статье на Хабре) была обучена на 20 языках одновременно: славянских, тюркских, кавказских. Это дало ей уникальное фонетическое разнообразие!

Через транслитерацию я смог расширить поддержку озвучки:

Кабардинский голос (мой) озвучивает:

Было странно видеть слова армянского и грузинского алфавита во всплывающих окнах, перведенные на кабардинский диграфы и триграфы, но это позволило увидить насколько кавказские языки близки фонетически.

Русский голос (мой) озвучивает:

Качество озвучки:

⚙️ Технические детали и оптимизации

Проект написан на Python с использованием:

Оптимизации для Apple Silicon:

# Используем MPS, если доступно
device = "mps" if torch.backends.mps.is_available() else "cpu"

Производительность на Mac Mini M4 16гб:

Как попробовать?

Проект опубликован на PyPI и GitHub:

# Установка через pip
pip install kabardian-translator

# Загрузка моделей (~15 GB)
kabardian-download-models

# Запуск
kabardian-translator

Открываем браузер: http://localhost:5500

GitHub: https://github.com/kubataba/kabardian-translator

Что дальше? Планы на будущее

  1. Silero Stress — автоматическая расстановка ударений для славянских и кавказских языков

  2. Веб-версия — чтобы дать попробовать модель тем, кто не может развернуть сам

  3. Расширение поддержки северокавказских языков, очень хочется попробовать сделать танслитерацию чеченского, осетинского, даргинского, аварского и лезгинского

  4. Telegram-бот и мобильное приложение

  5. API для синтеза аудиокниг на кабардинском языке

🙏 Благодарности

Хочу выразить огромную благодарность:

Заключение

Этот проект — не просто технический эксперимент. Это попытка создать инструмент, который поможет сохранить и передать родной язык следующим поколениям, где бы они ни находились. Я писал для своих знакомых, которая выросли не на Родине и жаловались, что не могут выучить язык, потому что не могут понять произношение по написанию.

Если вы кабардинец, живущий за границей, или просто интересуетесь кавказскими языками — попробуйте Kabardian Translator. Буду рад услышать ваши отзывы, предложения и замечания!

P.S. Хотел обратиться к носителя чеченского, ингушского, даргинского, лезгинского, аварского, осетинского помогите создать синтез речи на ваших языках. Нужны люди носители языка, которые могут записать два часа аудио на родном языке и 1 час на русском. Также будет очень полезна помощь со сбором корпусов для озвучивания на родном языке и помощь в составлении словарей ударений. Если вы готовы помочь и выделить на это время, пишите компании Silero, они делают эту работу по гранту и с удовольствием поработают с вами. Также хотел предложить энтузиастам кабардинского языка присоединиться к проекту записи кабардинского языка Common Voice на адыгских языках, вступив в группу работающую над записью языка.


Статья написана с любовью к родному языку и уважением ко всем, кто работает над его сохранением.

@Kubataba
02.12.2025 13:53 UTC
Первоисточник

Комментарии

@newintellimouse
02.12.2025 08:59 UTC
+2

А лакский не думаете добавлять? Я бы скинул знакомому.

@Viktor-T
02.12.2025 09:05 UTC
+1

И черкесский

02.12.2025 09:17 UTC
+3

Модель кабардино-черкесская - она прекрасно синтезирует на обоих родственных языках

02.12.2025 09:19 UTC
+2

Да, точно, спасибо )

@Kubataba
02.12.2025 09:09 UTC
+2

Я думаю у Silero в планах все языки больше 100 тысяч носителей, но в первую очередь задача покрыть языки больше 500 тысяч. Главное процесс пошел и в из релизе уже грузинский, армянский, азербайджанский и кабардинский. Очень помогут те кто уже работает в IT и собирает корпуса для обучения перводчиков на своих языках.

02.12.2025 09:12 UTC
+1

грустно думаю про свой вепсский язык на 3500 носителей, что туда не скоро дойдёт очередь :)

02.12.2025 09:20 UTC
+2

ну думаю если среди этих 3500 тысяч будет один, кто выучит python и устроиться кодировщиком на работу в Silero у него будет шанс :)

@snakers4
02.12.2025 09:29 UTC
+3

Большое спасибо за помощь с записями аудио и продвижением нашей модельки. Очень приятно, когда есть такие большие энтузиасты, кто любит свой язык и готов что-то активно делать для его развития и сохранения! Надеюсь у нас получится добавить основные недостающие языки кавказских республик.

Что касается транслитерации, я послушал на языках, которые я изучал в универе, понятно дело там можно работать над правилами, но там конечно они звучат как первокурсник на первом месяце занятий. С другой стороны, вы выбрали языки с простой фонетикой, и немецкий наверное можно даже докрутить. Тут вопрос целеполагания.

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

Приятно, что синтез на вашем родном языке хорошо работает, и даже на другие языки переносится!

@Kubataba
02.12.2025 09:37 UTC
+2

Ну я в статье честно написал что транслитерация на немецкий и испанский - это больше игрушка, чтобы посмотреть, что может модель, там попадание 70-80 процентов. А вот то что кабардинская модель сходу принимает и читает без акцента тексты на казахском и татарском языках это конечно заслуга разработчиков, которые дали всем голосам доступ ко всем алфавитам на кирилице. И транслитерация на грузинском и турецком звучит тоже вполне хорошо.

@AndreiYemelianov
12.12.2025 09:53 UTC
0

Тхьэмуигъэпсэу! Уи проект лъэщщ!

@Kubataba
12.12.2025 10:25 UTC
0

Тхьэарзыкъыпхуэхъу! Уи махуэ фӀыуэ.