语音交互
OpenClaw 不只是一个文字聊天助手——它支持完整的语音交互体验,包括语音唤醒、连续语音对话和高质量语音合成。本文将介绍如何配置和使用 OpenClaw 的语音功能。
Voice Wake(唤醒词配置)
Voice Wake 允许你通过语音唤醒词激活 AI,就像对 Siri 说”Hey Siri”或对 Alexa 说”Alexa”一样。
工作原理
环境音频流(持续监听)
↓
本地唤醒词检测引擎
↓ 检测到唤醒词
开始录音
↓ 用户说完话
语音转文字(STT)
↓
AI 处理并回复
↓
文字转语音(TTS)播放回复配置唤醒词
# openclaw.yaml
voice:
wake:
# 启用语音唤醒
enabled: true
# 唤醒词(支持多个)
keywords:
- "hey claw"
- "ok claw"
- "你好助手"
# 唤醒灵敏度(0.0-1.0,越高越灵敏但误触率也越高)
sensitivity: 0.5
# 唤醒后的录音最大时长(秒)
maxRecordingSeconds: 30
# 静音检测(用户停止说话后自动结束录音)
silenceDetection:
enabled: true
# 静音多久后结束(毫秒)
thresholdMs: 1500唤醒反馈
voice:
wake:
# 唤醒成功后的反馈
feedback:
# 播放提示音
sound: "~/.openclaw/sounds/wake.wav"
# 或使用 TTS 回复
ttsPrompt: "我在听"Talk Mode(连续语音对话)
Talk Mode 是更沉浸的语音交互模式——进入后无需每次说唤醒词,持续保持语音对话状态。
进入和退出 Talk Mode
# 通过唤醒词进入
"Hey Claw, 进入对话模式"
# 通过命令进入
/talk
# 退出 Talk Mode
"退出对话模式"
"再见"
/talk offTalk Mode 配置
# openclaw.yaml
voice:
talk:
# 启用 Talk Mode
enabled: true
# 自动退出设置
autoExit:
# 静默多久后自动退出(秒)
silenceTimeoutSeconds: 120
# 最大连续对话时长(分钟)
maxDurationMinutes: 30
# Talk Mode 中的 TTS 设置
tts:
# 使用的 TTS 服务
provider: "elevenlabs"
# ElevenLabs 语音 ID
voiceId: "21m00Tcm4TlvDq8ikWAM"
# 语音模型
modelId: "eleven_multilingual_v2"
# 语音参数
stability: 0.5
similarityBoost: 0.8
style: 0.0
useSpeakerBoost: true
# 语音转文字设置
stt:
# STT 提供商
provider: "whisper"
# 语言(留空则自动检测)
language: "zh"
# 模型大小
model: "whisper-1"Talk Mode 行为定制
voice:
talk:
# 对话间的停顿处理
pauseHandling:
# 短暂停顿视为思考中(不中断)
shortPauseMs: 800
# 长停顿视为说完了
longPauseMs: 2000
# 是否允许打断 AI 的回复
interruptible: true
# AI 回复前的过渡提示音
transitionSound: "~/.openclaw/sounds/thinking.wav"ElevenLabs TTS 配置
ElevenLabs 是目前最优秀的 AI 语音合成服务之一,OpenClaw 原生支持与其集成。
基本配置
# openclaw.yaml
voice:
tts:
provider: "elevenlabs"
# API Key(推荐使用环境变量)
apiKey: "${ELEVENLABS_API_KEY}"# 设置 API Key
export ELEVENLABS_API_KEY="your-elevenlabs-api-key"语音选择
ElevenLabs 提供了多种预设语音和自定义语音克隆:
voice:
tts:
provider: "elevenlabs"
# 预设语音 ID 示例
# Rachel (女声, 美式英语): 21m00Tcm4TlvDq8ikWAM
# Adam (男声, 美式英语): pNInz6obpgDQGcFmaJgB
# Bella (女声, 温柔): EXAVITQu4vr4xnSDxMaL
# Antoni (男声, 沉稳): ErXwobaYiN019PkySvjV
voiceId: "21m00Tcm4TlvDq8ikWAM"模型选择
voice:
tts:
# 多语言模型 v2(推荐中文使用)
modelId: "eleven_multilingual_v2"
# 其他可选模型:
# eleven_monolingual_v1 — 英语专用,速度最快
# eleven_multilingual_v1 — 多语言 v1
# eleven_multilingual_v2 — 多语言 v2(质量最好,推荐)
# eleven_turbo_v2 — 低延迟模式
# eleven_turbo_v2_5 — 低延迟增强版语音参数微调
voice:
tts:
provider: "elevenlabs"
voiceId: "21m00Tcm4TlvDq8ikWAM"
modelId: "eleven_multilingual_v2"
# 稳定性(0.0-1.0)
# 低值 = 更有表现力但不稳定
# 高值 = 更稳定但可能单调
stability: 0.5
# 相似度增强(0.0-1.0)
# 高值 = 更接近原始语音
similarityBoost: 0.8
# 风格(0.0-1.0, 仅 v2 模型)
# 高值 = 更有感情和风格
style: 0.0
# 说话人增强
useSpeakerBoost: true
# 输出格式
outputFormat: "mp3_44100_128"
# 可选:mp3_44100_64, mp3_44100_128, mp3_44100_192,
# pcm_16000, pcm_22050, pcm_24000, pcm_44100备用 TTS 提供商
如果不使用 ElevenLabs,OpenClaw 也支持其他 TTS 方案:
# macOS 内置 TTS
voice:
tts:
provider: "system"
# macOS 系统语音
systemVoice: "Ting-Ting" # 中文语音
# OpenAI TTS
voice:
tts:
provider: "openai"
apiKey: "${OPENAI_API_KEY}"
voice: "nova" # alloy, echo, fable, onyx, nova, shimmer
model: "tts-1" # tts-1 或 tts-1-hd平台支持
OpenClaw 的语音功能在不同平台上的支持程度不同。
macOS
macOS 是语音功能支持最完善的平台:
# macOS 完整语音配置
voice:
wake:
enabled: true
keywords: ["hey claw"]
sensitivity: 0.5
talk:
enabled: true
tts:
provider: "elevenlabs"
voiceId: "21m00Tcm4TlvDq8ikWAM"
modelId: "eleven_multilingual_v2"
stt:
provider: "whisper"
language: "zh"
# macOS 特有设置
macos:
# 使用系统麦克风
inputDevice: "default"
# 使用系统扬声器
outputDevice: "default"
# 菜单栏图标
menuBarIcon: true支持的功能:
- Voice Wake(唤醒词检测)
- Talk Mode(连续对话)
- 系统通知集成
- 菜单栏快捷操作
- 系统音频输入/输出
iOS
iOS 上通过 OpenClaw 移动端 App 支持语音:
voice:
# iOS 设置
ios:
# Siri 快捷指令集成
siriShortcuts: true
# 后台语音检测
backgroundListening: false # iOS 限制,仅前台可用
# 触觉反馈
hapticFeedback: trueiOS 支持的功能:
- Talk Mode(App 内)
- Siri 快捷指令触发
- 语音消息发送
- 推送通知语音播报
Android
Android 上通过配套 App 支持:
voice:
# Android 设置
android:
# 使用 Android 语音服务
useSystemStt: false # false = 使用 Whisper
# 通知渠道语音播报
notificationTts: true
# 后台监听(需要权限)
backgroundListening: trueAndroid 支持的功能:
- Talk Mode(App 内和后台)
- 通知语音播报
- 语音消息识别
- Widget 快捷操作
完整配置示例
个人语音助手配置
# openclaw.yaml — 完整语音交互配置
voice:
# 语音唤醒
wake:
enabled: true
keywords:
- "hey claw"
- "你好助手"
sensitivity: 0.5
maxRecordingSeconds: 30
silenceDetection:
enabled: true
thresholdMs: 1500
feedback:
ttsPrompt: "我在"
# Talk Mode
talk:
enabled: true
autoExit:
silenceTimeoutSeconds: 120
maxDurationMinutes: 30
interruptible: true
# TTS 配置
tts:
provider: "elevenlabs"
voiceId: "21m00Tcm4TlvDq8ikWAM"
modelId: "eleven_multilingual_v2"
stability: 0.5
similarityBoost: 0.8
style: 0.0
useSpeakerBoost: true
outputFormat: "mp3_44100_128"
# STT 配置
stt:
provider: "whisper"
language: "zh"
model: "whisper-1"仅 TTS 输出配置(不需要语音输入)
# 只使用语音输出,不监听语音输入
voice:
wake:
enabled: false
talk:
enabled: false
tts:
provider: "elevenlabs"
voiceId: "21m00Tcm4TlvDq8ikWAM"
modelId: "eleven_multilingual_v2"
# 在这些通道中自动使用 TTS
autoChannels:
- "telegram" # Telegram 语音消息
- "discord" # Discord 语音频道调试语音功能
如果语音功能不正常,可以使用以下方法排查:
# 测试 TTS 是否正常工作
openclaw voice test-tts "你好,这是一条测试消息"
# 测试 STT 是否正常工作
openclaw voice test-stt # 录制一段音频并转文字
# 测试唤醒词检测
openclaw voice test-wake # 进入唤醒词测试模式
# 查看音频设备列表
openclaw voice devices
# 查看语音相关日志
openclaw logs | grep -i voice常见问题
- 唤醒词不响应:检查麦克风权限,降低
sensitivity值 - TTS 无声音:确认
ELEVENLABS_API_KEY是否正确,检查输出设备 - STT 识别不准确:明确指定
language: "zh"而非自动检测 - 延迟过高:尝试使用
eleven_turbo_v2_5模型,或切换到本地 TTS
语音交互让 AI 助手从屏幕走进了真实生活。配合 Voice Wake 和 Talk Mode,你可以在做饭、开车或运动时与 AI 自然对话,体验真正的智能助手。
💬 有问题或建议? 欢迎在下方评论区留言讨论。
Last updated on