跳转至

VoiceStudio — Sherpa-ONNX 听写引擎

k2-fsa/sherpa-onnx 的 ONNX 运行时作为实时听写引擎:小型 int8 模型在 CPU 上的转写速度超过实时,并且在 macOS(arm64 + x86_64)、Windows 和 Linux 上行为一致——无需 CUDA 依赖。流式模型会在您说话时逐帧输出部分文本;离线模型则会以较短的节奏重新转写不断增长的缓冲区,因此无论哪种方式您都能看到实时部分结果。

选择它

  • 确保已安装 sherpa-onnx(源码安装时使用 uv add sherpa-onnx)。
  • 在应用中选择一个听写模型(Model Catalogue(ASR 标签页 → 该引擎的 Weights)列出以下可选集合),或进入 Model Catalogue,ASR 标签页 → Use,或设置 OMNIVOICE_ASR_BACKEND=sherpa-onnx-asr。
  • OMNIVOICE_SHERPA_ASR_MODEL 用于选择模型——默认为 sherpa-whisper-tiny。

最擅长

  • 在 CPU 上进行实时听写——这正是该引擎的核心用途。快速部分结果、静音时自动端点检测、无需 GPU。
  • 它也遵循常规的离线 transcribe 契约,因此其任何模型都可以转写文件——纯文本、单一分段、无词级时间戳,这使它成为听写/笔记工具,而非配音引擎。

7 个可选模型

Id Type Languages Download
sherpa-parakeet-tdt-v3 offline 25 种欧洲语言 0.67 GB
sherpa-parakeet-tdt-v2 offline 英语 0.66 GB
sherpa-zipformer-bilingual-zh-en streaming 中文 + 英语 0.20 GB
sherpa-paraformer-bilingual-zh-en streaming 中文 + 英语 0.24 GB
sherpa-zipformer-en-20m streaming 英语 0.044 GB
sherpa-zipformer-zh-14m streaming 中文 0.025 GB
sherpa-whisper-tiny(默认,推荐) offline 90+ 种语言(自动检测) 0.104 GB

大小按磁盘下载大小计算。权重是 int8 ONNX 检查点,首次使用时通过与其他所有内容相同的 HF 缓存下载——参见 downloading-models。0.6B Parakeets 的峰值 RAM 明显高于其下载大小(onnxruntime 的 arena 分配器会保留已释放的内存块)。

平台支持

每个平台都支持 CPU,遵循严格的跨平台默认一致性规则。上游 CPU wheels 覆盖 Linux、macOS 和 Windows,并且上游将 Whisper 记录为受支持的非流式模型系列。OMNIVOICE_SHERPA_ASR_PROVIDER 可以在经过验证的 GPU 构建上覆盖 ONNX provider,但默认值从不偏离。

调优

  • OMNIVOICE_SHERPA_ASR_THREADS — 解码线程数(默认 2;当主机有足够核心时,0.6B Parakeets 会自动使用最多 4 个线程,以确保解码跟得上说话者)。
  • OMNIVOICE_DICTATION_ENDPOINT_R1 / OMNIVOICE_DICTATION_ENDPOINT_R2 — 流式端点规则(秒),默认 1.0 / 0.6:您停止说话约 0.6 秒后文本提交。无需重启即可生效。

特殊说明

  • 识别器会在后台预热,因此第一次听写会话不会承受 1.3–2.5 秒的 ONNX 会话加载开销(#888);之后它会以预热状态跨会话共享。
  • 在 Apple Silicon 上,安装 parakeet-mlx 模型后,听写会自动优先使用 GPU Parakeet 处理覆盖的 25 种语言;但显式选择的 sherpa 模型仍然优先。
  • 离线 transcribe 路径报告 language: auto——逐文件语言检测仅对 Whisper Tiny 模型有意义。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 om/VoiceStudio