Все публикации
Инженерия 12 мин чтения

Как мы уменьшили voice latency до менее чем 300 мс

Инженерный deep-dive о streaming-pipelines, выборе модели на каждую реплику и продакшен-трюках, которые снизили нам задержку с 600 мс до 180 мс.

Ярослав Демир
Principal Engineer
Apr 18, 2026

Проблема латентности

У Voice AI жёсткий latency-бюджет. Всё, что свыше 500мс, ощущается как задержка. Свыше 1 секунды — как поломка. Наш v1 pipeline был в среднем 600мс: нормально для продукта, но не круто для планки, которую мы хотели взять.

Latency в voice-pipeline-ах определяется цепочкой сервисов: ASR → LLM → TTS, плюс сетевые round trips. Каждый этап ждёт завершения предыдущего. При 200мс ASR + 250мс LLM + 200мс TTS вы уже на 650мс.

Streaming partials между каждым этапом

Самый большой выигрыш — никогда не ждать, пока этап завершится. ASR стримит partial-транскрипты, пока пользователь говорит. LLM получает partials и начинает генерировать. TTS стримит аудио-chunks ещё до того, как LLM закончит.

У этого есть компромиссы. ASR partials шумные, они пересматриваются по мере поступления аудио. LLM должна обрабатывать это корректно. Мы добавили тонкий слой, который буферизует последние 150 мс partials перед передачей в LLM, что поглощает большинство ревизий.

Диаграмма таймингов streaming-pipeline
На телефоне каждое лишнее мгновение тишины слышно

Выбор правильной модели на каждую реплику

Не каждому turn нужна 400B-param модель. Большинству, нет. Мы классифицируем входящие turns в 4 buckets, small-talk, factual lookup, reasoning, complex multi-step, и маршрутизируем в модель подходящего размера для каждого.

Small-talk идёт на 7B модель с 80мс inference. Reasoning, на 70B. Complex multi-step, на самую большую. Сам наш классификатор имеет 200M params и работает меньше чем за 10мс.

Конечный результат

Медианная задержка первого токена: 180мс. P95: 280мс. P99: 420мс. Самый медленный тир разговоров всё ещё ниже перцептивного порога для большинства пользователей.

Стоимость тоже упала: мы используем малую модель 70% времени, среднюю — 25%, большую — только 5%.

#voice#эффективность#engineering
Ярослав Демир
Principal Engineer

Отвечает за надёжность платформы. 10+ лет построения high-throughput систем. Будет защищать Go в любом треде.

Попробовать MyChatBot бесплатно

Настройте своего первого AI-агента за 10 минут. Тарифы и условия пробного периода — на странице тарифов.

Бесплатный пробный период