Использование голосового режима с Hermes
Настоящее руководство практически является дополнением к справочнику по функциям голосового режима.
Если страница с использованием языка, которая может делать голосовой режим, то это руководство показывает, как эффективно его использовать.
Для чего подходит голосовой режим
Голосовой режим особенно полезен, когда: - вам нужен рабочий процесс CLI без использования рук - вы хотите получать голосовые ответы в Telegram или Discord - вы хотите, чтобы Гермес в постоянном голосовом канале Discord для живого общения - вы хотите быстро фиксировать идеи, отлаживать или вести диалог во время прогулки, вместо того, чтобы печатать
Выберите изменение голосового режима
В Гермесе есть три различных режима голосования.
| Режим | Для этого лучше всего подойдет | Платформа |
|---|---|---|
| Интерактивный микрофонный цикл | Личное использование без рук во время программирования или исследований | интерфейс командной строки |
| Голосовые ответы в чате | Голосовые ответы вместе с обычными сообщениями | Телеграмма, Дискорд |
| Бот в живом голосовом канале | Групповой или личный живой разговор в голосовом канале | Голосовые соединения Discord |
Хороший путь: 1. сначала настройте текстовый режим 2. затем записал голосовые ответы 3. перейдите к голосовому каналу Discord в последнюю очередь, если хотите получить полный опыт.
Шаг 1: убедитесь, что обычный Hermes сначала работает
Прежде чем касаться голосового режима, проверьте, что: - Гермес запускается - настроение вашего провайдера - агент может нормально жить по текстовым запросам
hermes
Задайте что-нибудь простое:
Какие инструменты у тебя есть?
Если это все еще не стабильно, сначала исправьте текстовый режим.
Шаг 2: установите дополнительные пакеты
Микрофон CLI + тестирование
pip install "hermes-agent[voice]"
Платформы обмена сообщениями
pip install "hermes-agent[messaging]"
Премиум TTS ElevenLabs
pip install "hermes-agent[tts-premium]"
Локальный NeuTTS (опционально)
python -m pip install -U neutts[all]
Всё
pip install "hermes-agent[all]"
Шаг 3: установка системных в зависимости
macOS
brew install portaudio ffmpeg opus
brew install espeak-ng
Убунту/Дебиан
sudo apt install portaudio19-dev ffmpeg libopus0
sudo apt install espeak-ng
Почему они важны:
- portaudio → вход с микрофона / звук для голосового режима CLI
- ffmpeg → преобразование аудио для TTS и доставка сообщений
- opus → поддержка голосового кодека Discord
- espeak-ng → бэкенд фонмизатора для NeuTTS
Шаг 4: выбор провайдеров STT и TTS
Гермес как локальные, так и облачные стеки речи.
Самая простая/дешевая настройка
Используйте локальный STT и бесплатный Edge TTS:
- Провайдер STT: местный
- Провайдер TTS: edge
Обычно это лучшее место для начала.
Пример окружения файла
Добавьте в ~/.hermes/.env:
# Облачные STT опции (для local ключ не нужен)
GROQ_API_KEY=***
VOICE_TOOLS_OPENAI_KEY=***
# Премиум TTS (опционально)
ELEVENLABS_API_KEY=***
Рекомендации провайдерам
Распознание речи (СТТ)
local→ лучший вариант по умолчанию для конфиденциальности и нулевой стоимостиgroq→ очень быстрое облачное распознаваниеopenai→ хороший платный запасной вариант
Синтез речи (TTS)
edge→ доступен и достаточно хорош для большинства пользователейneuts→ бесплатный локальный TTS на устройствеelevenlabs→ лучшее качествоopenai→ хороший компромиссмистраль→ мультиязычный, нативный Opus
Если вы используете hermes setup
Если вы выберите NeuTTS в мастере настроек, Гермес сначала установит «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
Включите его
Запустите Гермес:
hermes
Внутри CLI:
/voice on
Процесс записи
Клавиша по умолчанию:
- Ctrl+B
Рабочий процесс:
1. нажмите Ctrl+B
2. говорит
3. Дождитесь автоматической остановки записи об обнаружении тишины.
4. Гермес распознает и отвечает
5. если TTS включен, он озвучивает ответ
6. Цикл может автоматически переключаться для непрерывного использования.
Полезные команды
/voice
/voice on
/voice off
/voice tts
/voice status
Хорошие рабочие процессы в CLI
Отладка на ходу
Скажите:
У меня постоянно возникает ошибка прав доступа docker. Помоги мне ее отладить.
Затем продолжайте без помощи рук: - «Прочитай всю ошибку еще раз» - "Объясни первопричину более простыми словами" - "Теперь дай мне точное исправление"
Исследования / мозговой штурм
Отлично подходит для: - гуляю во время размышлений - диктовки полусформированных идей - просбы к Гермесу структурировать ваши мысли в кратчайшие сроки.
Доступность / сеансы с низким набором текста
Если печатать неудобно, голосовой режим — один из самых быстрых в полном цикле Гермеса.
Настройка поведения CLI
Порог тишины
Если Гермес начинает/остается слишком агрессивно, настройтесь:
voice:
silence_threshold: 250
Более высокий порог = меньшая чувствительность.
Длительность тишины
Если вы делаете длинные паузы между предложениями, увеличьте:
voice:
silence_duration: 4.0
Клавиша записи
Если Ctrl+B конфликтует с вашим терминалом или привычками tmux:
voice:
record_key: "ctrl+space"
Вариант использования 2: голосовые ответы в Telegram или Discord
Этот режим проще, чем полноценные голосовые композиции.
Гермес остается обычным чат-ботом, но может озвучивать ответы.
Закрыть шлюз
hermes gateway
Включите голосовые ответы
В Telegram или Discord:
/voice on
или
/voice tts
Режимы
| Режим | Значение |
|---|---|
выключено |
только текст |
voice_only |
озвучивать только тогда, когда пользователь отправил голосовое сообщение |
все |
озвучивать каждый ответ |
Когда использовать какой режим
/voice on, если вы хотите получать ответы только на сообщения, отправленные голосом./voice tts, если вы хотите постоянного голосового ассистента
Хорошие рабочие процессы в мессенджерах
Ассистент Telegram на телефоне
Используйте, когда: - Вы находитесь вдали от компьютера. - вы хотите отправить голосовые заметки и получить быстрые ответы на голоса - Вы хотите, чтобы Гермес функционировал как портативный исследователь или операционный ассистент.
Личные сообщения Discord с голосовым выводом
Полезно, когда вы лично общаетесь без упоминаний на нужных вам серверах.
Вариант использования 3: голосовые соединения Discord
Это самый продвинутый режим.
Гермес поддерживает голосовой канал Discord, слушает речь пользователя, распознает ее, запускает обычный конвейер-агента и озвучивает ответы обратно в канал.
Необходимые разрешения Discord
В дополнениях к настройке настройки текстового бота убедитесь, что у бота есть: - Подключаться - Говорить - желательно использовать голосовую активность
Также привилегированные намерения разработчика портала: - Намерение присутствия - Намерение участников сервера - Цель содержания сообщения
Подключение и отключение
В текстах канала Discord, где присутствует бот:
/voice join
/voice leave
/voice status
Что происходит при подключении
- пользователи говорят в голосовом канале
- Гермес определил терминологию
- расшифровки публикуются в связанном текстовом канале
- За текст и аудио отвечает Гермес.
- текстовый канал — это тот, где была введена команда
/voice join
Лучшая практика использования голосовых каналов Discord
- держите
DISCORD_ALLOWED_USERSстрогим - сначала вскормите выделенный тестовый канал бота
- проверьте работу STT и TTS в обычном голосовом режиме текстового чата, прежде чем пробовать режим голосового канала
Рекомендации по качеству голоса
Настройка наилучшего качества
- STT: локальный
large-v3или Groqwhisper-large-v3 - ТТС: ElevenLabs
Настройка наилучшей скорости/удобства
- STT: локальный
baseили Groq - ТТС: Край
Настройка с нулевой стоимостью
- STT: местный
- ТТС: Край
Распространенные сбои
"Аудиоустройство не найдено"
Установите portaudio.
"Бот составлен, но ничего не слышит"
проверить:
- ваш идентификатор пользователя Discord находится в DISCORD_ALLOWED_USERS
- вы не в режиме без звука
- привилегированные намерения включение
- у бота есть разрешение Подключиться/Говорить
«Распознает, но не говорит»
проверить:
-конфигурация провайдера ТТС
- API-ключ/квоту для ElevenLabs или OpenAI
- установка ffmpeg для способов конвертации Edge
«Шепот выдает мусор»
Форма:
- более тихое окружение
- более высокий silence_threshold
- другого провайдера/модель STT
- более короткие и четкие высказывания
"Работает в личных сообщениях, но не на серверных каналах"
Это часто связано с политическими воспоминаниями.
По умолчанию боту требуется @упоминание в текстовых каналах сервера Discord, если не настроено иное.
Предлагаемая настройка на первую неделю
Если вы хотите кратчайший путь к успеху:
- Добавьте работы текстового Гермеса
- установите
hermes-agent[voice] - использовать голосовой режим CLI с локальным STT + Edge TTS.
- затем включите
/voice onв Telegram или Discord - только после этой пробуйте проголосовать сезонного канала Discord
Такое последовательность действий позволяет минимизировать область отладки.