NLP之ASR之moonshine:moonshine的简介、安装和使用方法、案例应用之详细攻略
NLP之ASR之moonshine:moonshine的简介、安装和使用方法、案例应用之详细攻略
目录
moonshine的简介
moonshine的安装和使用方法
1、安装
推荐使用uv管理Python环境
安装Moonshine包
Torch后端
TensorFlow后端
JAX后端
ONNX运行时
2、使用方法
0、测试
1、ONNX独立运行
2、实时字幕
3、翻译
4、 HuggingFace Transformers
moonshine的案例应用
moonshine的简介
2024年10月,Moonshine是一个针对资源受限设备优化的语音转文本 (ASR) 模型家族,旨在提供快速且准确的语音识别能力。它非常适合实时、设备端的应用,例如实时转录和语音命令识别。Moonshine在HuggingFace的OpenASR排行榜上,其单词错误率 (WER) 表现优于同等规模的OpenAI Whisper模型(tiny.en 和 base.en)。
Moonshine 的计算需求与输入音频长度成正比,这意味着较短的音频处理速度更快,这与以30秒为块处理音频的Whisper模型不同。例如,Moonshine 处理10秒音频的速度是Whisper的5倍,同时保持相同或更好的WER。Moonshine Base模型大小约为400MB,Tiny模型约为190MB。目前公开发布的模型仅支持英语。
GitHub地址:https://github.com/usefulsensors/moonshine
moonshine的安装和使用方法
1、安装
推荐使用uv管理Python环境
若不使用uv,请跳过第一步。
创建虚拟环境: 首先,安装uv:
pip install uv
然后创建并激活虚拟环境:
uv venv env_moonshine
source env_moonshine/bin/activate
安装Moonshine包
Moonshine推理代码使用Keras编写,支持Torch、TensorFlow和JAX后端。选择后端决定安装哪个版本的Moonshine包。建议从Torch后端开始:
Torch后端
uv pip install useful-moonshine@git+https://github.com/usefulsensors/moonshine.git export KERAS_BACKEND=torch
TensorFlow后端
uv pip install useful-moonshine[tensorflow]@git+https://github.com/usefulsensors/moonshine.git export KERAS_BACKEND=tensorflow
JAX后端
uv pip install useful-moonshine[jax]@git+https://github.com/usefulsensors/moonshine.git export KERAS_BACKEND=jax (使用GPU: useful-moonshine[jax-cuda])
ONNX运行时
uv pip install useful-moonshine[onnx]@git+https://github.com/usefulsensors/moonshine.git
2、使用方法
0、测试
可以使用以下函数转录提供的示例音频文件来测试 Moonshine .transcribe:
使用.transcribe函数测试Moonshine:
>>> import moonshine
>>> moonshine.transcribe(moonshine.ASSETS_DIR / 'beckett.wav', 'moonshine/tiny')['Ever tried ever failed, no matter try again, fail again, fail better.']第一个参数是音频文件路径,第二个参数是Moonshine模型名称 (moonshine/tiny 或 moonshine/base)。使用moonshine.transcribe_with_onnx函数使用ONNX运行时进行推理,参数与moonshine.transcribe相同。
Moonshine模型可与多种运行时和应用程序一起使用。
1、ONNX独立运行
最新的ONNX Moonshine模型可在HuggingFace (huggingface.co/UsefulSensors/moonshine/tree/main/onnx) 获取,示例Python脚本和更多信息可在仓库的demo文件夹中找到。
2、实时字幕
可以使用live captions demo在许多平台上使用麦克风的实时输入来测试Moonshine模型。
3、翻译
CTranslate2版本的Moonshine文件可在HuggingFace (huggingface.co/UsefulSensors/moonshine/tree/main/ctranslate2) 获取,但需要合并pull request才能与框架的主线版本一起使用。可以使用项目的特定分支和示例脚本进行尝试。
4、 HuggingFace Transformers
两个模型都可在HuggingFace Hub上使用,并可与transformers库一起使用 (代码示例见GitHub项目)。
from transformers import AutoModelForSpeechSeq2Seq, AutoConfig, PreTrainedTokenizerFastimport torchaudio
import sysaudio, sr = torchaudio.load(sys.argv[1])
if sr != 16000:audio = torchaudio.functional.resample(audio, sr, 16000)# 'usefulsensors/moonshine-base' for the base model
model = AutoModelForSpeechSeq2Seq.from_pretrained('usefulsensors/moonshine-tiny', trust_remote_code=True)
tokenizer = PreTrainedTokenizerFast.from_pretrained('usefulsensors/moonshine-tiny')tokens = model(audio)
print(tokenizer.decode(tokens[0], skip_special_tokens=True))
moonshine的案例应用
持续更新中……
相关文章:
NLP之ASR之moonshine:moonshine的简介、安装和使用方法、案例应用之详细攻略
NLP之ASR之moonshine:moonshine的简介、安装和使用方法、案例应用之详细攻略 目录 moonshine的简介 moonshine的安装和使用方法 1、安装 推荐使用uv管理Python环境 安装Moonshine包 Torch后端 TensorFlow后端 JAX后端 ONNX运行时 2、使用方法 0、测试 1…...
albert模型实现微信公众号虚假新闻分类
项目源码获取方式见文章末尾! 600多个深度学习项目资料,快来加入社群一起学习吧。 《------往期经典推荐------》 项目名称 1.【基于CNN-RNN的影像报告生成】 2.【卫星图像道路检测DeepLabV3Plus模型】 3.【GAN模型实现二次元头像生成】 4.【CNN模型实现…...
OceanBase 应用实践:如何处理数据空洞,降低存储空间
问题描述 某保险行业客户的核心系统,从Oracle 迁移到OceanBase之后,发现数据存储空间出现膨胀问题,数据空间 datasize9857715.48M,实际存储占用空间17790702.00M。根据 required_mb - data_mb 值判断,数据空洞较为严重…...
计算机的错误计算(一百四十八)
摘要 本节探讨 MATLAB 中 附近数的正割函数与 附近数的余割函数的计算精度问题。 例1. 已知 计算 直接贴图吧: 另外,16位的正确值分别为 0.4105556037464873e9、0.3670813182326778e13、-0.2549029285657875e8 与 -0.1248777628817462e12&am…...
MySQL记录锁、间隙锁、临键锁(Next-Key Locks)详解
行级锁,每次操作锁住对应的行数据。锁定粒度最小,发生锁冲突的概率最低,并发度最高。 应用在InnoDB存储引擎中。InnoDB的数据是基于索引组织的,行锁是通过对索引上的索引项加锁来实现的,而不是对记录加的锁。 对于行…...
SLM401A系列42V商业照明线性恒流芯片 线性照明调光在LED模组及灯带智能球泡灯上应用
SLM401A系列型号选型: SLM401A10ED-7G:QFN1010-4 SLM401A15aa-7G:SOT23-3 SLM401A20aa-7G:SOT23-3 SLM401A20ED-7G:QFN1010-4 SLM401A25aa-7G:SOT23-3 SLM401A30aa-7G:SOT23-3 SLM401A40aa-7G:SOT23-3 SLM401A50aa-7G:SOT23-3 SLM401A6…...
京东零售推荐系统可解释能力详解
作者:智能平台 张颖 本文导读 本文将介绍可解释能力在京东零售推荐系统中的应用实践。主要内容包括以下几大部分:推荐系统可解释定义、系统架构、排序可解释、模型可解释、流量可解释。 推荐系统可解释定义 推荐系统可解释的核心包括三部分࿰…...
蓝桥杯 懒洋洋字符串--字符串读入
题目 代码 #include <iostream>using namespace std;int main(){int n;cin>>n;char s[210][4];int ans0;for(int i0;i<n;i){scanf("%s",s[i]);}for(int i0;i<n;i){char as[i][0];char bs[i][1];char cs[i][2];// cout<<a<< <<b…...
SDL打开YUV视频
文章目录 问题1:如何控制帧率?问题2:如何触发退出事件?问题3:如何实时调整视频窗口的大小问题4:YUV如何一次读取一帧的数据? 问题1:如何控制帧率? 单独用一个子线程给主线…...
微服务架构面试内容整理-Archaius
Archaius 是由 Netflix 开发的一个配置管理库,主要用于处理动态配置和环境配置。在微服务架构中,Archaius 允许开发者以灵活的方式管理配置,从而更好地应对变化的需求。以下是 Archaius 的主要特点、工作原理和使用场景: 主要特点 1. 动态配置: Archaius 支持动态更新配置…...
实现 Nuxt3 预览PDF文件
安装必要的库,这里使用PDF.js库 npm install pdfjs-dist --save 为了解决跨域问题,在server/api 下 创建一个请求api, downloadFileByProxy.ts import { defineEventHandler } from h3;export default defineEventHandler(async event >…...
udp为什么会比tcp 有更低的延迟
UDP(User Datagram Protocol,用户数据报协议)相比TCP(Transmission Control Protocol,传输控制协议)具有更低的延迟,这主要归因于UDP协议的设计特点和机制。以下是对UDP比TCP延迟低的原因的详细…...
基于java+SpringBoot+Vue的洗衣店订单管理系统设计与实现
项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: Springboot mybatis Maven mysql5.7或8.0等等组成&#x…...
HarmonyOS-消息推送
一. 服务简述 Push Kit(推送服务)是华为提供的消息推送平台,建立了从云端到终端的消息推送通道。所有HarmonyOS 应用可通过集成 Push Kit,实现向应用实时推送消息,使消息易见,构筑良好的用户关系࿰…...
数据分析:宏基因组DESeq2差异分析筛选差异物种
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍原理:计算步骤:结果:加载R包准备画图主题数据链接导入数据Differential abundance (No BP vs 2BP TA)构建`countData`矩阵过滤低丰度物种构建DESeq数据对象DESeq2差异分析画图Di…...
出海企业如何借助云计算平台实现多区域部署?
云计算de小白 如需进一步了解,请单击链接了解有关 Akamai 云计算的更多信息 在本文中我们将告诉大家如何在Linode云计算平台上借助VLAN快速实现多地域部署。 首先我们需要明确一些基本概念和思想: 部署多区域 VLAN 为了在多区域部署中在不同的 VLAN …...
硬件---1电路设计安全要点以及欧姆定律
前言: 一直搞的东西都偏软件,硬件也一直在学,元器件、基础电路知识、PCB设计、模电运放都学的马马虎虎,因此决定进行系统性学习,内容基本来源于手里的视频和书本以及自己的感悟。 一电路安全 1电路安全 在初期基础…...
Linux如何更优质调节系统性能
一、硬件优化 增加物理内存:最直接的提升系统性能的方法。内存不足时,系统会频繁进行交换(swapping)活动,这会显著降低系统的响应速度,因为磁盘IO速度远低于内存访问速度。通过增加内存,可以减…...
第三十五章 Vue路由进阶之声明式导航(跳转传参)
目录 一、引言 二、查询参数传参 2.1. 使用方式 2.2. 完整代码 2.2.1. main.js 2.2.2. App.vue 2.2.3. Search.vue 2.2.4. Home.vue 2.2.5. index.js 三、动态路由传参 3.1. 使用方式 3.2. 完整代码 3.2.1. main.js 3.2.2. App.vue 3.2.3. Search.vue 3.2.4. Hom…...
python爬虫自动库DrissionPage保存网页快照mhtml/pdf/全局截图/打印机另存pdf
目录 零一、保存网页快照的三种方法二、利用打印机保存pdf的方法 零 最近星球有人问如何使用页面打印功能,另存为pdf 一、保存网页快照的三种方法 解决方案已经放在星球内:https://articles.zsxq.com/id_55mr53xahr9a.html当然也可以看如下代码&…...
告别硬编码!Activiti7流程变量与监听器实战:动态分配审批人与业务数据流转
Activiti7流程变量与监听器实战:动态审批人分配与业务数据流转 在业务流程管理(BPM)领域,硬编码审批人始终是系统灵活性的主要障碍。当组织架构调整或审批规则变化时,传统方案往往需要重新部署流程定义。本文将深入探…...
Z-Image-Turbo-辉夜巫女项目实战:基于C语言的简单调用示例
Z-Image-Turbo-辉夜巫女项目实战:基于C语言的简单调用示例 1. 引言 你可能觉得,AI模型调用是Python、JavaScript这些高级语言的专利,C语言这种“古老”的系统级语言,似乎和时髦的AI应用隔着一道墙。但事实并非如此。AI模型通过H…...
C# .NET 周刊|2026年3月1期
国内文章.NET 11 预览版1:CoreCLR 在 WebAssembly 上的全面集成与性能突破https://www.cnblogs.com/shanyou/p/19629649.NET 11 Preview 1 正式发布,标志着 CoreCLR 运行时能原生支持 WebAssembly。这是微软在跨平台战略上的重大进展。CoreCLR 提供更优性…...
Torch-Pruning高效剪枝实战:解决BERT模型部署中的计算资源瓶颈问题
Torch-Pruning高效剪枝实战:解决BERT模型部署中的计算资源瓶颈问题 【免费下载链接】Torch-Pruning [CVPR 2023] Towards Any Structural Pruning; LLMs / Diffusion / Transformers / YOLOv8 / CNNs 项目地址: https://gitcode.com/gh_mirrors/to/Torch-Pruning …...
卡证检测矫正模型开发环境搭建:PyCharm/IDEA项目配置全攻略
卡证检测矫正模型开发环境搭建:PyCharm/IDEA项目配置全攻略 你是不是刚拿到一个卡证检测矫正模型的项目,看着一堆代码和配置文件有点无从下手?特别是想用PyCharm或者IDEA这样的专业工具来开发调试,却不知道从哪一步开始配置环境&…...
微信小程序获取手机号登录,从免费到收费后,我的低成本替代方案(附完整代码)
微信小程序登录策略优化:从手机号收费到低成本用户体系设计 去年微信团队调整了小程序获取用户手机号的规则——从完全免费变为1000次调用后的按量计费。这对于日活超过1000的中小开发者来说,意味着每月可能新增数百至数千元的额外成本。但用户登录又是小…...
HARMONYOS应用实例246:互动七巧板拼图
项目二:互动七巧板拼图 功能介绍: 本应用模拟了中国传统智力玩具七巧板。屏幕上展示7块几何形状(三角形、正方形、平行四边形),支持拖动平移和点击旋转操作。用户可以自由拼接图形,拼出各种造型。该应用帮助学生直观理解图形的平移、旋转、对称等几何变换,以及面积守恒…...
SD 协议
1、SD 协议科普 SD 协议的全称是 Secure Digital (SD) Interface Protocol,它是由 SD 协会(SDA,Secure Digital Association) 制定的一套标准。 eMMC、SD、SDIO 的关系: SD 卡的协议最初是基于 MMC(MultiM…...
保姆级教程:用Davinci Configurator配置RH850F1KMS1双看门狗(AWO域与ISO域)
RH850F1KMS1双看门狗配置实战:从AWO域到ISO域的完整设计指南 在汽车电子开发领域,系统可靠性直接关系到行车安全。RH850F1KMS1作为瑞萨电子面向功能安全应用的高性能MCU,其独特的双看门狗架构(AWO域与ISO域)为系统提供…...
LLaMA-Omni推理部署全攻略:本地与云端部署的最佳实践
LLaMA-Omni推理部署全攻略:本地与云端部署的最佳实践 【免费下载链接】LLaMA-Omni LLaMA-Omni is a low-latency and high-quality end-to-end speech interaction model built upon Llama-3.1-8B-Instruct, aiming to achieve speech capabilities at the GPT-4o l…...
