audio.cpp: VibeVoice 1.5B в 4 раза быстрее реального времени на C++/ggml | AiManual
AiManual Logo Ai / Manual.
01 Июл 2026 Инструмент

audio.cpp: запускаем VibeVoice 1.5B на C++/ggml в 4 раза быстрее реального времени

Порт VibeVoice 1.5B на C++/ggml даёт 4.08x real-time на RTX 5090 и 2.86x ускорение против Python. Обзор возможностей, бенчмарки и примеры использования.

Реклама
cliv1

4.08x real-time — не маркетинг, а цифры на RTX 5090

Когда энтузиасты портировали VibeVoice на C++/ggml, они не просто переписали код. Они сняли с TTS цепи Python Runtime. Результат: генерация 10 секунд речи за 2.45 секунды на RTX 5090. Это в 4.08 раза быстрее, чем звучит оригинал. И в 2.86 раза быстрее, чем та же модель под PyTorch. Цифры из официального бенчмарка audio.cpp от 30 июня 2026.

КонфигурацияСкорость (RTF)Задержка (10 сек аудио)
Python + PyTorch (RTX 5090)1.43x RT~7.0 сек
audio.cpp (C++/ggml, RTX 5090)4.08x RT~2.45 сек
audio.cpp (CPU, 32 ядра)1.2x RT~8.3 сек

Это не просто цифры. Это значит, что VibeVoice перестаёт быть моделью для мощных серверов и становится инструментом для локального TTS на обычном GPU. Вспомните, как мы разбирали vibevoice.cpp — тогда речь шла о speech-to-speech. Теперь отдельно вынесли чистый TTS-инференс для модели 1.5B. И это меняет правила игры.

Что внутри: C++ vs Python — почему разрыв в 2.86x

Разница не магическая. Python-версия тянет весь PyTorch, CUDA графы и лишние аллокации. audio.cpp компилирует вычислительный граф заранее, использует кастомные ggml-операции и поддерживает квантование до 4-bit. На RTX 5090 это даёт не только скорость, но и экономию VRAM: модель 1.5B в FP16 жрёт ~3.1 ГБ, а в Q4 — всего 0.9 ГБ. Можно запустить даже на картах с 4 ГБ.

Квантование не сильно бьёт по качеству. Субъективные тесты (MOS) показывают падение с 4.35 до 4.22 — разница на грани восприятия. Для большинства сценариев Q4 — золотая середина.

Сравните с Qwen3-TTS.cpp, где ускорение достигалось за счёт ARM NEON и Metal. Там тоже ggml, но архитектура модели другая. VibeVoice 1.5B — это diffusion-based TTS (аналогично Voicebox), что даёт более натуральную интонацию, но требует больше вычислений. audio.cpp оптимизирует как раз этот диффузионный цикл, распараллеливая шаги.

Как это работает и примеры из жизни

audio.cpp — это не отдельный демон, а консольная утилита (и библиотека). Кидаете текстовый файл или строку, на выходе получаете WAV. Поддерживаются пайплайны из одного вызова. Никаких Python скриптов, никаких `pip install` для инференса. Всё статически скомпилировано в один бинарник размером 12 MB.

Представьте: вы пишете голосового NPC для Unity. Раньше нужно было гнать аудио через HTTP к серверу с PyTorch. Задержка в 500 мс + сеть. Теперь с Unity можно интегрировать audio.cpp через нативный плагин, и генерация 2-секундной фразы занимает 0.5 секунды. Это делает диалоги в реальном времени.

Другой сценарий — аудиокниги. Нужно начитать 10 часов текста. VibeVoice в audio.cpp на RTX 5090 управится за 2.5 часа. Python-версия — за 7 часов. Разница в стоимости электроэнергии и времени.

Сравнение с альтернативами

ИнструментСреда выполненияСкорость (RTX 5090)Вес модели
VibeVoice Python (1.5B)PyTorch + CUDA1.43x RT~3.1 GB (FP16)
audio.cpp (1.5B, Q4)C++/ggml4.08x RT~0.9 GB
Chatterbox TurboVLLM + Triton37.6x RT (голосовой кодек)~2 GB (кодек)
Qwen3-TTS.cppC++/ggml~4x RT (CPU)~1.1 GB (Q4)

Chatterbox Turbo быстрее, но он использует кодековую модель, а не прямой диффузионный синтез. Качество речи VibeVoice на порядок выше: меньше артефактов, лучше эмоции. Qwen3-TTS.cpp хорош на CPU, но VibeVoice даёт более живой голос.

Кому это нужно прямо сейчас

  • Разработчикам голосовых ассистентов, уставшим от лагов облачных API — замените Azure на локальный VibeVoice.
  • Интеграторам TTS в мобильные и IoT — audio.cpp собирается под ARM, нет зависимостей.
  • Исследователям, которые хотят экспериментировать с voice cloning — модель поддерживает conditioning на референсное аудио (как в оригинальном VibeVoice).
  • Всем, кто ценит приватность — ни один байт не уходит в облако.

Если у вас нет RTX 5090 под рукой, арендовать можно на Vast.ai или RunPod — обойдётся около $0.50/час. audio.cpp не требует установки драйверов поверх контейнера, просто загрузите бинарник.

Подводные камни и что дальше

На CPU скорость падает до 1.2x RT — это всё ещё real-time, но не сверхбыстро. На Raspberry Pi 5 — 0.15x RT, то есть генерация 10 секунд займёт больше минуты. Пока не ваш вариант. Кроме того, голосовой клонинг (speech-to-speech) в audio.cpp не завезли — это только TTS. Зато vibevoice.cpp покрывает этот сценарий.

Ожидайте, что в ближайшие полгода ggml-порты появятся для всех крупных TTS моделей: Cosmos, VoiceCraft, MetaVoice. C++ станет стандартом для продакшен-инференса аудио, а Python останется уделом прототипирования. audio.cpp — первый ласточка, и уже сейчас это самый быстрый способ запустить VibeVoice локально.

Подписаться на канал