Содержание статьи +
- TL;DR
- Зачем это нужно
- Что на самом деле значит «потоковый» для речи
- Time-to-first-audio – та самая цифра
- Два способа получить голос: хостить или арендовать
- Знакомство с четырьмя движками
- Сравнение 2026 года, бок о бок
- Разбор на примере – во что обходится голосовой агент в месяц
- Как устроен поток – чанки, предложения и сокеты
- Частая ошибка – оптимизировать модель и игнорировать конвейер
- Где здесь Фора Софт
- Как выбирать – пять вопросов
- Ключевые выводы
- Что почитать дальше
TL;DR
Потоковый синтез речи превращает текст в звук, который начинает проигрываться ещё до того, как предложение досинтезировано целиком, – и только так машинный голос может вести живой диалог без долгих пауз. Цифра, которая решает, звучит ли голос живо, – это time-to-first-audio: задержка между отправкой текста и первым услышанным звуком, где примерно 300 миллисекунд отделяют «разговорно» от «по-роботски». Четыре сервиса из этой статьи делятся на два лагеря: бесплатная open-weights модель, которую вы хостите сами (Kokoro), и три платных API, которые вы арендуете (ElevenLabs Turbo и Flash, Cartesia Sonic и OpenAI TTS), и каждый по-своему разменивает скорость, качество, языки и цену. Статья объясняет, как работает потоковый TTS, какие на самом деле цифры по задержке и цене в 2026 году и как выбрать между хостингом open-модели и арендой быстрого API.
Зачем это нужно
Если ваш продукт говорит в ответ – ассистент встреч, который зачитывает резюме, языковой репетитор, голосовой агент поддержки, дубляж видео или озвучка для незрячих, – вы выберете движок синтеза речи, и этот один выбор сразу задаёт вашу задержку, ваш счёт и вашу приватность. Статья для продакт-менеджера, основателя или техлида, который решает между хостингом open-source голосовой модели и платным хостинговым API. К концу вы поймёте, почему «первый звук менее чем за 300 миллисекунд» – это та самая метрика, как четыре ведущих варианта 2026 года сравниваются по скорости и цене, в чём ловушка измерения не той задержки, и получите чёткое правило: когда бесплатное-но-самохостинг побеждает платное-но-управляемое. Цель – чтобы вы могли прийти к вендору и задавать правильные вопросы, а не покупаться на один красивый показатель.
Что на самом деле значит «потоковый» для речи
Начнём с проблемы, которую решает потоковость. Движок синтеза речи – программа, которая превращает написанные слова в звуковую запись, сокращённо TTS (text-to-speech) – может работать двумя способами. Простой: взять всё предложение, сгенерировать весь аудиоклип и отдать его, когда он готов. Потоковый: начать отдавать звук, как только готовы первые несколько слов, пока остальное ещё синтезируется.
Разница – как чайник против крана. Не-потоковый движок – это чайник: вы ждёте, пока всё вскипит, потом наливаете. Потоковый – это кран: вода течёт в момент, когда вы его открыли, и не останавливается. Для записанной заранее аудиокниги чайник подходит – никто не ждёт вживую. Для диалога ожидание чайника ощущается так, будто связь оборвалась, и нужен кран.
Почему это так важно? Потому что у разговора есть ритм. Когда один человек замолкает, другой обычно начинает в пределах примерно двух десятых секунды (Gradium, 2026). Этот зазор – около 200 миллисекунд, где миллисекунда – это одна тысячная секунды, – настолько устойчив в разных языках, что ухо воспринимает всё более длинное как заминку. Если голосовому агенту нужна целая секунда, чтобы начать отвечать, диалог перестаёт быть диалогом и становится телефонным меню.
Потоковость возвращает это время. Вместо ожидания, пока движок досинтезирует весь ответ, слушатель слышит первые слова, пока движок ещё работает над концом предложения. Звук проигрывается в своём естественном темпе – около 150 слов в минуту, – и пока движок генерирует быстрее, чем ухо потребляет, слушатель не слышит пауз.
Time-to-first-audio – та самая цифра
Есть одна метрика, которая решает, ощущается ли потоковый голос отзывчивым, и её легко спутать. Правильная метрика – time-to-first-audio, сокращённо TTFA: время между отправкой текста и первым проигрываемым кусочком звука (Gradium, 2026). Это та часть задержки, которую слушатель реально чувствует, потому что как только приходит первый кусок, начинается воспроизведение, а движок мчится, чтобы оставаться впереди уха.
Метрика, которую часто называют вместо неё, – time-to-first-byte, сокращённо TTFB: время до первого кусочка данных. Ловушка в том, что первые байты часто вовсе не звук. Аудиофайлы начинаются с заголовка – небольшого блока служебных данных, который говорит «это WAV-файл, вот его частота дискретизации», – и этот заголовок не несёт речи. Сервис может вернуть заголовок за пару миллисекунд и выглядеть молниеносным на графике TTFB, тогда как первый реально слышимый сэмпл придёт намного позже (Gradium, 2026). TTFB поощряет не то. Всегда требуйте time-to-first-audio, измеренный после отбрасывания заголовка.
Насколько быстро – достаточно быстро? Независимые бенчмарки 2026 года сходятся в простом правиле. Менее 300 миллисекунд TTFA ощущается разговорно; менее 200 – отлично; выше 400 уже похоже на ожидание (Gradium, 2026). И помните, что TTS стоит в конце цепочки: в голосовом агенте система сначала слушает (speech-to-text), потом думает (языковая модель), потом говорит (TTS). Каждая миллисекунда движка ложится поверх всего предыдущего, поэтому жёсткий бюджет на TTS оставляет место остальному.
Почему стабильность важна не меньше скорости
Средняя скорость прячет вторую проблему: насколько эта скорость стабильна. Типичный случай инженеры мерят медианой, обозначаемой P50, – значением, которое половина запросов превосходит. Но они следят и за разбросом, который часто сводят к межквартильному размаху, сокращённо IQR: зазору между быстрой и медленной четвертью запросов. Низкая медиана при широком разбросе означает, что большинство вызовов кажутся резвыми, но заметная доля кажется сломанной, – а на масштабе тысяч одновременных вызовов «доля» – это много недовольных пользователей.
Данные 2026 года это показывают. ElevenLabs Turbo v2.5 даёт медиану 264 миллисекунды с узким разбросом в 28 миллисекунд, поэтому почти каждый запрос ощущается одинаково (Gradium / Coval, 2026). Cartesia Sonic-3 быстрее по медиане – 188 миллисекунд, – но её разброс 100 миллисекунд, втрое шире, поэтому реальная доля запросов переходит черту 300 миллисекунд в «медленную» зону (Gradium / Coval, 2026). Скорость и стабильность – два разных вопроса. Задавайте оба.
Два способа получить голос: хостить или арендовать
Любое решение по потоковому TTS сводится к одной развилке. Можно хостить open-weights модель – скачать файл модели, запустить на своём железе, платить только за это железо – или арендовать хостинговый API, где вендор делает всё и берёт плату за каждый символ текста. Четыре варианта статьи ложатся на эту развилку ровно: Kokoro – вариант «хости сам»; ElevenLabs, Cartesia и OpenAI – варианты «арендуй».
«Open-weights» значит, что обученный файл модели опубликован, и любой может скачать и запустить его. Kokoro идёт дальше: её веса под лицензией Apache 2.0 – разрешительной open-source лицензией, которая допускает коммерческое использование без платы за использование и без требования открывать свой код (hexgrad, 2026). В этом её суть. Как только модель крутится на вашем сервере, генерация миллиона символов речи стоит лишь электричество и арендованное GPU-время, а не плату вендору по счётчику.
Аренда переворачивает размен. Вы не пишете инфраструктуру, автоматически получаете новейшую модель вендора и стартуете за полдня. Взамен платите за символ, текст ваших пользователей покидает вашу сеть и едет к вендору, и вы живёте с той задержкой, которую дают серверы вендора и ваше расстояние до них. Для многих команд это верный размен – пока объём не вырастет настолько, что счёт за символы перекроет стоимость GPU.
Знакомство с четырьмя движками
Kokoro – бесплатная модель, которую вы хостите сами
Kokoro – это open-weights TTS-модель с 82 миллионами внутренних параметров, то есть настраиваемых чисел, которые модель выучивает при обучении (hexgrad, 2026). Восемьдесят два миллиона звучит много, но в терминах моделей это крохотно: многие конкуренты в десять–сто раз больше. Эта малость – весь смысл. Маленькая модель быстро работает на дешёвом железе, и Kokoro достигает примерно 210-кратной скорости относительно реального времени на одной потребительской видеокарте RTX 4090 – то есть одна секунда вычислений даёт около 210 секунд речи (hexgrad, 2026).
Под капотом Kokoro построена на двух опубликованных научных разработках: StyleTTS 2 для формирования голоса и ISTFTNet для превращения внутреннего представления модели в звуковую волну (Li et al., 2023; Kaneko et al., 2022). Важно: на этапе речи она работает одним прямым проходом без медленного итеративного шага «диффузии», что и держит её быстрой (hexgrad, 2026). Версия 1.0, вышедшая в январе 2025-го, несёт 54 голоса на 8 языках и выдаёт аудио 24 кГц – почти вещательное качество из модели, помещающейся на ноутбуке (hexgrad, 2026).
Экономика – главный заголовок. При раздаче через облачный API Kokoro стоит менее одного доллара за миллион символов текста, или менее шести центов за час произведённого аудио (hexgrad, 2026). Хостите сами на объёме – и предельная стоимость падает ещё ниже. Подвох – всё, что иначе взял бы на себя управляемый вендор: вы держите серверы, масштабируете их, поддерживаете их и принимаете, что модель на 82 миллиона параметров, при всём качестве, не достигнет самой вершины выразительности по эмоциональному нюансу.
ElevenLabs Turbo и Flash – быстрая, широкая, платная пара
ElevenLabs – самый используемый коммерческий голосовой вендор, и для потока он предлагает две быстрые модели. Flash v2.5 – спец по скорости: около 75 миллисекунд времени инференса модели, на 32 языках, по пять центов за тысячу символов (ElevenLabs, 2026). Turbo v2.5 разменивает немного скорости на немного лоска и сделана для интерактива. Заметьте разрыв между маркетинговой и измеренной цифрой: эти 75 миллисекунд – только время инференса, собственное «думание» модели, а реальный сквозной TTFA, после сетевого пути и очереди на сервере, в независимых тестах ближе к 250–290 миллисекундам (ElevenLabs, 2026; Gradium / Coval, 2026).
Покупаете вы у ElevenLabs широту и стабильность. Обе быстрые модели покрывают 32 языка, разброс задержки узкий (IQR 28 миллисекунд), а API зрелый: есть обычный эндпоинт, потоковый эндпоинт на стандартном механизме server-sent-events и двунаправленный WebSocket-эндпоинт, рассчитанный на подачу текста по мере его выдачи языковой моделью (ElevenLabs, 2026). Одна из побочных тем статьи – voice isolator ElevenLabs – это родственный инструмент на той же платформе: он вырезает фоновый шум из записи, оставляя чистую речь, тарифицируется как 1000 символов за минуту аудио и доступен с плана Starter и выше (ElevenLabs, 2026). Это не TTS-движок, но командам, строящим голосовые фичи, часто нужно и то, и другое.
Cartesia Sonic – рекордсмен по задержке
Линейка Sonic от Cartesia спроектирована вокруг одной цели: минимально возможная задержка первого звука. Она использует архитектуру state-space model – более новую альтернативу трансформерным схемам, на которых построено большинство ИИ-моделей, настроенную на плавную потоковую передачу непрерывного сигнала (Cartesia, 2026). На независимом бенчмарке Coval Sonic-3 показывает вторую по скорости медиану среди протестированных моделей – 188 миллисекунд (Gradium / Coval, 2026). Цены начинаются с бесплатного плана с 20 000 кредитов в месяц, затем поднимаются через тариф Pro за $4, Startup за $39 и Scale за $239, с мгновенным клонированием голоса с Pro и профессиональным – со Startup (Cartesia, 2026).
Честная оговорка, видимая только в независимых данных, – стабильность. Разброс задержки у Sonic-3 равен 100 миллисекундам, шире, чем у ElevenLabs, поэтому, хотя типичный запрос очень быстрый, заметная доля дрейфует к порогу разговорности (Gradium / Coval, 2026). Для продукта, где худший случай важен не меньше среднего, этот разброс – та цифра, которую стоит взвесить.
OpenAI TTS – удобно, если вы уже там
Синтез речи OpenAI – лёгкий выбор по умолчанию для команд, уже строящих на OpenAI. Удешевлённая модель gpt-4o-mini-tts стоит примерно 1,5 цента за минуту аудио; более старая tts-1 – $15 за миллион символов, а tts-1-hd – $30 (OpenAI, 2026). Она поддерживает поток и полезный набор форматов вывода, включая низколатентный кодек Opus (OpenAI, 2026).
Но независимые бенчмарки прямолинейны насчёт её места: качественная модель tts-1-hd даёт медианный TTFA выше двух секунд, что исключает её для живого диалога и маркирует как пакетный инструмент – отличный для предрендера озвучки или дубляжа, где никто не ждёт, и неверный для агента реального времени (Gradium / Coval, 2026). У OpenAI также нет WebSocket-эндпоинта для TTS, только доставка по HTTP, что добавляет небольшую плату за ход в многоходовых диалогах (Gradium, 2026). Нужна разговорная скорость – смотрите на три других; нужна удобная пакетная озвучка внутри существующего стека OpenAI – подходит.
Сравнение 2026 года, бок о бок
Таблица ниже собирает цифры, которые решают большинство выборов. Значения задержки – независимые медианы time-to-first-audio из майского бенчмарка Coval 2026 года, не маркетинговые заявления; цены и число языков читаются со страниц вендоров в мае 2026-го. «Победитель» каждой колонки – не один продукт, а зависит от того, какая колонка важнее вашему продукту.
| Движок | Хостинг или self-host | Медиана TTFA (P50) | Разброс (IQR) | Цена | Языки | Лучше всего для |
|---|---|---|---|---|---|---|
| Kokoro-82M | Self-host (Apache 2.0) | <300 мс* | н/д (ваше железо) | ~$1 / М симв. | 8 | Объём, приватность, пол цены |
| ElevenLabs Turbo v2.5 | Хостинг API | 264 мс | 28 мс | $0.10 / 1k симв. (v2/v3) | 32 | Широта языков + стабильность |
| ElevenLabs Flash v2.5 | Хостинг API | 288 мс | 28 мс | $0.05 / 1k симв. | 32 | Дёшево + низкая задержка, 32 языка |
| Cartesia Sonic-3 | Хостинг API | 188 мс | 100 мс | от $0 (20k кредитов) | 40+ | Быстрейшая медиана, задержка-прежде |
| OpenAI gpt-4o-mini-tts | Хостинг API | – (поток) | – | ~$0.015 / мин | мульти | Пакетная озвучка в стеке OpenAI |
| OpenAI tts-1-hd | Хостинг API | 2 295 мс | 1 062 мс | $30 / М симв. | мульти | Только пакетно – не реальное время |
*Задержка первого звука у Kokoro полностью зависит от вашего железа; на одной RTX 4090 она генерирует в ~210 раз быстрее реального времени, уверенно укладываясь в разговорный бюджет для коротких ответов (hexgrad, 2026).
Читайте таблицу как набор разменов, не как турнирную таблицу. Cartesia выигрывает чистую медиану скорости, но шире по разбросу. ElevenLabs выигрывает стабильность и широту языков. Kokoro выигрывает долгосрочную стоимость и приватность, но вручает вам счёт за эксплуатацию. Быстрая модель OpenAI – игра на удобство, а её HD-модель – пакетный инструмент в одежде реального времени.
Разбор на примере – во что обходится голосовой агент в месяц
Цифры в таблице цен кажутся абстрактными, пока не прогонишь их на реальном использовании, так что оценим конкретный продукт: голосовой агент поддержки, который говорит 200 часов сгенерированного аудио в месяц.
Сначала переведём часы речи в символы текста, потому что именно их тарифицируют хостинговые API. Речь идёт со скоростью около 150 слов в минуту, а английское слово в среднем около 6 символов с учётом завершающего пробела. Значит, одна минута аудио – это примерно:
150 слов × 6 символов = 900 символов в минутуДвести часов – это 12 000 минут, поэтому месячный объём текста:
12 000 минут × 900 символов = 10 800 000 символов ≈ 10,8 млн символовТеперь оценим эти 10,8 млн символов по каждому варианту:
ElevenLabs Flash v2.5 : 10,8М × $0.05 / 1 000 = $540 / месяц
ElevenLabs Turbo v2.5 : 10,8М × $0.10 / 1 000 = $1 080 / месяц
Cartesia Sonic : 10,8М × ~$0.04 / 1 000 = ~$432 / месяц
Kokoro (self-hosted) : ~$1 за миллион = ~$11 / месяц вычислений + ваше время на эксплуатациюРазброс – это и есть урок. На 200 часах в месяц хостинговые варианты идут от примерно $430 до $1 080, тогда как самохостинг Kokoro стоит около десяти долларов GPU-времени плюс зарплата инженера, который держит его на ходу. Ниже нескольких десятков часов в месяц хостинговый счёт ничтожен, а самохостинг не стоит операционной ноши. Где-то по мере роста объёма линии пересекаются, и почти нулевая предельная стоимость open-модели побеждает решительно. Точка безубыточности – не фиксированное число, она зависит от вашей стоимости инженеров и требований к аптайму, – но каждая команда на масштабе должна примерно знать, где проходит её черта.
Как устроен поток – чанки, предложения и сокеты
Чтобы получить низкую задержку, которую обещают бенчмарки, текст надо подавать движку правильно, а аудио – нести обратно по правильному типу соединения. Оба выбора в вашей власти, и ошибка в них может стереть преимущество быстрой модели.
На входе движок не может начать, пока у него не наберётся достаточно текста, чтобы сказать что-то естественное. Подайте одно слово – и движок не знает, как его интонировать; подождите целый абзац – и вы вернули задержку чайника. Решение – чанкинг: подача текста небольшими порциями такого размера, чтобы движок мог начать, не застревая. ElevenLabs выставляет это напрямую через настройку chunk-length schedule – список количеств символов, на которых он берётся генерировать, например после 120 символов, затем 160, затем 250 (ElevenLabs, 2026). Есть и auto mode, который выбирает эти границы за вас, читая входящий текст, и команда flush – вытолкнуть всё буферизованное, когда вы дошли до конца (ElevenLabs, 2026). Когда текст приходит от языковой модели по одному слову, это очень важно: чанкуешь слишком рано – страдает просодия; слишком поздно – страдает задержка.
На стороне транспорта есть три способа нести аудио обратно, и они подходят под разные ситуации. Обычный запрос возвращает весь клип сразу – проще всего, медленнее всего до первого звука. Поток server-sent-events, определённый в HTML-стандарте веба, толкает чанки аудио по одностороннему HTTP-каналу по мере готовности, что снижает time-to-first-audio и идеально, когда весь текст у вас уже есть (WHATWG, 2026; ElevenLabs, 2026). WebSocket – двустороннее постоянное соединение, стандартизированное как RFC 6455, – позволяет продолжать подавать текст, пока аудио течёт обратно, и это в точности форма живого агента, читающего вывод языковой модели по мере его генерации (IETF, 2011; ElevenLabs, 2026). WebSocket платит небольшую разовую цену за открытие соединения, но переиспользование одного открытого соединения на много ходов экономит 50–100 миллисекунд на ход против переоткрытия HTTP-запроса каждый раз (Gradium, 2026). Для чат-агента держите один сокет открытым.
Ещё один полезный рычаг – география. ElevenLabs раздаёт быстрые модели из региональных дата-центров, и тот же запрос, который возвращает первый звук за 100–150 миллисекунд из Северной Америки или Европы, занимает 150–200 миллисекунд из частей Азии просто потому, что байтам дальше ехать (ElevenLabs, 2026). Если ваши пользователи скучкованы в одном регионе, выбирайте вендора с сервером рядом или хостите близко к аудитории.
Частая ошибка – оптимизировать модель и игнорировать конвейер
Самая частая ошибка команд – выбрать модель с самой низкой рекламной цифрой инференса, а потом удивляться, почему живой продукт всё равно тормозит. Рекламные «75 миллисекунд» – это время «думания» модели в изоляции. Цифра, которую чувствует пользователь, – это сумма четырёх вещей: сетевой путь к серверу, ожидание в очереди, когда сервис занят, время генерации модели и сетевой путь обратно (ElevenLabs, 2026). Модель в 75 миллисекунд, достигнутая по медленному соединению, за занятой очередью, со свежим HTTP-рукопожатием каждый ход, легко может ощущаться как полсекунды.
Лекарство – мерить весь конвейер, от начала до конца, из локаций ваших реальных пользователей, по time-to-first-audio, а не по time-to-first-byte. Откройте один постоянный WebSocket и переиспользуйте его. Выберите серверный регион рядом с пользователями. Настройте chunk schedule на реальном выводе языковой модели, а не на статичном тестовом предложении. Модель из середины списка, подключённая правильно, бьёт чемпиона бенчмарка, подключённого небрежно, – каждый раз.
Где здесь Фора Софт
Мы строим продукты, которые потребляют потоковый TTS, – видеоконференции с зачитыванием резюме встреч, телемедицину с голосовым приёмом, e-learning с озвученными уроками и OTT-сервисы с автодубляжом. В этой работе выбор движка редко про единственную самую быструю модель; он про сопоставление движка с реальными ограничениями продукта. Чувствительный к приватности телемедицинский кейс часто склоняет к самохостингу open-модели, чтобы аудио никогда не покидало среду заказчика, тогда как многоязычная фича для конференций обычно предпочитает хостинговый API за широту языков и нулевую операционную ношу. Мы применяем такой шаблон: сначала фиксируем бюджет задержки, потом требования по приватности и языкам, и лишь затем сравниваем цены, – потому что более дешёвый движок, который промахивается мимо бюджета задержки, не дешевле, он непригоден.
Как выбирать – пять вопросов
Пройдите их по порядку; каждый сужает поле.
- Это реальное время или пакет? Если вживую никто не ждёт (предрендер озвучки, ночной дубляж), задержка не важна – выбирайте по качеству и цене, и HD-модель OpenAI или ElevenLabs Multilingual v2 подойдут. Если разговорно – задержка правит всем ниже.
- Каков месячный объём в часах? Переведите в символы (≈900 на минуту). Ниже нескольких десятков часов – арендуйте. Выше нескольких сотен – серьёзно посчитайте безубыточность самохостинга.
- Сколько языков и каких? Нужна широта? ElevenLabs (32) или Cartesia (40+). Преимущественно английский и чувствительность к цене? 8 языков Kokoro могут хватить.
- Может ли аудио покидать вашу сеть? Если приватность или регуляция говорят нет – хостите Kokoro сами. Если да – хостинговые API открыты вам.
- Важен ли худший случай не меньше среднего? Если медленный хвостовой вызов ломает опыт на масштабе, взвешивайте разброс задержки, не только медиану, – предпочтите более узкий разброс (ElevenLabs) более быстрому-но-широкому (Cartesia).
Ключевые выводы
- Потоковый TTS проигрывает звук до конца предложения; это и делает голос живым.
- Time-to-first-audio менее 300 мс – разговорно; time-to-first-byte вводит в заблуждение – игнорируйте его.
- Стабильность задержки (разброс) важна не меньше медианы на разговорном масштабе.
- Kokoro бесплатна и self-hosted; ElevenLabs, Cartesia и OpenAI – платные хостинговые API.
- На больших объёмах почти нулевая предельная стоимость open-модели бьёт любой счёт за символ.
- Модель из середины списка, подключённая правильно, бьёт чемпиона бенчмарка, подключённого небрежно.