logoVoxagent

Голос и коммуникация

WebRTC голосовая связь в реальном времени в Voxagent

Voxagent использует WebRTC для голосовой связи в реальном времени между пользователями и AI-агентами.

Как это работает

  1. При запуске агента создаётся LiveKit-комната
  2. AI-агент (Python worker) подключается к комнате и начинает слушать
  3. Пользователь подключается через браузер (виджет или клиент) или телефон
  4. Аудио передаётся в обе стороны в реальном времени
  5. Сессия записывается автоматически (audio egress)

Голосовой пайплайн

Пользователь говорит → WebRTC аудио → STT (речь в текст) →
LLM обрабатывает текст → генерирует ответ →
TTS (текст в речь) → WebRTC аудио → Пользователь слышит

Распознавание речи (STT)

Преобразует речь пользователя в текст для LLM. STT-провайдер настраивается для каждого агента отдельно.

Языковая модель (LLM)

Обрабатывает разговор и генерирует ответы. LLM-провайдер и модель настраиваются для каждого агента отдельно (напрямую или через агрегатор).

Синтез речи (TTS)

Преобразует ответы агента в речь. TTS-провайдер настраивается для каждого агента отдельно.

Детекция голосовой активности (VAD)

Определяет, когда пользователь начинает и прекращает говорить. Управляет поведением очерёдности — когда агент должен начать или прекратить говорить.

Запись аудио

Каждый разговор автоматически записывается через LiveKit Egress. Записи включают:

  • Полное аудио сессии (композитная запись)
  • Треки отдельных участников
  • Хранение в S3-совместимом объектном хранилище

Уведомления в реальном времени

Платформа использует SignalR для уведомления фронтенда о событиях сессии:

  • Agent Ready — агент подключился к комнате
  • Session Completed — разговор завершён, аудио доступно

Жизненный цикл сессии

СтатусОписание
PendingСессия создана, комната ещё не готова
DispatchingLiveKit-комната создана, ожидание подключения агента
ActiveАгент подключился, разговор идёт
CompletedРазговор завершён нормально
FailedПроизошла ошибка во время сессии

Содержание