Как собрать голосового ассистента из распознавания, языковой модели и синтеза речи?
- Как устроен голосовой бот?
- Что такое speech-to-speech?
Классический конвейер: ASR (речь → текст) → LLM (ответ, вызовы инструментов) → TTS (текст → речь). Чтобы не было долгих пауз, всё работает потоково: аудио отправляется во время речи, модель начинает отвечать сразу после конца фразы, синтез озвучивает первое предложение, пока генерируются следующие. Альтернатива — speech-to-speech модели, принимающие и выдающие аудио напрямую: меньше задержка и естественнее интонации, но меньше контроля и сложнее проверка.
- Транспорт: WebRTC или WebSocket для аудиопотока
- Ответы для голоса — короткие, без markdown и списков
- Определение конца фразы (VAD) — ключевой элемент задержки
А ещё Текст диалога сохраняется для трасс, оценки и передачи оператору
Подробно
Компоненты:
- захват аудио и транспорт (WebRTC, телефония SIP);
- детектор речи и конца фразы;
- потоковое ASR;
- LLM с промптом под голосовой формат;
- потоковый TTS по предложениям;
- воспроизведение с возможностью прервать.
Промпт для голоса: коротко, разговорно, числа и даты словами, без перечислений длиннее трёх пунктов, переспрашивать при неуверенности распознавания.
Оценка: качество распознавания, успешность сценариев, задержка ответа (от конца фразы до первого звука), доля перебиваний.
Что хотят услышать
- Конвейер ASR — LLM — TTS.
- Потоковость на каждом звене.
- Speech-to-speech как альтернатива.
- Особенности промпта для голоса.
Проверьте себя
Один верный вариант. Подумайте, потом откройте ответ.
Показать варианты и ответ
- ✗Дождаться полного ответа модели и синтезировать его целиком — так интонация лучше
- ✓Потоковый ASR → LLM → TTS, первое предложение озвучивается сразу
- ✗Ответы для голоса оформлять markdown-списками, как в чате
- ✗Аудио отправлять на распознавание только после окончания всего разговора
Связанные вопросы
Разбор собеседования с sotto
После собеседования sotto разбирает разговор: оценка, каждый вопрос — хорошо, частично или слабо, чего не хватило в ответе и над чем поработать к следующему разу. Первые 30 минут бесплатно.