Подключите нашего Telegram-бота для уведомлений о новых проектах

Заказ закрыт
Перевести текущий стек голосового ассистента на потоковую архитектуру

Разместить заказ
i
Заказчик
Отзывы фрилансеров: + 0 - 0
Зарегистрирован на сайте 2 года и 3 месяца
Бюджет: по договоренности
1. Общее описание проекта
Цель: Перевести текущий стек голосового ассистента (Deepgram → OpenAI → Яндекс SpeechKit) на потоковую архитектуру для минимизации задержек между речью пользователя и ответом ассистента.  

Текущие проблемы:  
- Последовательная обработка данных (ASR → LLM → TTS) вызывает задержки в 3–5 секунд.  
- Яндекс SpeechKit в текущей реализации не поддерживает потоковый ввод/вывод.  
- Нестабильно перебивать ассистента во время ответа.  

Ожидаемый результат:  
- Ответ ассистента начинает воспроизводиться через 0.7–1.5 сек после окончания речи пользователя.  
- Параллельная обработка аудио, текста и синтеза речи.  
- Поддержка прерывания ответа.  

1. Основные изменения  
Бэкенд:  
1. WebSocket-сервер (`src/ws/server`):  
   – Реализовать параллельную обработку аудиопотока:  
     – ASR (Deepgram) → OpenAI → TTS (Яндекс) без ожидания завершения этапов.  
   – Использовать асинхронные очереди в `messageConsumer` для чанков.  
2. Механизм перебивания:  
   – При новом аудио вводе останавливать текущие генерацию ответа и синтез речи.  

Фронтенд:  
1. Аудиомодуль (`src/app/(chats)/[id]/audio`):  
   – Поддержка потокового воспроизведения (Web Audio API).  

2. Критичные доработки  
- Интеграция потокового TTS:  
  – Если Яндекс не поддерживает стриминг, заменить на ElevenLabs или реализовать буферизацию ответов по предложениям, предложить свой вариант.  
- Оптимизация Deepgram:  
  – Использовать `interim_results=True` для передачи частичной транскрипции в OpenAI.  
- Очереди сообщений:  
  – Внедрить RabbitMQ/Kafka в `messageConsumer` для управления параллельными задачами.  

3. Стек 
Бэкенд: Асинхронные модули (Deepgram, OpenAI, TTS) + WebSocket.  
- Фронтенд: Web Audio API + обработка потокового аудио.  
- Инфраструктура: Docker (если не настроено).  

4. Критерии приемки  
1. Ответ ассистента начинается ≤ 1.5 сек после речи пользователя.  
2. Поддержка прерывания ответа.  
3. Стабильная работа при 5000+ одновременных сессиях.  

Риски: Если недостаточная производительность Яндекс TTS для потокового режима → потребуется замена на ElevenLabs или любой другой качественный голосовой сервис.
В зависимости от выбранного сервиса может понадобиться не забывать о правильности транскрипции и ударений.
Рассмотрю предложения с готовым решением (API сервисы) или покупку готового кастомного решения.
Разделы:
Опубликован:
26.02.2025 | 21:16
Заказ находится в архиве
Откликнуться Посмотреть другие заказы

Теги: написать программу, создать программу, разработать программу, разработчики программ, прикладной программист

Наши партнеры
Сведения об ООО «Ваан» внесены в реестр аккредитованных организаций, осуществляющих деятельность в области информационных технологий. ООО «Ваан» осуществляет деятельность, связанную с использованием информационных технологий, по разработке компьютерного программного обеспечения, предоставлению доступа к программе для ЭВМ и является правообладателем программы для ЭВМ «Платформа FL.ru (версия 2.0)».