3 分•作者: tosh•大约 1 个月前
返回首页
最新
2 分•作者: stephenhuey•大约 1 个月前
1 分•作者: tosh•大约 1 个月前
1 分•作者: 1vuio0pswjnm7•大约 1 个月前
2 分•作者: haoranchg•大约 1 个月前
2 分•作者: webwielder2•大约 1 个月前
20 分•作者: satvikpendem•大约 1 个月前
4 分•作者: Gamemaster1379•大约 1 个月前
57 分•作者: geerlingguy•大约 1 个月前
2 分•作者: praveenperera•大约 1 个月前
Speakrs 用 Rust 实现了完整的 pyannote community-1 风格的说话人分割流程:分割、幂集解码、重叠相加聚合、二值化、嵌入、PLDA 和 VBx 聚类。
该库路径中没有 Python 运行时。推理在 ONNX Runtime 或原生 CoreML 上运行,流程的其余部分则保留在 Rust 中。
在 macOS 上,它的速度快 20-30 倍,但在 linux/cuda 上仅快 2-3 倍(取决于 CPU)。
速度更快的几个原因:
1. Speakrs 使用了 CoreML 版本的模型。我专门导出了这些模型以在 CoreML 上运行。PyAnnote 只是通过 MPS (Metal) 在 macOS 上运行相同的 PyTorch 版本。
2. PyAnnote 不是单个模型,而是在一个流程中组合在一起的几个不同模型,自述文件中有关于完整流程的一些信息。
3. Speakrs 优化了流程,因此不同的部分可以在 CPU、神经引擎和 GPU 上运行。
Speakrs 具有批量模式,您可以在其中同时处理多个文件,这样做也可以让 CPU/GPU/ANE 都得到充分利用。
这就是为什么在 linux/cuda 上它没有那么快的原因,PyAnnotate 已经针对在 cuda 上运行进行了优化,我们在 cuda 上获得的加速是通过在 GPU 运行某些内容的同时在 CPU 上运行一些内容实现的。linux 上的加速将取决于 CPU 的性能。
还有一个快速模式,它牺牲了一些速度来换取准确性,速度可以提高 50 倍,并且对于某些类型的音频,不会牺牲太多准确性。基准测试对此有更多信息。
1 分•作者: ian-gillis•大约 1 个月前
1 分•作者: theaniketmaurya•大约 1 个月前
1 分•作者: pablogancharov•大约 1 个月前
1 分•作者: eddy-sekorti•大约 1 个月前
1 分•作者: GeorgeWoff25•大约 1 个月前
3 分•作者: SchwKatze•大约 1 个月前
1 分•作者: prateekpuri01•大约 1 个月前
1 分•作者: malshe•大约 1 个月前
1 分•作者: 7777777phil•大约 1 个月前
1 分•作者: paulpauper•大约 1 个月前