当前位置: 首页 > article >正文

从零实现本地语音识别(FunASR)

FunASR 是达摩院开源的综合性语音处理工具包,提供语音识别(ASR)、语音活动检测(VAD)、标点恢复(PUNC)等全流程功能,支持多种主流模型(如 Paraformer、Whisper、SenseVoice)的推理、微调和部署。

1. funasr安装

pip install funasr

在这里插入图片描述
在这里插入图片描述

2. 模型下载

pip install modelscope
modelscope download --model iic/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch

在这里插入图片描述
在这里插入图片描述

3. 依赖库安装

pip install torch torchaudio -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install addict, datasets -i https://pypi.tuna.tsinghua.edu.cn/simple
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4. 模式一:使用本地模型

4.1 程序编码(本地模型)

from funasr import AutoModelmodel = AutoModel(model="./speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch",disable_update=True,device="cpu"  # 或 "cuda" 如果有GPU
)    
res = model.inference(input="asr_example.wav")
print("识别结果:", res[0]["text"])

4.2. 运行测试(本地模型)

在这里插入图片描述

5. 模式二:运行时自动下载模型

5.1 程序编码(运行时下载模型)

from funasr import AutoModelmodel = AutoModel(model="paraformer-zh",disable_update=True,device="cpu"  # 或 "cuda" 如果有GPU
)    
res = model.inference(input="asr_example.wav")
print("识别结果:", res[0]["text"])

5.2 运行测试(运行时下载模型)

下载后,第二次执行则不再下载,但程序启动会检查。
在这里插入图片描述

6. 模式三:指定vad等子模型

6.1 程序编码(指定子模型)

from funasr import AutoModelmodel = AutoModel(model="paraformer-zh",model_revision="v2.0.4",vad_model="fsmn-vad",punc_model="ct-punc",disable_update=True,device="cpu"  # 或 "cuda" 如果有GPU
)    
res = model.inference(input="asr_example.wav")
print("识别结果:", res[0]["text"])

6.2 运行测试(指定子模型)

在这里插入图片描述

7. 模式四:使用generate

7.1 程序编码(使用generate)

from funasr import AutoModel
import soundfile as sfmodel = AutoModel(model="paraformer-zh",model_revision="v2.0.4",vad_model="fsmn-vad",punc_model="ct-punc",disable_update=True,device="cpu"  # 或 "cuda" 如果有GPU
)    
waveform, _ = sf.read("asr_example.wav")result = model.generate(input=waveform)
print("识别结果:", result[0]["text"])

7.2 运行测试(使用generate)

在这里插入图片描述
第二次运行不会下载模型。
在这里插入图片描述

# 创建虚拟环境
python -m venv sensevoice_env
source sensevoice_env/bin/activate  # Linux/macOS
sensevoice_env\Scripts\activate     # Windows# 安装 SenseVoice 依赖
pip install torch torchaudio numpy

在这里插入图片描述

http://www.lryc.cn/news/2394381.html

相关文章:

  • Vue 项目中 Sass 与 Less 的对比
  • Python爬虫实战:研究CherryPy库相关技术
  • 已解决:.NetCore控制台程序(WebAPI)假死,程序挂起接口不通
  • Excel如何分开查看工作表方便数据撰写
  • 微软技术赋能:解锁开发、交互与数据潜力,共探未来创新路
  • VR看房系统,新生代看房新体验
  • 【Linux笔记】Shell-脚本(下)|(常用命令详细版)
  • 钉钉热点实时推送助理-思路篇
  • RuoYi前后端分离框架实现前后端数据传输加密(一)之后端篇
  • 第七十篇 从餐厅后厨到电影院选座:生活场景拆解Java并发编程核心
  • 深入理解设计模式之代理模式
  • 8位单通道数据保存为JPG
  • 【Java实战】低侵入的线程池值传递
  • 实验设计与分析(第6版,Montgomery)第5章析因设计引导5.7节思考题5.11 R语言解题
  • c++复习_第一天(引用+小众考点)
  • 《软件工程》实战— 在线教育平台开发
  • Unity中的JsonManager
  • 《AI大模型的开源与性能优化:DeepSeek R1的启示》
  • Java-代码段-http接口调用自身服务中的其他http接口(mock)-并建立socket连接发送和接收报文实例
  • iOS 使用CocoaPods 添加Alamofire 提示错误的问题
  • Python打卡训练营学习记录Day41
  • 单链表反序实现
  • C++深入类与对象
  • 机器学习算法04:SVC 算法(向量机分类)
  • Fragment事务commit与commitNow区别
  • LVS-DR高可用-Keepalived
  • 阿里云服务器邮件发送失败(dail tcp xxxx:25: i/o timeout)因为阿里云默认禁用 25 端口
  • 力扣HOT100之动态规划:322. 零钱兑换
  • 电商售后服务系统与其他系统集成:实现售后流程自动化
  • kafka学习笔记(三、消费者Consumer使用教程——消费性能多线程提升思考)