Перейти к содержанию

Аналитика

SpeakNode собирает детальные данные о каждом разговоре для анализа и мониторинга.

История разговоров

Каждая сессия агента записывается с:

  • Метаданные сессии — агент, звонящий, время начала/окончания, длительность, статус
  • Аудиозапись — полное аудио сессии в объектном хранилище
  • Транскрипция — текстовая расшифровка разговора
  • Телеметрия — детальные OpenTelemetry-трейсы каждого шага

Список сессий

Просмотр всех разговоров с фильтрами:

  • По агенту
  • По статусу (завершён, ошибка, активен)
  • По диапазону дат
  • По информации о звонящем

Детали сессии

Для каждой сессии можно просмотреть:

  • Полную транскрипцию с разбивкой по репликам
  • Воспроизведение аудио с визуализацией волны
  • Метрики по каждой реплике (задержка, длительность)
  • Вызовы инструментов во время сессии
  • Детали ошибок (если произошёл сбой)

Телеметрия и трейсинг

Платформа использует OpenTelemetry для сквозной трассировки:

Пользователь говорит → STT span → LLM span → Tool call span → TTS span → Пользователь слышит

Каждый разговор — это трейс, содержащий спаны для каждой операции:

  • Имя спана — тип операции (STT, LLM inference, tool call, TTS)
  • Длительность — сколько времени занял каждый шаг
  • Статус — успех или ошибка
  • Атрибуты — теги и метаданные
  • События — детальные события внутри спана

Пайплайн телеметрии

Python Worker → OTEL Collector → Kafka → ASP.NET Consumer → База данных
                                      → Langfuse (внутренний мониторинг)

Хранение данных

Данные Хранилище
Метаданные сессий PostgreSQL
Аудиозаписи S3-совместимое объектное хранилище
Спаны телеметрии PostgreSQL (через Kafka)
Агрегации аналитики ClickHouse
LLM-трейсы Langfuse