点击上方蓝字关注我们
IT 咖啡馆,探索无限可能!
恭喜你发现了这个宝藏,这里你会发现优质的开源项目、IT知识和有趣的内容。
现在生活中我们经常会用到语音识别的功能,微信语音转文字、开会的时候自动做记录、或者是配合翻译来快速转译。
今天我们分享的开源项目,它是一个开源的语音转文本模型,可以帮助用户快实现对语音的识别工作,而且速度比OpenAI开源的Whisper还要快,它就是:Moonshine
Moonshine 是什么?
Moonshine 是一系列语音转文本模型,针对资源受限的设备进行快速准确的自动语音识别 (ASR) 优化。它非常适合实时设备端应用,如实时转录和语音命令识别。在 HuggingFace 维护的 OpenASR 排行榜中使用的数据集上,Moonshine 的单词错误率 (WER) 优于 OpenAI 的类似大小的Whisper。
下面是Moonshine和Whisper在tiny和base两个体量级别下的效果对比,可以看到Moonshine在绝大部分方面都是具有优势的。
根据之前官方的报告,Moonshine 的计算要求会随输入音频的长度而变化。这意味着,输入音频越短,处理速度越快,而现有的 Whisper 模型则将所有内容处理为 30 秒的片段。让您了解其优势:Moonshine 处理 10 秒音频片段的速度比 Whisper快 5 倍,同时保持相同的 WER。
Moonshine的三大优势
1. 低资源需求
• 内存占用低:base模型仅61 MB,tiny模型仅27 MB RAM,适用于资源受限设备。 • 灵活输入:根据实际音频长度调整,减少不必要处理,节省资源。
2. 高效处理
• 速度快:比Whisper快1.7倍,10秒短音频可达5倍速度。 • 低延迟:实现实时或接近实时的语音转文字功能。
3. 本地运行与隐私保护
• 离线使用:无需网络连接,适用于各种环境。 • 数据安全:所有处理在设备完成,不上传云端,保护用户隐私。
安装 Moonshine
项目推荐用uv来管理python环境,这里就以使用uv的方式为例。
创建虚拟环境
然后创建并激活虚拟环境:
uv venv env_moonshine
source env_moonshine/bin/activate
安装 Moonshine 包
推理moonshine
代码是用 Keras 编写的,可以与 Keras 支持的每个后端一起运行:Torch、TensorFlow 和 JAX。您选择的后端将决定要安装哪种软件包moonshine
。如果您刚刚开始,我们建议安装(默认)Torch 后端:
uv pip install useful-moonshine@git+https://github.com/usefulsensors/moonshine.git
运行程序
您可以使用以下函数转录提供的示例音频文件来测试 Moonshine .transcribe
:
python
> import moonshine
'beckett.wav', 'moonshine/tiny') > moonshine.transcribe(moonshine.ASSETS_DIR /
['Ever tried ever failed, no matter try again, fail again, fail better.']
第一个参数是音频文件的路径,第二个参数是 Moonshine 模型的名称。
demo示例
在huggingface上,有使用Moonshine搭建好的demo示例,大家可以直接使用它去试用模型的能力。
https://huggingface.co/spaces/mrfakename/Moonshine
在项目的demo文件夹中,包含了一些简化的使用示例。
脚本onnx_standalone.py
演示了如何单独使用onnxruntime
包运行 Moonshine 模型,而不依赖于torch
或tensorflow
。这使得可以在 Raspberry Pi 等 SBC 上运行。
而脚本 live_captions.py ,包含基于 Moonshine 构建的麦克风输入实时字幕演示。该脚本使用名为silero-vad
的语音活动检测器对麦克风信号中检测到的语音片段运行 Moonshine ONNX 模型。该脚本将从模型预测组装的滚动文本或“实时字幕”打印到控制台。
总结
这里还是要注意一下,目前模型比较新,当前的训练集都是基于英语的,所以只能针对英语进行使用。目前项目组还没有提供针对于多语的微调和训练集,所以需要等一等。不过项目在小模型上取得的成绩非常让人关注,如果可以优化,那在边缘设备上会有非常好发展。
项目信息
项目名称:moonshine
GitHub 链接:https://github.com/usefulsensors/moonshine
Star 数:2K