← Back to Plugins
Voice

Sensevoice

xxtluuu By xxtluuu ⭐ 2 stars 👁 85 views ▲ 0 votes

⚡ Offline speech-to-text plugin for OpenClaw — 1s cold start, 228MB model, Chinese-optimized. Powered by SenseVoice + Rust + ONNX Runtime. 离线语音转文字插件,秒级响应,中文优化,支持中/英/日/韩/粤五语。

Homepage GitHub

Install

openclaw plugins install https://github.com/falebao/openclaw-sensevoice/releases/download/v0.2.0/openclaw-sensevoice-v0.2.0.tar.gz

README

[English](README_EN.md) | 中文

# ⚡ openclaw-sensevoice

**为 OpenClaw 打造的离线语音转文字插件 —— 快、准、轻、私**

收到语音消息,1 秒出文字。中文识别准确率高,支持中/英/日/韩/粤五语,模型仅 228MB,完全离线运行。

## 🤔 为什么要替换官方语音插件?

官方 OpenClaw 语音插件基于 OpenAI Whisper,面向国际用户设计,覆盖 100+ 语言。但对于中文用户来说,它有一个尴尬的**两难困境**:

> **要么慢,要么占内存 —— 而且中文识别还不够好。**

- ❌ **冷启动模式**:每条语音要等 **30~40 秒**才能转写完成,聊天体验严重割裂
- ❌ **常驻内存模式**:启动速度改善,但要常年占用 **1.6GB 左右内存**,对于使用 VPS 部署的用户来说负担很重
- ❌ **中文识别**:Whisper 为 100+ 语言平衡设计,中文不是强项,粤语更是不支持

**SenseVoice 一次性解决所有问题**:模型 + 运行时总共只要 **287MB**,每次冷启动仅需 **~1 秒**就能完成转写 —— 快到根本不需要常驻内存。发条语音过来,回复几乎瞬间出现,和打字一样自然。

> 下图为安装 openclaw-sensevoice 插件后的 VPS 实际资源占用,轻量无负担:
>
> ![安装 openclaw-sensevoice 后的 VPS 资源占用](docs/images/vps-resource-usage.png)

| | 官方插件 (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,开箱即用

## 🚀 快速开始

### 方式 1:OpenClaw 插件安装(推荐)

```bash
openclaw plugins install https://github.com/falebao/openclaw-sensevoice/releases/download/v0.2.0/openclaw-sensevoice-v0.2.0.tar.gz
```

安装后运行一次 setup,自动下载模型并配置:

```
/sensevoice setup
```

**Setup 完成后,直接发送语音消息即可 —— 插件会自动转写语音内容,AI 会基于转写文本进行回复,无需任何额外操作。**

### 方式 2:一键脚本

```bash
curl -fsSL https://raw.githubusercontent.com/falebao/openclaw-sensevoice/main/install.sh | bash
```

自动检测平台、下载预编译二进制和模型到 `~/.openclaw/`。

### 方式 3:源码编译

```bash
git clone https://github.com/falebao/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 服务器 |

## 🦀 为什么用 Rust 而不是 Python?

官方 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,不需要管虚拟环境,不需要担心包冲突 —— 下载、解压、运行,完事。

## 📝 技术细节

**模型查找顺序**:
1. `$SENSEVOICE_MODEL_DIR` 环境变量
2. `<二进制目录>/../model/` (插件布局)
3. `~/.openclaw/models/` (标准位置)

**安装体积**:二进制 + 动态库 ~59MB,模型 ~228MB,总计约 287MB。

**macOS 用户**:未签名二进制需要解除 Gatekeeper 隔离,安装脚本已自动处理(`xattr -cr`)。

## 💡 项目灵感

之前在桌面端使用 Claude Code 都是用口喷(语音输入),体验非常畅快。但换到 OpenClaw 在手机上通过 IM 使用时,语音体验反而变差了 —— 转写慢、等待久,完全不是一回事。

作为 [sayup.ai](https://www.sayup.ai) 的开发者,我直接把 sayup 的核心原理移植了过来 —— 一样的技术栈,一样的速度体验。这太理所应当了。

如果你也希望在桌面端享受畅快的语音输入体验,欢迎下载 macOS 客户端:**[www.sayup.ai](https://www.sayup.ai)**(Windows 端因设备有限,部分机型可能不稳定)。

关注我的 X 账号获取最新动态:[@luuu2024](https://x.com/luuu2024)

## 📄 许可证

MIT
voice

Comments

Sign in to leave a comment

Loading comments...