2K star!语音转文本模型,比Whisper快,更适合小设备

文摘   科技   2024-11-07 14:06   北京  

点击上方蓝字关注我们

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_moonshinesource 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>>> moonshine.transcribe(moonshine.ASSETS_DIR / 'beckett.wav', 'moonshine/tiny')['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 模型,而不依赖于torchtensorflow 。这使得可以在 Raspberry Pi 等 SBC 上运行。

而脚本 live_captions.py ,包含基于 Moonshine 构建的麦克风输入实时字幕演示。该脚本使用名为silero-vad的语音活动检测器对麦克风信号中检测到的语音片段运行 Moonshine ONNX 模型。该脚本将从模型预测组装的滚动文本或“实时字幕”打印到控制台。

 




总结



这里还是要注意一下,目前模型比较新,当前的训练集都是基于英语的,所以只能针对英语进行使用。目前项目组还没有提供针对于多语的微调和训练集,所以需要等一等。不过项目在小模型上取得的成绩非常让人关注,如果可以优化,那在边缘设备上会有非常好发展。

   




项目信息


    • 项目名称:moonshine

    • GitHub 链接:https://github.com/usefulsensors/moonshine

    • Star 数:2K



往期推荐

16K star!实时文档协作编辑器,远程工作好帮手

16K star!开源工作流编排,让计划更简单

「Github一周热点47期」llama官方配套资料、低代码框架、网页变化监控工具、工作流编排平台和我的世界AI工具

  




识别二维码关注我们
微信号- it-coffee
B站 - IT-咖啡馆
头条号- IT咖啡馆

IT咖啡馆
开源项目、IT技能和有趣的事情
 最新文章