浏览器端离线唤醒词:用 ONNX 实现网页本地语音触发

2026 年 8 月 · JavaScript · ONNX Runtime Web · KWS

网页只需要识别“开始录音”“下一页”或一个固定唤醒词时,不必把麦克风音频持续上传给云端 ASR。关键词识别模型可以直接在浏览器中完成推理。

直接体验:进入听词控制台并登录,在“演示模型”中点击“在线测试”。授权麦克风后即可测试;演示模型也可以直接下载,并提供推理代码入口。

浏览器里的处理链路

麦克风 → 单声道 PCM → 重采样到 16 kHz → Mel 特征
       → ONNX 模型 → 连续帧与冷却判决 → JavaScript 事件

模型加载后,推理在当前设备完成,不需要推理服务器或运行时 AccessKey。它适合网页快捷操作、展厅大屏、PWA、内网控制台和本地设备面板。

什么时候用 KWS,什么时候用 ASR

需求建议
识别少量固定短语浏览器 KWS,结果直接映射页面动作
把任意语音转成文字使用 ASR
全天候后台监听优先 Android、Linux 或嵌入式运行时

为什么不能只看模型阈值

模型会连续输出短音频窗口的分数。实际产品还需要连续帧确认、检测后冷却、背景峰值比较以及针对持续媒体声音的过滤。建议先记录真实误触类型,再逐项增加限制,避免过滤过严造成漏检。

浏览器端的工程边界

先用 Demo 验证,再接入自己的模型

  1. 打开控制台,选择一个演示模型。
  2. 点击“在线测试”,检查自己的麦克风和浏览器能否正常触发。
  3. 点击“下载”取得模型,并从页面进入推理代码。
  4. 需要自定义词时再创建模型,先在线测试实际发音,再下载部署。

完整 Web SDK 和示例代码位于 onnx-wakeword。模型下载后可以在本地运行,不按识别次数或设备数量收取运行费用。

在线测试并下载 Demo 模型