自定义唤醒词在线训练 — 输入关键词,10分钟出ONNX模型

2026年7月 · 听词 Voicute

什么是自定义唤醒词

自定义唤醒词是指用户根据自己的产品需求,自行定义设备要识别的特定语音指令。比如智能开关用"打开灯光"作为唤醒词,车载助手用"你好奔驰",儿童玩具用"小老师"。设备听到这个词就响应。

传统方案要自定义唤醒词,流程很长:采集几百人录音 → 标注清洗 → 训练模型 → 测试迭代。一个词从启动到能用,最快也要 2-4 周,成本动辄上万。

现在有更快的方案——在线训练平台

在线训练怎么做

流程简单到就三步:

  1. 输入关键词。 在网站上输入你想用的唤醒词,2-6 个字,中文或英文都可以。
  2. 自动训练。 系统后台自动用 TTS(文字转语音)合成多个发音人的训练样本,加上噪声增强、语速扰动、混响模拟等数据增强,然后训练一个轻量级神经网络模型。整个过程 10-20 分钟。
  3. 下载 ONNX 模型。 训练完成后直接下载标准 ONNX 格式的模型文件,大约 100-170KB。

训练出来的模型什么水平

指标基础款人声增强款
训练时间~10 分钟~20 分钟
训练数据纯 TTS 合成TTS + 10 句真人录音
模型大小~128 KB~128 KB
噪声拒绝率~95%~96.5%
适用场景安静室内、标准普通话嘈杂环境、多种口音
价格¥39¥99

不用 GPU,不用采音频,不用调参数。跟传统方案动辄几周的周期比,门槛降了一个数量级。

拿到模型后怎么用

模型是标准 ONNX 格式,配合 开源推理引擎 onnx-wakeword(Apache 2.0 协议),在 Android、Linux、Windows、macOS、ESP32、Web 浏览器上都能跑。引擎内置了 Mel 特征提取和五层防误触检测,集成代码就几行。

Android

val engine = OnnxWakeWord.create(context, "model_info.json", "melspectrogram.onnx")
engine.setCallback { word, prob ->
    when (word) { "打开灯光" -> turnOnLight() }
}
engine.start()  // CPU < 1%,单帧推理 < 5ms

Python (Linux / macOS / Windows)

from wakeword_engine import WakeWordEngine
engine = WakeWordEngine()
engine.load("model_info.json", "melspectrogram.onnx")
engine.start(lambda word, prob, info: print(f"检测到: {word}"))

Web 浏览器

const engine = VoicuteWakeWord.create()
await engine.load("model_info.json", "melspectrogram.onnx")
await engine.start((word, prob) => console.log(word))

更多部署细节见 全平台部署指南

一个模型可以识别多个词吗

可以。支持多关键词合训——一个 ONNX 模型同时识别 3-10 个唤醒词或命令词。3 词模型 135KB,10 词模型 167KB。适合需要多个唤醒入口或多个语音指令的 IoT 产品。

商用怎么收费

一次付费,永久使用。不限设备数量,没有年费,没有授权费。你训出来的模型就是你自己的,配合开源引擎随意集成。

开始训练你的唤醒词 →