Sử dụng Chế độ giọng nói với Hermes
Hướng dẫn này là người bạn đồng hành thiết thực với Tham khảo tính năng Chế độ giọng nói.
Nếu trang tính năng giải thích những gì chế độ giọng nói có thể thực hiện thì hướng dẫn này sẽ chỉ ra cách sử dụng nó thực sự hiệu quả.
Chế độ giọng nói nào phù hợp
Chế độ giọng nói đặc biệt hữu ích khi:
- bạn muốn có quy trình làm việc CLI rảnh tay
- bạn muốn có phản hồi bằng giọng nói trong Telegram hoặc Discord
- bạn muốn Hermes ngồi trong kênh thoại Discord để trò chuyện trực tiếp
- bạn muốn nắm bắt, gỡ lỗi hoặc qua lại ý tưởng nhanh chóng trong khi đi bộ xung quanh thay vì gõ
Chọn thiết lập chế độ giọng nói của bạn
Thực sự có ba trải nghiệm giọng nói khác nhau trong Hermes.
| Chế độ | Tốt nhất cho | Nền tảng |
|---|---|---|
| Vòng micro tương tác | Sử dụng rảnh tay cá nhân trong khi viết mã hoặc nghiên cứu | CLI |
| Trả lời bằng giọng nói trong trò chuyện | Phản hồi bằng giọng nói cùng với tin nhắn thông thường | Điện tín, Bất hòa |
| Bot kênh thoại trực tiếp | Cuộc trò chuyện trực tiếp theo nhóm hoặc cá nhân trong VC | Kênh thoại Discord |
Một con đường tốt là:
- làm cho văn bản hoạt động trước
- bật trả lời bằng giọng nói thứ hai
- chuyển sang kênh thoại Discord cuối cùng nếu bạn muốn có trải nghiệm đầy đủ
Bước 1: Đảm bảo Hermes bình thường hoạt động trước
Trước khi chạm vào chế độ giọng nói, hãy xác minh rằng:
- Hermes bắt đầu
- nhà cung cấp của bạn đã được cấu hình
- đại lý có thể trả lời lời nhắc văn bản một cách bình thường
hermes
Hãy hỏi điều gì đó đơn giản:
What tools do you have available?
Nếu điều đó vẫn chưa ổn định, trước tiên hãy sửa chế độ văn bản.
Bước 2: cài đặt các tính năng bổ sung phù hợp
Micrô CLI + phát lại
pip install "hermes-agent[voice]"
Nền tảng nhắn tin
pip install "hermes-agent[messaging]"
Premium ElevenLabs TTS
pip install "hermes-agent[tts-premium]"
NeuTTS cục bộ (tùy chọn)
python -m pip install -U neutts[all]
Mọi thứ
pip install "hermes-agent[all]"
Bước 3: cài đặt các phụ thuộc hệ thống
###macOS
brew install portaudio ffmpeg opus
brew install espeak-ng
Ubuntu / Debian
sudo apt install portaudio19-dev ffmpeg libopus0
sudo apt install espeak-ng
Tại sao những điều này lại quan trọng:
portaudio→ đầu vào / phát lại micrô cho chế độ giọng nói CLIffmpeg→ chuyển đổi âm thanh cho TTS và gửi tin nhắnopus→ Hỗ trợ codec giọng nói Discordespeak-ng→ phụ trợ phiên âm cho NeuTTS
Bước 4: chọn nhà cung cấp STT và TTS
Hermes hỗ trợ cả ngăn xếp lời nói cục bộ và đám mây.
Thiết lập dễ nhất/rẻ nhất
Sử dụng STT cục bộ và Edge TTS miễn phí:
- Nhà cung cấp STT:
local - Nhà cung cấp TTS:
edge
Đây thường là nơi tốt nhất để bắt đầu.
Ví dụ về tệp môi trường
Thêm vào ~/.hermes/.env:
# Cloud STT options (local needs no key)
GROQ_API_KEY=***
VOICE_TOOLS_OPENAI_KEY=***
# Premium TTS (optional)
ELEVENLABS_API_KEY=***
Khuyến nghị của nhà cung cấp
Chuyển giọng nói thành văn bản
local→ mặc định tốt nhất cho quyền riêng tư và sử dụng không tốn phígroq→ sao chép đám mây rất nhanhopenai→ dự phòng được trả lương cao
Chuyển văn bản thành giọng nói
edge→ miễn phí và đủ tốt cho hầu hết người dùngneutts→ TTS miễn phí cục bộ/trên thiết bịElevenlabs→ chất lượng tốt nhấtopenai→ nền tảng tốt
Nếu bạn sử dụng ``hermes setup`
Nếu bạn chọn NeuTTS trong trình hướng dẫn cài đặt, Hermes sẽ kiểm tra xem neutts đã được cài đặt chưa. Nếu nó bị thiếu, trình hướng dẫn sẽ cho bạn biết NeuTTS cần gói Python neutts và gói hệ thống espeak-ng, đề nghị cài đặt chúng cho bạn, cài đặt espeak-ng bằng trình quản lý gói nền tảng của bạn, rồi chạy:
python -m pip install -U neutts[all]
Nếu bạn bỏ qua quá trình cài đặt đó hoặc cài đặt không thành công, trình hướng dẫn sẽ quay lại Edge TTS.
Bước 5: cấu hình đề xuất
voice:
record_key: "ctrl+b"
max_recording_seconds: 120
auto_tts: false
silence_threshold: 200
silence_duration: 3.0
stt:
provider: "local"
local:
model: "base"
tts:
provider: "edge"
edge:
voice: "en-US-AriaNeural"
Đây là một mặc định bảo thủ tốt cho hầu hết mọi người.
Thay vào đó, nếu bạn muốn TTS cục bộ, hãy chuyển khối tts sang:
tts:
provider: "neutts"
neutts:
ref_audio: ''
ref_text: ''
model: neuphonic/neutts-air-q4-gguf
device: cpu
Trường hợp sử dụng 1: Chế độ giọng nói CLI
Bật nó lên
Bắt đầu Hermes:
hermes
Bên trong CLI:
/voice on
Luồng ghi
Khóa mặc định:
Ctrl+B
Quy trình làm việc:
- nhấn
Ctrl+B - nói
- chờ phát hiện im lặng để tự động dừng ghi
- Hermes phiên âm và phản hồi
- nếu TTS được bật, nó sẽ đưa ra câu trả lời
- vòng lặp có thể tự động khởi động lại để sử dụng liên tục
Các lệnh hữu ích
/voice
/voice on
/voice off
/voice tts
/voice status
Quy trình làm việc CLI tốt
Gỡ lỗi trực tiếp
Nói:
I keep getting a docker permission error. Help me debug it.
Sau đó tiếp tục rảnh tay:
- "Đọc lại lỗi cuối cùng"
- "Giải thích nguyên nhân gốc rễ bằng những thuật ngữ đơn giản hơn"
- "Bây giờ hãy cho tôi cách khắc phục chính xác"
Nghiên cứu/ động não
Tuyệt vời cho:
- vừa đi vừa suy nghĩ
- đưa ra những ý tưởng chưa hình thành
- yêu cầu Hermes sắp xếp suy nghĩ của bạn theo thời gian thực
Khả năng truy cập / phiên gõ ít
Nếu việc gõ phím không thuận tiện thì chế độ giọng nói là một trong những cách nhanh nhất để duy trì vòng lặp Hermes đầy đủ.
Điều chỉnh hành vi CLI
Ngưỡng im lặng
Nếu Hermes bắt đầu/dừng lại quá mạnh mẽ, hãy điều chỉnh:
voice:
silence_threshold: 250
Ngưỡng cao hơn = ít nhạy cảm hơn.
Thời gian im lặng
Nếu bạn tạm dừng nhiều giữa các câu, hãy tăng:
voice:
silence_duration: 4.0
Phím ghi
Nếu Ctrl+B xung đột với thiết bị đầu cuối hoặc thói quen tmux của bạn:
voice:
record_key: "ctrl+space"
Trường hợp sử dụng 2: trả lời bằng giọng nói trong Telegram hoặc Discord
Chế độ này đơn giản hơn các kênh thoại đầy đủ.
Hermes vẫn là một bot trò chuyện bình thường nhưng có thể nói câu trả lời.
Khởi động cổng
hermes gateway
Bật trả lời bằng giọng nói
Bên trong Telegram hoặc Discord:
/voice on
hoặc
/voice tts
Chế độ
| Chế độ | Ý nghĩa |
|---|---|
tắt | chỉ văn bản |
chỉ_giọng nói | chỉ nói khi người dùng gửi giọng nói |
tất cả | nói từng câu trả lời |
Khi nào nên sử dụng chế độ nào
/voice onnếu bạn chỉ muốn trả lời bằng giọng nói cho các tin nhắn bắt nguồn từ giọng nói/voice ttsnếu bạn muốn có một trợ lý nói hoàn toàn mọi lúc
Quy trình nhắn tin tốt
Trợ lý Telegram trên điện thoại của bạn
Sử dụng khi:
- bạn đang ở xa máy của mình
- bạn muốn gửi ghi chú bằng giọng nói và nhận được câu trả lời nhanh chóng
- bạn muốn Hermes hoạt động như một trợ lý nghiên cứu hoặc hoạt động di động
Discord DM có đầu ra bằng giọng nói
Hữu ích khi bạn muốn tương tác riêng tư mà không có hành vi đề cập đến kênh máy chủ.
Trường hợp sử dụng 3: Kênh thoại Discord
Đây là chế độ tiên tiến nhất.
Hermes tham gia Discord VC, lắng nghe bài phát biểu của người dùng, phiên âm nó, chạy quy trình tác nhân thông thường và nói các câu trả lời trở lại kênh.
Quyền Discord bắt buộc
Ngoài việc thiết lập bot văn bản thông thường, hãy đảm bảo bot có:
- Kết nối
- Nói chuyện
- tốt nhất là Sử dụng Hoạt động bằng giọng nói
Đồng thời kích hoạt các ý định đặc quyền trong Cổng thông tin dành cho nhà phát triển:
- Ý định hiện diện
- Ý định của thành viên máy chủ
- Ý định nội dung tin nhắn
Tham gia và rời đi
Trong kênh văn bản Discord có bot:
/voice join
/voice leave
/voice status
Điều gì xảy ra khi tham gia
- người dùng nói trong VC
- Hermes phát hiện ranh giới lời nói
- bảng điểm được đăng trong kênh văn bản liên quan
- Hermes trả lời bằng văn bản và âm thanh
- kênh văn bản là kênh mà
/voice joinđược phát hành
Các phương pháp hay nhất để sử dụng Discord VC
- giữ chặt
DISCORD_ALLOWED_USERS - lúc đầu sử dụng kênh bot/thử nghiệm chuyên dụng
- xác minh STT và TTS hoạt động ở chế độ giọng nói trò chuyện văn bản thông thường trước khi thử chế độ VC
Đề xuất chất lượng giọng nói
Thiết lập chất lượng tốt nhất
- STT: local
large-v3hoặc Groqwhisper-large-v3 - TTS: ElevenLabs
Thiết lập tốc độ/tiện lợi tốt nhất
- STT:
basecục bộ hoặc Groq - TTS: Cạnh
Thiết lập không tốn phí tốt nhất
- STT: địa phương
- TTS: Cạnh
Các chế độ lỗi thường gặp
"Không tìm thấy thiết bị âm thanh"
Cài đặt portaudio.
"Bot tham gia nhưng không nghe thấy gì"
Kiểm tra:
- ID người dùng Discord của bạn nằm trong
DISCORD_ALLOWED_USERS - bạn không bị tắt tiếng
- ý định đặc quyền được kích hoạt
- bot có quyền Kết nối/Nói
"Nó phiên âm nhưng không nói"
Check:
- TTS provider config
- API key / quota for ElevenLabs or OpenAI
ffmpeginstall for Edge conversion paths
"Whisper outputs garbage"
Try:
- quieter environment
- higher
silence_threshold - different STT provider/model
- shorter, clearer utterances
"It works in DMs but not in server channels"
That is often mention policy.
By default, the bot needs an @mention in Discord server text channels unless configured otherwise.
Suggested first-week setup
If you want the shortest path to success:
- get text Hermes working
- install
hermes-agent[voice] - use CLI voice mode with local STT + Edge TTS
- then enable
/voice onin Telegram or Discord - only after that, try Discord VC mode
That progression keeps the debugging surface small.