Skip to content

Realtime API — Обзор

Realtime API GenVoice позволяет синтезировать речь в реальном времени через WebSocket-соединение. Текст передаётся по частям (слово за словом, как от LLM), а аудио возвращается чанками по мере генерации.

Отличия от REST API

REST API (POST /api/tts)Realtime API (WebSocket)
ПротоколHTTPWebSocket
Отправка текстаВесь текст целикомПо частям (потоково)
Получение аудиоФайл целиком после синтезаЧанками (~200 мс) по мере готовности
Задержка до первого аудиоВысокая (весь текст → весь аудиофайл)Низкая (первые слова → первый чанк)
ПрерываниеНевозможноМгновенное через interrupt
Несколько фразОтдельный запрос на каждуюВ одной сессии без переподключения
Форматы аудиоMP3, WAV, Opus, PCM, µ-law, A-lawPCM, µ-law, A-law (raw)

Когда использовать

  • Голосовые боты и IVR — минимальная задержка ответа, поддержка прерывания пользователем
  • Стриминг от LLM — текст от языковой модели поступает токен за токеном, аудио начинает генерироваться, не дожидаясь конца ответа
  • Телефония — форматы µ-law/A-law (8 kHz) для интеграции с VoIP-системами
  • Интерактивные приложения — диалоговые системы с возможностью мгновенного прерывания речи

Возможности

  • Потоковая отправка текста (посимвольно, пословно, по предложениям)
  • Получение аудио чанками (~200 мс) по мере генерации
  • Мгновенное прерывание синтеза (interrupt)
  • Несколько последовательных генераций в одной сессии
  • Настраиваемая буферизация текста (пороги, принудительный flush)
  • Keepalive через ping/pong
  • Настраиваемая скорость речи (0.5×–1.5×)

Быстрый старт

  1. Подключитесь по WebSocket к wss://api.genvoice.ru/v1/api/tts/stream
  2. Отправьте session.begin с API-ключом и voice_id
  3. Получите session.ready — сессия готова
  4. Отправляйте текст через text.chunk
  5. Получайте аудио через audio.chunk
  6. Завершите генерацию через text.end

Подробности — в следующих разделах.

Следующие шаги