Parakeet-tdt-0.6b-v2 实时语音识别快速指南
2026/9/12 8:36:36 网站建设 项目流程

Parakeet-tdt-0.6b-v2 实时语音识别快速指南

【免费下载链接】sherpa-onnxSpeech-to-text, text-to-speech, speaker diarization, speech enhancement, source separation, and VAD using next-gen Kaldi with onnxruntime without Internet connection. Support embedded systems, Android, iOS, HarmonyOS, Raspberry Pi, RISC-V, RK NPU, Axera NPU, Ascend NPU, x86_64 servers, websocket server/client, support 12 programming languages项目地址: https://gitcode.com/GitHub_Trending/sh/sherpa-onnx

开一场离线会议,你希望发言刚停、字幕就跟上来。sherpa-onnx 是一个不依赖联网的本地语音工具箱,把小米开源的 Parakeet-tdt-0.6b-v2 模型接进来之后,它能在普通 CPU 上做到延迟低于 300ms 的实时语音识别——边说边出文字,全程无网络请求。这篇指南讲清楚:它适合谁、三步跑起来、参数怎么调。

它是什么,为什么值得试

Parakeet-tdt-0.6b-v2 是小米发布的轻量级语音识别模型,sherpa-onnx 将其转换为 ONNX 格式本地推理(ONNX 是跨平台模型格式,一套文件到处能跑),主要面向英文场景。

  • 架构:Transformer-Transducer,识别准确率 98%,模型体积压缩到传统方案的 1/3;
  • 量化方式:INT8(把浮点权重压成 8 位整数),CPU 即可实时跑,无需 GPU;
  • 资源占用:整套运行约需 2GB 内存;
  • 平台覆盖:Linux / macOS / Windows,Android、iOS 等移动端同样支持。

5 分钟跑通实时识别

只需三步:克隆仓库、下载模型、运行示例。

git clone https://gitcode.com/GitHub_Trending/sh/sherpa-onnx cd sherpa-onnx cmake -B build -DCMAKE_BUILD_TYPE=Release && cmake --build build -j4

模型与 VAD 文件的获取命令写在示例文件头部注释里,见 cxx-api-examples/parakeet-tdt-simulate-streaming-microphone-cxx-api.cc:下载silero_vad.onnxsherpa-onnx-nemo-parakeet-tdt-0.6b-v2-int8.tar.bz2,解压后与二进制文件放在同一目录。然后:

./build/cxx-api-examples/parakeet-tdt-simulate-streaming-microphone-cxx-api

程序打开默认麦克风,对终端说话,文字实时打印出来。构建选项可在 CMakeLists.txt 中查看。

从麦克风到文字:数据流全解

整条链路可以拆成四段:

1. 采音:PortAudio 以 16000Hz、单声道从麦克风抓声音(16kHz 是语音识别的常用采样率),若设备采样率不同,程序内部会线性重采样对齐。

2. VAD 切句:VAD 是一个小分类模型,负责判断"哪段是人声、哪段是静音"。音频按 512 个采样点的窗口送入 VAD;检测到起声后开始累积缓冲,静音持续超过设定时长就把整句送入结果队列。下面的配置来自示例的CreateVad(),核心就几行:

VadModelConfig config; config.silero_vad.model = "./silero_vad.onnx"; config.silero_vad.threshold = 0.5; // 人声判定阈值 config.silero_vad.min_silence_duration = 0.25; // 静音多久算一句话说完 config.silero_vad.min_speech_duration = 0.25; // 太短的人声片段直接丢弃 config.silero_vad.max_speech_duration = 5; // 一句话说太长就强制切分 config.sample_rate = 16000;

3. 三段式解码:模型分为 encoder(把音频变成声学特征)、decoder(把特征变成文本)、joiner(把前两者的输出对齐融合),配合tokens.txt词表,model_type设为nemo_transducer加载。

4. 终端输出:说话期间,每 0.2 秒把当前缓冲送一次识别器,得到"中间结果"即时显示;VAD 切出完整句子后做最终解码,整句定稿。这就是"边说边出字"的实现方式。

4 个参数调到位

参数建议值作用
VAD threshold0.4–0.6人声判定灵敏度;调低更灵敏,但环境噪声容易被误判为人声
解码线程数2–4平衡推理速度与 CPU 占用,对应num_threads
采样率16000麦克风采集与模型输入统一用这个值
波束宽度5–8搜索候选路径的宽度,噪声环境下有助于提升准确率

调参顺序建议:先动 VAD 阈值和静音时长(解决"断句不对"),再动线程数(解决"跟不上语速")。

从 PC 到手机、再到服务

  • 移动端:flutter-examples/README.md 里有 VAD 加非流式识别的麦克风示例,覆盖 iOS / Android,模型以离线方式打包进 App;
  • 服务端:python-api-examples/streaming_server.py 是 WebSocket 流式识别服务,多客户端可同时接入,浏览器端界面效果如下。

适合做什么

  • 会议实时字幕:说话结束前文字已经出来,离线环境同样可用;
  • 直播字幕:低延迟语音转文字,不依赖云端 API;
  • 智能硬件语音输入:树莓派、嵌入式设备等资源受限平台;
  • 客服录音转写:批量处理本地音频文件。

选型提示:如果你的场景要求本地离线、低延迟、纯 CPU 可跑,它就是当前 sherpa-onnx 中值得优先考虑的方案。

下一步

把示例换掉麦克风输入、接上自己的业务代码,就是一个可用的实时转写服务。体验命令见上文"5 分钟跑通"一节;版本更新看 CHANGELOG.md,问题与讨论可直接提 Issue。

【免费下载链接】sherpa-onnxSpeech-to-text, text-to-speech, speaker diarization, speech enhancement, source separation, and VAD using next-gen Kaldi with onnxruntime without Internet connection. Support embedded systems, Android, iOS, HarmonyOS, Raspberry Pi, RISC-V, RK NPU, Axera NPU, Ascend NPU, x86_64 servers, websocket server/client, support 12 programming languages项目地址: https://gitcode.com/GitHub_Trending/sh/sherpa-onnx

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询