본문으로 건너뛰기

Hermes에서 음성 모드 사용

이 가이드는 음성 모드 기능 참조의 실용적인 동반자입니다.

기능 페이지에서 음성 모드가 무엇을 할 수 있는지 설명했다면, 이 가이드에서는 실제로 음성 모드를 잘 사용하는 방법을 보여줍니다.

어떤 음성 모드가 좋은가요?

음성 모드는 다음과 같은 경우에 특히 유용합니다.

  • 핸즈프리 CLI 워크플로우를 원합니다
  • Telegram이나 Discord에서 음성 응답을 원합니다
  • 실시간 대화를 위해 Hermes가 Discord 음성 채널에 앉아 있기를 원합니다
  • 타이핑하는 대신 돌아다니면서 빠른 아이디어 캡처, 디버깅 또는 앞뒤 이동을 원하는 경우

음성 모드 설정을 선택하세요

헤르메스에는 실제로 세 가지 다른 음성 경험이 있습니다.

모드다음에 가장 적합플랫폼
대화형 마이크 루프코딩이나 조사 중 개인 핸즈프리 사용CLI
채팅에서 음성 응답일반 메시지와 함께 음성 응답텔레그램, 디스코드
라이브 음성 채널 봇VC의 그룹 또는 개인 실시간 대화디스코드 음성 채널

좋은 경로는 다음과 같습니다.

  1. 먼저 텍스트를 작동시키세요
  2. 두 번째로 음성 답장 활성화
  3. 완전한 경험을 원한다면 마지막으로 Discord 음성 채널로 이동하세요

1단계: 먼저 일반 Hermes가 작동하는지 확인하세요.

음성 모드를 터치하기 전에 다음을 확인하세요.

  • 헤르메스 시작
  • 귀하의 공급자가 구성되었습니다
  • 상담원은 문자 메시지에 정상적으로 응답할 수 있습니다.
hermes

간단한 질문:

What tools do you have available?

아직 확실하지 않다면 먼저 텍스트 모드를 수정하세요.

2단계: 올바른 추가 기능 설치

CLI 마이크 + 재생

pip install "hermes-agent[voice]"

메시징 플랫폼

pip install "hermes-agent[messaging]"

프리미엄 일레븐랩스 TTS

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용 Phonemizer 백엔드

4단계: STT 및 TTS 제공업체 선택

Hermes는 로컬 및 클라우드 음성 스택을 모두 지원합니다.

가장 쉽고 저렴한 설정

로컬 STT 및 무료 Edge TTS를 사용하세요.

  • STT 제공자: local
  • TTS 제공자: edge

일반적으로 시작하기 가장 좋은 곳은 여기입니다.

환경 파일 예시

~/.hermes/.env에 추가:

# Cloud STT options (local needs no key)
GROQ_API_KEY=***
VOICE_TOOLS_OPENAI_KEY=***

# Premium TTS (optional)
ELEVENLABS_API_KEY=***

공급자 권장 사항

음성-텍스트

  • local → 개인 정보 보호 및 무료 사용을 위한 최상의 기본값
  • groq → 매우 빠른 클라우드 전사
  • openai → 좋은 유료 대체

텍스트 음성 변환

  • edge → 무료이며 대부분의 사용자에게 충분합니다.
  • neutts → 무료 로컬/기기 내 TTS
  • elevenlabs → 최고의 품질
  • openai → 좋은 중간 지점
  • mistral → 다국어, 네이티브 Opus

hermes setup을 사용하는 경우

설정 마법사에서 NeuTTS를 선택하면 Hermes는 neutts이 이미 설치되어 있는지 확인합니다. 누락된 경우 마법사는 NeuTTS에 Python 패키지 neutts 및 시스템 패키지 espeak-ng이 필요하다고 알리고 이를 설치하겠다고 제안한 후 플랫폼 패키지 관리자를 사용하여 espeak-ng을 설치한 후 다음을 실행합니다.

python -m pip install -U neutts[all]

해당 설치를 건너뛰거나 실패하면 마법사는 Edge TTS로 대체됩니다.

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 워크플로우

워크업 디버깅

말하세요:

I keep getting a docker permission error. Help me debug it.

그런 다음 핸즈프리로 계속하세요.

  • "마지막 오류를 다시 읽어보세요."
  • "간단한 용어로 근본 원인을 설명하십시오"
  • "이제 정확한 해결책을 알려주세요."

연구/브레인스토밍

다음에 적합합니다:

  • 생각하면서 돌아다니다
  • 불완전한 아이디어를 받아쓰기
  • Hermes에게 실시간으로 생각을 구조화하도록 요청

접근성 / 입력이 적은 세션

입력이 불편한 경우 음성 모드는 전체 Hermes 루프를 유지하는 가장 빠른 방법 중 하나입니다.

CLI 동작 튜닝

침묵의 한계점

Hermes가 너무 공격적으로 시작/중지되면 다음을 조정하세요.

voice:
silence_threshold: 250

임계값이 높을수록 민감도가 낮아집니다.

침묵 기간

문장 사이에 많이 멈춘다면 다음을 늘리세요.

voice:
silence_duration: 4.0

레코드 키

Ctrl+B이 터미널 또는 tmux 습관과 충돌하는 경우:

voice:
record_key: "ctrl+space"

사용 사례 2: Telegram 또는 Discord의 음성 응답

이 모드는 전체 음성 채널보다 간단합니다.

Hermes는 일반 채팅 봇으로 유지되지만 답변을 말할 수 있습니다.

게이트웨이 시작

hermes gateway

음성 답장 켜기

텔레그램이나 디스코드 내부:

/voice on

or

/voice tts

모드

모드의미
off텍스트만
voice_only사용자가 음성을 보낼 때만 말하세요.
all모든 대답을 말하라

언제 어떤 모드를 사용해야 하는가

  • /voice on 음성 메시지에 대해서만 음성 응답을 원하는 경우
  • /voice tts 항상 완전한 음성 어시스턴트를 원하는 경우

좋은 메시징 작업 흐름

휴대폰의 전보 도우미

다음과 같은 경우에 사용하세요:

  • 당신은 당신의 기계에서 멀리 떨어져 있습니다
  • 음성 메모를 보내고 빠른 음성 응답을 받고 싶습니다.
  • Hermes가 휴대용 연구 또는 작전 보조원처럼 기능하기를 원합니다.

음성 출력으로 DM을 Discord

서버 채널 언급 동작 없이 비공개 상호 작용을 원할 때 유용합니다.

사용 사례 3: Discord 음성 채널

가장 발전된 모드입니다.

Hermes는 Discord VC에 합류하여 사용자 음성을 듣고 이를 기록하고 일반 에이전트 파이프라인을 실행하고 응답을 채널에 다시 말합니다.

필수 디스코드 권한

일반적인 텍스트 봇 설정 외에도 봇이 다음을 갖추고 있는지 확인하세요.

  • 연결하다
  • 말하기
  • 바람직하게는 음성 활동을 사용하십시오

또한 개발자 포털에서 권한 있는 의도를 활성화합니다.

  • 존재 의도
  • 서버 구성원 의도
  • 메시지 내용 의도

가입 및 탈퇴

봇이 있는 Discord 텍스트 채널에서:

/voice join
/voice leave
/voice status

가입하면 어떻게 되나요?

  • 사용자는 VC에서 말합니다.
  • Hermes는 음성 경계를 감지합니다.
  • 성적표는 관련 텍스트 채널에 게시됩니다.
  • Hermes는 텍스트와 오디오로 응답합니다.
  • 텍스트 채널은 /voice join이 발행된 채널입니다.

Discord VC 사용 모범 사례

  • DISCORD_ALLOWED_USERS을 단단히 유지하세요
  • 처음에는 전용 봇/테스트 채널을 사용하세요.
  • VC 모드를 시도하기 전에 일반 텍스트 채팅 음성 모드에서 STT 및 TTS가 작동하는지 확인하세요.

음성 품질 권장 사항

최고의 품질 설정

  • STT: 로컬 large-v3 또는 Groq whisper-large-v3
  • TTS: 일레븐랩스

최고의 속도/편의성 설정

  • STT: 로컬 base 또는 Groq
  • TTS: 엣지

최고의 제로 비용 설정

  • STT: 로컬
  • TTS: 엣지

일반적인 실패 모드

"오디오 장치를 찾을 수 없습니다"

portaudio을 설치합니다.

"봇이 참여했지만 아무 소리도 듣지 못합니다"

확인:

  • 귀하의 Discord 사용자 ID는 DISCORD_ALLOWED_USERS에 있습니다.
  • 당신은 음소거되지 않았습니다
  • 권한 있는 의도가 활성화되었습니다.
  • 봇에는 연결/말하기 권한이 있습니다

"기록은 되지만 말하지는 않습니다"

확인:

  • TTS 공급자 구성
  • ElevenLabs 또는 OpenAI에 대한 API 키/할당량
  • ffmpeg Edge 변환 경로용 설치

"속삭임은 쓰레기를 낳는다"

시도해 보세요:

  • 더 조용한 환경
  • 더 높은 silence_threshold
  • 다른 STT 제공업체/모델
  • 더 짧고 명확한 발언

"DM에서는 작동하지만 서버 채널에서는 작동하지 않습니다."

그것은 종종 정책을 언급하는 것입니다.

기본적으로 달리 구성하지 않는 한 봇은 Discord 서버 텍스트 채널에 @mention이 필요합니다.

첫 주 설정 제안

성공으로 가는 최단 경로를 원한다면:

  1. Hermes에게 문자 메시지를 보내줘
  2. hermes-agent[voice] 설치
  3. 로컬 STT + Edge TTS와 함께 CLI 음성 모드 사용
  4. 그런 다음 Telegram 또는 Discord에서 /voice on을 활성화하세요.
  5. 그 후에 Discord VC 모드를 사용해 보세요

이러한 진행은 디버깅 표면을 작게 유지합니다.