Русский

Kokoro всплывает снова и снова — он вышел в топ Hacker News, возглавляет открытые рейтинги «Текст в речь», и создатели всё чаще спрашивают, может ли модель на 82 миллиона параметров, работающая на обычном CPU, действительно заменить платный voice API. Поэтому мы установили её, запустили на ноутбуке и сгенерировали примеры, которые вы можете послушать ниже. Это разбор с практикой: что такое Kokoro, насколько он реально хорошо звучит, две ловушки настройки, которые отняли у нас время, и когда лучше выбрать хостинговый инструмент. Источник: github.com/hexgrad/kokoro (Apache-2.0).

Что такое Kokoro и кто его сделал?

Kokoro — это модель «Текст в речь» с открытыми весами, опубликованная hexgrad под именем Kokoro-82M. Главное — прямо в названии: 82 миллиона параметров — крошечный размер по меркам 2026 года, достаточно маленький, чтобы работать на телефоне, — и при этом она выдаёт естественную, выразительную дикторскую речь. Модель построена на ветке StyleTTS 2 и выпущена под либеральной лицензией Apache-2.0, так что она действительно бесплатна и для коммерческого использования.

По состоянию на 2026-07-11 основной репозиторий hexgrad/kokoro имеет примерно 7 900 звёзд на GitHub. Мы запускали модель через ONNX-рантайм от сообщества thewh1teagle/kokoro-onnx (около 2 600 звёзд, MIT) — это самый простой способ запустить её на CPU без установки PyTorch.

Покопавшись в самом файле весов, мы насчитали 54 встроенных голоса в 9 языковых и акцентных группах — американский и британский английский, испанский, французский, хинди, итальянский, японский, бразильский португальский и китайский (мандарин). Американские английские голоса явно самые отполированные.

Мы реально запустили это (Apple M3 Pro, только CPU)

Никакого GPU, никакого облака — только MacBook Pro с M3 Pro и 18 GB RAM. Вот честный разбор по шагам.

Установка и веса

Python-пакет ставится за секунды: pip install kokoro-onnx soundfile. Но вот первая ловушка: pip-пакет содержит код, а не модель. Нужно вручную скачать два файла со страницы релизов kokoro-onnx на GitHub: kokoro-v1.0.onnx (310 MB) и voices-v1.0.bin (27 MB). В quickstart это почти не проговаривается, поэтому первый запуск падает с ошибкой отсутствующих файлов, пока вы не скачаете веса.

Баг с путём espeak-ng (тот, что реально съел время)

Kokoro превращает текст в фонемы с помощью espeak-ng. На самой первой генерации мы увидели такое:

Error processing file '/Users/runner/work/espeakng-loader/.../espeak-ng-data/phontab': No such file or directory

Путь /Users/runner/work/ — явная подсказка: wheel espeakng-loader из pip содержит libespeak-ng, собранную в CI с жёстко прошитым путём к данным, которого на вашей машине не существует. Самое раздражающее: установка переменной окружения ESPEAK_DATA_PATH ничего не даёт, потому что kokoro-onnx её вообще не читает — путь к данным берётся напрямую из встроенного loader.

Исправление, которое сработало: установите системный espeak-ng и явно укажите Kokoro пути через EspeakConfig:

brew install espeak-ng   # macOS; apt install espeak-ng on Linux

from kokoro_onnx import Kokoro, EspeakConfig
cfg = EspeakConfig(
    lib_path="/opt/homebrew/lib/libespeak-ng.dylib",
    data_path="/opt/homebrew/share/espeak-ng-data",
)
k = Kokoro("kokoro-v1.0.onnx", "voices-v1.0.bin", espeak_config=cfg)

После этого генерация просто работает. Если вы когда-либо боролись именно с ошибкой phontab: No such file — это и есть решение.

Скорость (измерено на прогретой системе)

Только на CPU модель загружается примерно за 1.7 секунды, а синтез уверенно быстрее реального времени. Абзац озвучки длительностью 22 секунды отрендерился за 3.5 секунды — real-time factor около 0.16×, то есть примерно в 6 раз быстрее воспроизведения. Короткие одиночные предложения возвращаются за 1–2 секунды. Для настолько маленькой модели на ноутбуке это действительно рабочая, продакшен-годная производительность. Вот реальная форма волны для этого абзаца:

Форма волны 22-секундного абзаца озвучки, который мы сгенерировали с помощью Kokoro на CPU M3 Pro

Примеры, которые мы сгенерировали (без правок)

Каждый клип ниже мы сделали сами с помощью Kokoro на CPU M3 Pro, описанном выше — сырой выход модели, без чистки и без постобработки. Включайте и оценивайте качество сами.

af_sarah — American English
am_michael — American English
bf_emma — British English
Более длинная озвучка (af_sarah, 22 секунды) — тот самый абзац, который мы бенчмаркили выше

Сгенерировано VisionStory с Kokoro-82M через kokoro-onnx, 2026-07-11. Обратите внимание на очевидный признак: это чистая голосовая дорожка — но это только голос. Нет лица, нет движения губ, нет ведущего в кадре. Этот разрыв — и есть главная мысль следующего раздела.

Честный вердикт: сильные стороны и реальные ограничения

Что нас действительно впечатлило:

  • Качество на байт — впечатляющее. Для 82 миллионов параметров американские английские голоса звучат естественно и выразительно — достаточно близко к платному TTS, чтобы большинство слушателей не заметили подвоха в коротком клипе.
  • Она правда быстро работает на CPU. 6× реального времени на ноутбуке без GPU — главная фишка, и она подтверждается.
  • По-настоящему бесплатно и дружелюбно к коммерции. Apache-2.0 без оплаты «за символ». Для озвучки в большом объёме такая экономика — редкость.

Где всё ломается — и это важно:

  • Нет клонирования голоса. Есть 54 фиксированных пресета. Вы не можете клонировать свой голос или голос клиента — если это ваш сценарий, Kokoro вам не подходит.
  • Качество английского зависит от espeak-ng — отсюда и баг с упаковкой выше, и периодически неверно произнесённые имена, бренды или аббревиатуры.
  • Длинный текст нужно вручную резать на куски. Есть лимит по длине фонем на один вызов, поэтому длинные сценарии придётся делить и потом сшивать аудио.
  • Голоса не на английском — как повезёт — заметно более нестабильно, чем флагманский набор American English.
  • На выходе — голый WAV. Нет таймкодов по словам, нет визем — ничего, что из коробки помогло бы делать липсинк.
  • Это только голос. Нет лица, нет видео. Чтобы получить говорящего ведущего, нужно связать Kokoro с отдельной системой липсинка или аватаров и самостоятельно выстроить тайминг.

Самостоятельный хостинг Kokoro vs хостинговый инструмент: что выбрать?

Kokoro и хостинговый инструмент с аватаром решают разные половины задачи. Kokoro даёт вам голос; инструмент вроде VisionStory даёт говорящего ведущего — голос, лицо и липсинк в одном результате. Вот честные компромиссы.

 Kokoro (self-host)VisionStory (hosted)
СтоимостьБесплатно (ваше железо)Подписка / Кредиты
Настройкаpip + веса 330 MB + исправление espeak-ngНе нужна — работает в браузере
Что вы получаетеТолько голосовая дорожка (WAV)Видео с говорящим аватаром (голос + лицо + липсинк)
Клонирование голосаНет — 54 пресетаДа — клонируйте свой голос
Скорость на клип~0.16× реального времени на CPU (секунды)Секунды, в облаке — без локальных вычислений
Коммерческое использованиеДа (Apache-2.0)Да (в зависимости от плана)
ПоддержкаВы сами правите espeak, зависимости, разбиение текстаНе требуется
Лучше всего, когдаНужна только бесплатная голосовая дорожка и вы умеете кодитьНужно готовое говорящее видео — быстро

Выбирайте Kokoro, если вам нужна просто бесплатная озвучка, вы уверенно чувствуете себя в Python и отдельно разберётесь с лицом и липсинком (или лицо вообще не нужно). Выбирайте хостинговый инструмент, если вам нужен голос, привязанный к ведущему с липсинком, или нужно клонировать голос конкретного человека — Kokoro не умеет ни то, ни другое.

Чему нас научил Kokoro

Главный урок от запуска Kokoro — голос становится товаром. Модель размером 82 MB на ноутбуке уже выдаёт озвучку, достаточную для реальной работы, бесплатно. Если единственное обещание вашего продукта было «мы делаем Текст в речь», этот ров уже исчез.

Сложная, всё ещё не решённая часть — всё, что после голоса: превратить аудиодорожку в убедительное говорящее лицо — точный липсинк, мимика, движения головы и цельный тайминг. Именно над этим уровнем мы и работаем. Поэтому наш вывод не «не используйте Kokoro» — это действительно хороший голосовой движок. Просто один голос — это половина видео. Если вам нужна вторая половина, VisionStory превращает фото и сценарий в липсинкнутого говорящего ведущего за один шаг, а если нужно попасть в конкретный голос, он умеет и клонировать его.

Часто задаваемые вопросы

  • Можно ли бесплатно использовать Kokoro TTS в коммерческих целях?

    Да. Kokoro распространяется по лицензии Apache-2.0, которая разрешает коммерческое использование, и здесь нет оплаты «за символ». Вы платите только за свои вычислительные ресурсы — это может быть и обычный CPU.

  • Можно ли запустить Kokoro на Mac или без GPU?

  • Может ли Kokoro клонировать мой голос?

  • Может ли Kokoro сделать видео с говорящим аватаром?

  • Как исправить ошибку Kokoro «espeak-ng phontab No such file»?