silero vad onnx
简介
Silero VAD 是一款极其轻量且高效的语音活动检测(VAD)模型,专门用于从音频流中精准剔除静音,识别出有人说话的片段。它采用 ONNX 格式导出,这意味着开发者无需安装沉重的深度学习框架,即可在 Python、C++ 或 Java 等多种环境下实现毫秒级推理。相比于传统的基于能量阈值的 VAD,它对背景噪音的鲁棒性更强,非常适合作为语音识别(ASR)流水线的前置环节,用来触发录音或降低后端模型的计算压力,上手难度极低,部署极其灵活。
核心亮点
- ONNX 格式支持,无需深度学习框架即可部署
- 极低资源占用,支持实时音频流毫秒级检测
- 抗噪能力强,精准区分人声与环境背景音
- ASR 理想前置插件,有效降低语音识别计算量
使用方法
安装依赖
# 安装 Hugging Face transformers
pip install transformers torch
SDK 使用
# 使用 transformers 加载模型
from transformers import AutoModel, AutoTokenizer
model = AutoModel.from_pretrained("istupakov/silero-vad-onnx")
tokenizer = AutoTokenizer.from_pretrained("istupakov/silero-vad-onnx")
Hugging Face 下载
我们推荐使用命令行或者 Hugging Face Hub SDK 来进行模型的下载。
操作指引:在下载前,请先通过如下命令安装 huggingface_hub:
操作指引
pip install -U huggingface_hub
命令行下载
下载完整模型库
下载完整模型库
huggingface-cli download istupakov/silero-vad-onnx
下载单个文件到指定本地文件夹(以下载 config.json 到当前路径下 ./dir 目录为例)
下载单个文件到指定本地文件夹(以下载 config.json 到当前路径下 ./dir 目录为例)
huggingface-cli download istupakov/silero-vad-onnx config.json --local-dir ./dir
SDK 下载
SDK 下载
# 模型下载
from huggingface_hub import snapshot_download
model_dir = snapshot_download('istupakov/silero-vad-onnx')
Git 下载
请确保 lfs 已经被正确安装
Git 下载
git lfs install
git clone https://huggingface.co/istupakov/silero-vad-onnx
如果您希望跳过 lfs 大文件下载,可以使用如下命令
跳过 LFS
GIT_LFS_SKIP_SMUDGE=1 git clone https://huggingface.co/istupakov/silero-vad-onnx
模型文件托管在 Hugging Face Hub,使用 HF CLI / SDK / Git 直接下载,不经过本站。
PyTorch / Transformers 使用
安装 Transformers
安装 Transformers
pip install -U transformers torch
模型加载和推理
模型加载和推理
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained('istupakov/silero-vad-onnx')
tokenizer = AutoTokenizer.from_pretrained('istupakov/silero-vad-onnx')
完整文档
来源: HuggingFace
---
license: mit
pipeline_tag: voice-activity-detection
tags:
- voice-activity-detection
- vad
- onnx
- onnx-asr
---
Silero VAD model (version 6.2) in ONNX format for onnx-asr.
Install onnx-asr
shell
pip install onnx-asr[cpu,hub]Load Parakeet v3 ASR with Silero VAD and recognize wav file
py
import onnx_asr
vad = onnx_asr.load_vad("silero")
model = onnx_asr.load_model("nemo-parakeet-tdt-0.6b-v3").with_vad(vad)
for res in model.recognize("test.wav"):
print(res)