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

音转文模型对比FunASR与Faster_whisper

FunASR简介

        FunASR是由阿里巴巴达摩院开源的语音识别工具包,提供包括语音识别(ASR)、语音活动检测(VAD)、标点恢复、语言模型、说话人验证、说话人分离及多说话人ASR等多种功能。FunASR工具包支持工业级语音识别模型的训练和微调,旨在帮助研究人员和开发者更高效地进行语音识别模型的研究和生产,推动语音识别技术的发展。FunASR基于提供预训练模型和易于使用的接口,使用户快速部署语音识别服务,满足不同场景的应用需求。2024年10月16日,FunASR新增支持Whisper-large-v3-turbo模型,进一步扩展在语音识别领域的应用能力。

  • 语音识别(ASR):将语音信号转换为文本信息。
  • 语音活动检测(VAD):识别语音信号中的有效语音部分,过滤掉静音或背景噪音。
  • 标点恢复:在语音识别结果中自动添加标点符号,提高文本的可读性。
  • 说话人验证:识别并验证说话人的身份。
  • 说话人分离:在多人对话中区分不同说话人的声音。
  • 多说话人ASR:处理多人同时说话的场景,识别和区分每个人的语音。

FunASR的技术原理

  • 自然语言处理(NLP):理解和生成自然语言,实现流畅对话。
  • 语音识别和合成:将用户的语音转换为文本,合成虚拟角色的语音输出。
  • 语音端点检测(VAD):基于FSMN-VAD模型,准确检测语音的起始和结束,提高语音识别的准确性。
  • 标点预测:集成标点预测模型,能在转录文本中自动添加标点符号,使转录结果更加符合阅读习惯,提升文本的可读性。

FunASR的项目地址

  • 项目官网:funasr.com
  • GitHub仓库:GitHub - modelscope/FunASR: A Fundamental End-to-End Speech Recognition Toolkit and Open Source SOTA Pretrained Models, Supporting Speech Recognition, Voice Activity Detection, Text Post-processing etc.

代码实现

import json
import time
from funasr import AutoModel
# 计时开始
start_time = time.time()
# 初始化模型 - 使用支持热词的新模型
model = AutoModel(# model="iic/speech_paraformer-large-vad-punc-spk_asr_nat-zh-cn",model="iic/speech_seaco_paraformer_large_asr_nat-zh-cn-16k-common-vocab8404-pytorch",vad_model="iic/speech_fsmn_vad_zh-cn-16k-common-pytorch",punc_model="iic/punc_ct-transformer_zh-cn-common-vocab272727-pytorch",spk_model="iic/speech_campplus_sv_zh-cn_16k-common",vad_kwargs={"max_single_segment_time": 1000}
)
# 生成语音识别结果
res = model.generate(input="音频文件.wav",merge_vad=False,  
)# 提取所需字段
simplified_result = []
durations = []  # 用于存储每段的时间长度
print('总音频',res[0]['text'])#以下代码可以获取生成时间,需要输出时间的情况。
#for i,segment in enumerate(res):
#                    segmentText = res[0]['text']
#                    # print(self.device_clerk,i,"[%.2fs -> %.2fs] %s" % #(segment.start, segment.end, segmentText))
#                    print(f"{self.device_clerk} {i} [{segment.get('start', 0):.2f}s #-> {segment.get('end', 0):.2f}s] {segmentText}")

Faster_whisper

faster-whisper是基于OpenAI的Whisper模型的高效实现,它利用CTranslate2,一个专为Transformer模型设计的快速推理引擎。这种实现不仅提高了语音识别的速度,还优化了内存使用效率。faster-whisper的核心优势在于其能够在保持原有模型准确度的同时,大幅提升处理速度,这使得它在处理大规模语音数据时更加高效。

具体的调用代码:

from faster_whisper import WhisperModelmodel = WhisperModel(model_path, device="cuda", device_index=[cuda_index], compute_type="float16")segments, info = self.model.transcribe(audio_file, language="zh",vad_filter=True) for i,segment in enumerate(res):segmentText = res[0]['text']print(self.device_clerk,i,"[%.2fs -> %.2fs] %s" % (segment.start, segment.end, segmentText))

http://www.xdnf.cn/news/1473931.html

相关文章:

  • 《sklearn机器学习——聚类性能指标》Contingency Matrix(列联表)详解
  • PlantSimulation 在汽车总装车间配送物流仿真中的应用
  • Fantasia3D:高质量文本到3D内容创建工具
  • 【基础-判断】架构设计时需要考虑“一次开发,多端部署”,这样可以节省跨设备UI开发工作量,同时提升应用部署的伸缩性。
  • 【基础-判断】Background状态在UIAbility实例销毁时触发,可以在onDestroy()回调中进行系统资源的释放、数据的保存等操作。
  • wpf之TextBlock
  • Altium Designer(AD24)切换工作界面为浅灰色的方法
  • 怎么用 tauri 创建一个桌面应用程序(Electron)
  • 新手SEO优化快速起步教程
  • C++ Lambda 表达式完整指南
  • Python 正则表达式实战:用 Match 对象轻松解析拼接数据流
  • SpringAMQP
  • EMS 抗扰度在边缘计算产品电路设计的基本问题
  • 《AI大模型应知应会100篇》第68篇:移动应用中的大模型功能开发 —— 用 React Native 打造你的语音笔记摘要 App
  • 深入剖析Spring Boot自动配置原理
  • JAVA同城打车小程序APP打车顺风车滴滴车跑腿源码微信小程序打车源码
  • Android模拟简单的网络请求框架Retrofit实现
  • 具身智能模拟器:解决机器人实机训练场景局限与成本问题的创新方案
  • 【尚跑】2025逐日者15KM社区赛西安湖站,74分安全完赛
  • 腾讯混元游戏视觉生成平台正式发布2.0版本
  • 软件设计师备考资料与高效复习方法分享
  • 小米笔记本电脑重装C盘教程
  • Spring MVC 处理请求的流程
  • 提示语规则引擎:spring-ai整合liteflow
  • [Upscayl图像增强] 多种AI处理模型 | 内置模型与自定义模型
  • IDEA修改系统缓存路径,防止C盘爆满
  • echarts实现两条折线区域中间有线连接,custom + renderItem(初级版)
  • 本地MOCK
  • Redis中的List数据类型
  • 002 -Dephi -Helloworld