Использование голосового режима с VibeOS
Это руководство — практическое дополнение к справочнику функций голосового режима.
Если страница функций объясняет, что может голосовой режим, это руководство показывает, как его эффективно использовать.
Nous Portal объединяет LLM и TTS через единый OAuth — голосовой режим работает «из коробки» без дополнительных учётных данных.
Для чего подходит голосовой режим
Голосовой режим особенно полезен, когда:
- вам нужен workflow в CLI без использования рук
- вы хотите получать голосовые ответы в Telegram или Discord
- вы хотите, чтобы VibeOS находился в голосовом канале Discord для живого общения
- вы хотите быстро фиксировать идеи, отлаживать или вести диалог на ходу, вместо того чтобы печатать
Выберите свою конфигурацию голосового режима
В VibeOS есть три различных голосовых режима.
| Режим | Для чего лучше всего подходит | Платформа |
|---|---|---|
| Интерактивный микрофонный цикл | Личное использование без рук во время программирования или исследований | CLI |
| Голосовые ответы в чате | Озвученные ответы вместе с обычными сообщениями | Telegram, Discord |
| Бот в голосовом канале | Групповое или личное живое общение в голосовом канале | Голосовые каналы Discord |
Хороший путь:
- сначала настройте текстовый режим
- затем включите голосовые ответы
- переходите к голосовым каналам Discord в последнюю очередь, если хотите полный функционал
Шаг 1: убедитесь, что обычный VibeOS работает
Перед тем как касаться голосового режима, проверьте:
- VibeOS запускается
- ваш провайдер настроен
- агент может нормально отвечать на текстовые запросы
vibeos
Задайте что-нибудь простое:
Какие инструменты у тебя есть?
Если это ещё не стабильно, сначала исправьте текстовый режим.
Шаг 2: установите правильные дополнительные пакеты
Микрофон + воспроизведение в CLI
cd ~/.vibeos/vibeos-agent && uv pip install -e ".[voice]"
Платформы обмена сообщениями
cd ~/.vibeos/vibeos-agent && uv pip install -e ".[messaging]"
Премиум ElevenLabs TTS
cd ~/.vibeos/vibeos-agent && uv pip install -e ".[tts-premium]"
Локальный NeuTTS (опционально)
python -m pip install -U neutts[all]
Всё сразу
cd ~/.vibeos/vibeos-agent && uv pip install -e ".[all]"
Шаг 3: установите системные зависимости
macOS
brew install portaudio ffmpeg opus
brew install espeak-ng
Ubuntu / Debian
sudo apt install portaudio19-dev ffmpeg libopus0
sudo apt install espeak-ng
Почему они важны:
portaudio→ ввод с микрофона / воспроизведение для голосового режима CLIffmpeg→ преобразование аудио для TTS и доставки сообщенийopus→ поддержка голосового кодека Discordespeak-ng→ бэкенд фонемизатора для NeuTTS
Шаг 4: выберите провайдеров STT и TTS
VibeOS поддерживает как локальные, так и облачные речевые стеки.
Самый простой / дешёвый вариант
Используйте локальный STT и бесплатный Edge TTS:
- Провайдер STT:
local - Провайдер TTS:
edge
Обычно это лучшее место для начала.
Пример файла окружения
Добавьте в ~/.vibeos/.env:
# Облачные варианты STT (для local ключ не нужен)
GROQ_API_KEY=***
VOICE_TOOLS_OPENAI_KEY=***
# Премиум TTS (опционально)
ELEVENLABS_API_KEY=***
Рекомендации по провайдерам
Распознавание речи (STT)
local→ лучший выбор по умолчанию для конфиденциальности и бесплатного использованияgroq→ очень быстрое облачное распознаваниеopenai→ хороший платный запасной вариант
Синтез речи (TTS)
edge→ бесплатно и достаточно хорошо для большинства пользователейneutts→ бесплатный локальный TTS на устройствеelevenlabs→ наилучшее качествоopenai→ хороший компромиссmistral→ мультиязычный, нативный Opus
Если вы используете vibeos setup
Если вы выберете NeuTTS в мастере настройки, VibeOS проверяет, установлен ли neutts. Если он отсутствует, мастер сообщает, что NeuTTS требует пакет Python neutts и системный пакет espeak-ng, предлагает установить их, устанавливает espeak-ng с помощью вашего пакетного менеджера, а затем выполняет:
python -m pip install -U neutts[all]
Если вы пропустите эту установку или она не удастся, мастер переключится на Edge TTS.
Шаг 5: рекомендуемая конфигурация
voice:
record_key: "ctrl+b"
max_recording_seconds: 120
auto_tts: false
beep_enabled: true
silence_threshold: 200
silence_duration: 3.0
stt:
provider: "local"
local:
model: "base"
tts:
provider: "edge"
edge:
voice: "en-US-AriaNeural"
Это хорошая консервативная настройка по умолчанию для большинства людей.
Если вы хотите использовать локальный TTS, замените блок tts на:
tts:
provider: "neutts"
neutts:
ref_audio: ''
ref_text: ''
model: neuphonic/neutts-air-q4-gguf
device: cpu
Сценарий 1: голосовой режим в CLI
Включение
Запустите VibeOS:
vibeos
Внутри CLI:
/voice on
Процесс записи
Клавиша по умолчанию:
Ctrl+B
Рабочий процесс:
- нажмите
Ctrl+B - говорите
- дождитесь автоматической остановки записи по обнаружению тишины
- VibeOS распознаёт и отвечает
- если TTS включён, он озвучивает ответ
- цикл может автоматически перезапускаться для непрерывного использования
Полезные команды
/voice
/voice on
/voice off
/voice tts
/voice status
Хорошие сценарии работы в CLI
Отладка на ходу
Скажите:
У меня постоянно возникает ошибка прав доступа к Docker. Помоги отладить.
Затем продолжайте без рук:
- «Прочитай последнюю ошибку ещё раз»
- «Объясни первопричину проще»
- «Теперь дай точное исправление»
Исследования / мозговой штурм
Отлично подходит для:
- прогулок во время размышлений
- диктовки неоформленных идей
- просьбы к VibeOS структурировать мысли в реальном времени
Доступность / сессии с минимальным набором текста
Если печатать неудобно, голосовой режим — один из самых быстрых способов оставаться в полном цикле VibeOS.
Настройка поведения CLI
Порог тишины
Если VibeOS начинает/заканчивает слишком агрессивно, настройте:
voice:
silence_threshold: 250
Более высокий порог = меньшая чувствительность.
Длительность тишины
Если вы делаете длинные паузы между предложениями, увеличьте:
voice:
silence_duration: 4.0
Клавиша записи
Если Ctrl+B конфликтует с вашим терминалом или привычками в tmux:
voice:
record_key: "ctrl+space"
Сценарий 2: голосовые ответы в Telegram или Discord
Этот режим проще, чем полноценные голосовые каналы.
VibeOS остаётся обычным чат-ботом, но может озвучивать ответы.
Запуск шлюза
vibeos gateway
Включение голосовых ответов
В Telegram или Discord:
/voice on
или
/voice tts
Режимы
| Режим | Значение |
|---|---|
off | только текст |
voice_only | озвучивать только когда пользователь отправил голосовое сообщение |
all | озвучивать каждый ответ |
Когда использовать какой режим
/voice onесли вы хотите получать голосовые ответы только на голосовые сообщения/voice ttsесли вы хотите полноценного голосового ассистента всё время
Хорошие сценарии работы с сообщениями
Ассистент Telegram на телефоне
Используйте, когда:
- вы вдали от компьютера
- хотите отправлять голосовые заметки и получать быстрые голосовые ответы
- хотите, чтобы VibeOS работал как портативный исследовательский или операционный ассистент
Личные сообщения Discord с голосовым выводом
Полезно, когда вы хотите приватного взаимодействия без поведения упоминаний в каналах сервера.
Сценарий 3: голосовые каналы Discord
Это самый продвинутый режим.
VibeOS подключается к голосовому каналу Discord, слушает речь пользователей, распознаёт её, запускает обычный конвейер агента и озвучивает ответы обратно в канал.
Необходимые разрешения Discord
В дополнение к обычной настройке текстового бота, убедитесь, что бот имеет:
- Подключение
- Речь
- желательно «Использовать голосовую активность»
Также включите привилегированные намерения на портале разработчика:
- Presence Intent
- Server Members Intent
- Message Content Intent
Подключение и отключение
В текстовом канале Discord, где присутствует бот:
/voice join
/voice leave
/voice status
Что происходит при подключении
- пользователи говорят в голосовом канале
- VibeOS определяет границы речи
- расшифровки публикуются в связанном текстовом канале
- VibeOS отвечает текстом и аудио
- текстовый канал — тот, в котором была введена команда
/voice join
Лучшие практики для использования голосовых каналов Discord
- держите
DISCORD_ALLOWED_USERSстрогим - сначала используйте выделенный тестовый канал для бота
- проверьте работу STT и TTS в обычном текстовом голосовом режиме перед попыткой режима голосового канала
Рекомендации по качеству голоса
Лучшая конфигурация по качеству
- STT: локальный
large-v3или Groqwhisper-large-v3 - TTS: ElevenLabs
Лучшая конфигурация по скорости / удобству
- STT: локальный
baseили Groq - TTS: Edge
Лучшая бесплатная конфигурация
- STT: локальный
- TTS: Edge
Частые проблемы
«Аудиоустройство не найдено»
Установите portaudio.
«Бот подключается, но ничего не слышит»
Проверьте:
- ваш ID пользователя Discord есть в
DISCORD_ALLOWED_USERS - вы не в режиме «без звука»
- привилегированные намерения включены
- у бота есть разрешения на подключение и речь
«Распознаёт, но не говорит»
Проверьте:
- конфигурацию провайдера TTS
- API-ключ / квоту для ElevenLabs или OpenAI
- установку
ffmpegдля путей конвертации Edge
«Whisper выдаёт мусор»
Попробуйте:
- более тихое окружение
- более высокий
silence_threshold - другого провайдера/модель STT
- более короткие и чёткие высказывания
«Работает в личных сообщениях, но не в каналах сервера»
Это часто связано с политикой упоминаний.
По умолчанию боту требуется @упоминание в текстовых каналах сервера Discord, если не настроено иное.
Рекомендуемая настройка на первую неделю
Если вы хотите кратчайший путь к успеху:
- добейтесь работы текстового VibeOS
- установите
vibeos-agent[voice] - используйте голосовой режим CLI с локальным STT и Edge TTS
- затем включите
/voice onв Telegram или Discord - только после этого пробуйте режим голосового канала Discord
Такая последовательность минимизирует область поиска ошибок.