Создание голосового агента с задержкой менее 500 мс: архитектура и анализ производительности

✍️ OpenClawRadar📅 Опубликовано: 3 марта 2026 г.🔗 Source
Создание голосового агента с задержкой менее 500 мс: архитектура и анализ производительности
Ad

Архитектура и производительность голосового агента

Ник Тихонов создал голосового агента с нуля, который в среднем имеет сквозную задержку около 400 мс (от окончания речи пользователя до первого слога ответа). Это включает полный цикл STT → LLM → TTS с чистыми перебиваниями и без предварительно сгенерированных ответов. Данная реализация превзошла аналогичную настройку Vapi по задержке в 2 раза.

Ключевые технические идеи

Основным осознанием стало то, что голос — это проблема очередности реплик, а не транскрипции. Одного лишь детектирования голосовой активности (VAD) недостаточно; требуется семантическое определение конца реплики. Система сводится к одному циклу с двумя состояниями: говорит или слушает.

Критические переходы:

  • Мгновенная отмена при перебивании
  • Мгновенный ответ в конце реплики

Технические требования

STT → LLM → TTS должны работать в потоковом режиме. Последовательные конвейеры неэффективны для естественного разговора. Время до первого токена (TTFT) доминирует во всех голосовых интерфейсах — первый токен является критическим путём. TTFT Groq в ~80 мс был определён как самое большое преимущество в производительности.

Инфраструктурные соображения

География важнее промптов. Все компоненты должны быть размещены в одном месте, иначе задержка становится неприемлемой ещё до начала обработки системой. Сборка заняла примерно один день и около $100 в API-кредитах.

Ad

Почему голосовые агенты сложны

Голосовые агенты представляют собой значительное увеличение сложности по сравнению с текстовыми агентами. Оркестрация непрерывна и происходит в реальном времени, требуя тщательного управления несколькими моделями одновременно. Система должна постоянно решать, говорит пользователь или слушает, причём переходы между этими состояниями являются наиболее сложным аспектом.

Когда пользователь начинает говорить, агент должен немедленно прекратить речь — отменить генерацию, отменить синтез речи и очистить любой буферизованный звук. Когда пользователь перестаёт говорить, система должна уверенно определить, что он закончил, и начать отвечать с минимальной задержкой.

Подход к архитектуре

Разработчик начал с итераций по архитектуре в ChatGPT вне редактора, чтобы сначала построить ментальную модель. Вся проблема была сведена к одному циклу и крошечному конечному автомату. Основной вопрос, на который должен отвечать голосовой агент: говорит пользователь или слушает?

Два состояния:

  • Пользователь говорит
  • Пользователь слушает

Эта логика определения очереди реплик составляет основу каждой голосовой системы. Реализация доступна на GitHub для ознакомления и дальнейшей разработки.

📖 Read the full source: HN AI Agents

Ad

👀 Смотрите также

Использование локальной LLM в качестве суб-агента Claude для кодирования с целью сокращения использования контекста
Инструменты

Использование локальной LLM в качестве суб-агента Claude для кодирования с целью сокращения использования контекста

Разработчик делится методом использования Claude Code для делегирования задач локальной LLM через API LM Studio, сохраняя содержимое файлов вне контекста Claude. Подход использует Python-скрипт объёмом около 120 строк с вызовом инструментов для локального чтения файлов и возврата сводок.

OpenClawRadar
Knowledge Raven: Кросс-модельная платформа базы знаний, созданная с помощью Claude Code
Инструменты

Knowledge Raven: Кросс-модельная платформа базы знаний, созданная с помощью Claude Code

Knowledge Raven — это платформа базы знаний, которая позволяет любому LLM, совместимому с MCP, искать и цитировать корпоративные документы. Вся платформа была создана с помощью Claude Code одним основателем и включает бэкенд на Python/FastAPI, слой инструментов MCP и агентный RAG-конвейер.

OpenClawRadar
Панель управления SwarmClaw добавляет уровень оркестрации к OpenClaw.
Инструменты

Панель управления SwarmClaw добавляет уровень оркестрации к OpenClaw.

SwarmClaw — это самодостаточная панель управления, которая оборачивает OpenClaw, предоставляя развертывание и управление несколькими экземплярами с контролем шлюзов, исправлением конфигураций, синхронизацией удаленной истории и одобрением выполнения в реальном времени. Поддерживает плагины OpenClaw и файлы SKILL.md, а также подключается к 14 другим провайдерам ИИ.

OpenClawRadar
Otterly: Маршрутизируйте OpenClaw через вашу подписку на Claude Code
Инструменты

Otterly: Маршрутизируйте OpenClaw через вашу подписку на Claude Code

Otterly — это небольшой npm-пакет, который превращает локальный Claude CLI в HTTP-сервер, совместимый с OpenAI, позволяя направлять запросы OpenClaw через подписку Claude Code вместо оплаты за токены.

OpenClawRadar