English | 中文
为 OpenClaw 打造的离线语音转文字插件 —— 快、准、轻、私
收到语音消息,1 秒出文字。中文识别准确率高,支持中/英/日/韩/粤五语,模型仅 228MB,完全离线运行。
官方 OpenClaw 语音插件基于 OpenAI Whisper,面向国际用户设计,覆盖 100+ 语言。但对于中文用户来说,它有一个尴尬的两难困境:
要么慢,要么占内存 —— 而且中文识别还不够好。
- ❌ 冷启动模式:每条语音要等 30~40 秒才能转写完成,聊天体验严重割裂
- ❌ 常驻内存模式:启动速度改善,但要常年占用 1.6GB 左右内存,对于使用 VPS 部署的用户来说负担很重
- ❌ 中文识别:Whisper 为 100+ 语言平衡设计,中文不是强项,粤语更是不支持
SenseVoice 一次性解决所有问题:模型 + 运行时总共只要 287MB,每次冷启动仅需 ~1 秒就能完成转写 —— 快到根本不需要常驻内存。发条语音过来,回复几乎瞬间出现,和打字一样自然。
下图为安装 openclaw-sensevoice 插件后的 VPS 实际资源占用,轻量无负担:
| 官方插件 (Whisper) | ⚡ SenseVoice | |
|---|---|---|
| 一条语音的等待时间 | 冷启动 30~40 秒 | ~1 秒 |
| 模型 + 运行时体积 | ~1.5GB | 287MB |
| 需要常驻内存? | 是(否则太慢) | 不需要(冷启动即够快) |
| 中文识别质量 | 一般(国际化优先) | 专为中文优化 |
| 粤语支持 | ❌ | ✅ 原生支持 |
| 推理引擎 | Python / PyTorch | Rust + ONNX Runtime |
| 隐私 | ✅ 离线 | ✅ 离线 |
- 🚀 秒级响应 — 冷启动到输出结果仅 ~1 秒,无需常驻内存,发语音和打字一样顺畅
- 🌏 五语转写 — 中文、英语、日语、韩语、粤语,语言自动检测
- 🧠 极致轻量 — INT8 量化模型仅 228MB,全套安装不到 300MB,是 Whisper 的 1/5
- 🦀 Rust 原生 — 编译为原生二进制 + ONNX Runtime,无 Python 依赖,启动零开销
- 🔒 完全离线 — 音频数据不出设备,零隐私风险
- 📦 一键安装 — 自动下载模型、配置 OpenClaw,开箱即用
openclaw plugins install https://github.com/xxtluuu/openclaw-sensevoice/releases/download/v0.2.0/openclaw-sensevoice-v0.2.0.tar.gz安装后运行一次 setup,自动下载模型并配置:
/sensevoice setup
Setup 完成后,直接发送语音消息即可 —— 插件会自动转写语音内容,AI 会基于转写文本进行回复,无需任何额外操作。
curl -fsSL https://raw.githubusercontent.com/xxtluuu/openclaw-sensevoice/main/install.sh | bash自动检测平台、下载预编译二进制和模型到 ~/.openclaw/。
git clone https://github.com/xxtluuu/openclaw-sensevoice.git
cd openclaw-sensevoice/rust
cargo build --release安装并 setup 完成后,语音转写完全自动化:
你发送语音消息 → 插件自动转写(~1秒) → AI 基于转写内容回复
不需要手动调用任何命令。发语音就像打字一样,AI 会直接理解你说的内容并回复。
测试环境:Apple Silicon (M 系列),macOS,纯 CPU 推理,含模型加载。
| 语言 | 音频时长 | 转写耗时 | 实时倍率 |
|---|---|---|---|
| 🇨🇳 中文 | 5.6 秒 | 1.09 秒 | 5.1x |
| 🇺🇸 英语 | 7.2 秒 | 1.16 秒 | 6.2x |
| 🇯🇵 日语 | 7.2 秒 | 1.15 秒 | 6.2x |
| 🇰🇷 韩语 | 4.6 秒 | 1.06 秒 | 4.3x |
| 🇭🇰 粤语 | 5.1 秒 | 1.10 秒 | 4.7x |
以上耗时包含完整流程:模型加载 → 音频解码 → 推理 → 输出。实际日常使用中,系统文件缓存会让后续调用更快。
| 命令 | 说明 |
|---|---|
/sensevoice setup |
下载模型(~228MB)并自动配置 openclaw.json |
/sensevoice status |
检查二进制、模型、配置状态 |
/sensevoice test <文件> |
对指定音频文件进行转写测试 |
| 系统 | 架构 | 说明 |
|---|---|---|
| macOS | ARM64 | Apple Silicon (M1/M2/M3/M4) |
| macOS | x86_64 | Intel Mac |
| Linux | x86_64 | 服务器 / 台式机 |
| Linux | ARM64 | 树莓派 / ARM 服务器 |
官方 Whisper 插件的技术栈是 Python + PyTorch。Python 生态虽然成熟,但作为常驻后台服务来说有天然短板:
| Python (Whisper) | Rust (SenseVoice) | |
|---|---|---|
| 冷启动 | 慢 — 需要加载 Python 解释器 → 导入数十个模块 → 加载模型 | 快 — 原生二进制直接执行,无解释器开销 |
| 运行时依赖 | Python 3.x + pip + PyTorch + 若干依赖包 | 零依赖 — 单个二进制 + 3 个动态库,开箱即用 |
| 内存占用 | Python 解释器 + GC + PyTorch = 高内存底噪 | 精确内存控制 — 无 GC,用完即释放 |
| 分发复杂度 | 需要管理虚拟环境、包版本冲突 | 一个 tar.gz 解压即用 — 不污染系统环境 |
| 跨平台 | 不同平台的 PyTorch 安装体验差异大 | 预编译二进制 — 4 平台 CI 自动构建 |
💡 简单说:Rust 方案让语音转写变成了"调用一个命令行工具"这么简单的事。不需要装 Python,不需要管虚拟环境,不需要担心包冲突 —— 下载、解压、运行,完事。
模型查找顺序:
$SENSEVOICE_MODEL_DIR环境变量<二进制目录>/../model/(插件布局)~/.openclaw/models/(标准位置)
安装体积:二进制 + 动态库 ~59MB,模型 ~228MB,总计约 287MB。
macOS 用户:未签名二进制需要解除 Gatekeeper 隔离,安装脚本已自动处理(xattr -cr)。
之前在桌面端使用 Claude Code 都是用口喷(语音输入),体验非常畅快。但换到 OpenClaw 在手机上通过 IM 使用时,语音体验反而变差了 —— 转写慢、等待久,完全不是一回事。
作为 sayup.ai 的开发者,我直接把 sayup 的核心原理移植了过来 —— 一样的技术栈,一样的速度体验。这太理所应当了。
如果你也希望在桌面端享受畅快的语音输入体验,欢迎下载 macOS 客户端:www.sayup.ai(Windows 端因设备有限,部分机型可能不稳定)。
关注我的 X 账号获取最新动态:@luuu2024
MIT
