summaryrefslogtreecommitdiff
path: root/src/mic_clipper/vad.py
diff options
context:
space:
mode:
authorSomhairle H. Marisol <[email protected]>2026-09-29 10:54:22 +0800
committerSomhairle H. Marisol <[email protected]>2026-09-29 10:54:22 +0800
commitb927b2c2746efaf7f91d03cec1c123a3d52bf62b (patch)
tree5c08f688691a4f4e8472759258c3021a46be9669 /src/mic_clipper/vad.py
parent60f05cebd8e7968621a0ce015cf72987ec7577c7 (diff)
downloadmic-clipper-b927b2c2746efaf7f91d03cec1c123a3d52bf62b.tar.gz
fix(vad): bundle local Silero model
[问题原因] - 先前实现会在包内权重缺失时读取外部 faster-whisper 资源,无法满足自包含部署要求。 [问题根因] - 项目包中尚未包含已验证的 ONNX 权重,VAD 路径保留了开发期回退逻辑。 [修复方案] - 提交已校验 SHA-256 的本地 Silero ONNX 权重并移除外部包回退。 - 增加模型打包和缺失模型失败路径测试,并更新来源、MIT 许可和哈希说明。 [影响范围] - VAD 现在只加载项目包内模型,不联网且不依赖 faster-whisper 运行时资源。 - 未安装、启用或启动任何用户 systemd 服务。
Diffstat (limited to 'src/mic_clipper/vad.py')
-rw-r--r--src/mic_clipper/vad.py13
1 files changed, 4 insertions, 9 deletions
diff --git a/src/mic_clipper/vad.py b/src/mic_clipper/vad.py
index 705dfd8..e82d15a 100644
--- a/src/mic_clipper/vad.py
+++ b/src/mic_clipper/vad.py
@@ -47,13 +47,8 @@ class SileroVad:
@staticmethod
def _default_model_path() -> Path:
bundled = resources.files("mic_clipper.assets").joinpath("silero_vad_v6.onnx")
- if bundled.is_file():
- return Path(bundled)
- try:
- import faster_whisper
- except ImportError as error:
+ if not bundled.is_file():
raise RuntimeError(
- "Silero VAD model is missing; bundle silero_vad_v6.onnx or install the "
- "pre-provisioned faster-whisper runtime asset"
- ) from error
- return Path(faster_whisper.__file__).parent / "assets" / "silero_vad_v6.onnx"
+ "packaged Silero VAD model is missing: silero_vad_v6.onnx"
+ )
+ return Path(bundled)