1. 模型介绍
SenseVoice 是具有多语言音频理解模型,支持语音识别(ASR)、语种识别(LID)、语音情感识别(SER)和声学事件分类(AEC)或声学事件检测(AED)、逆文本正则化等能力。采用工业级数十万小时的标注音频进行模型训练,保证了模型的通用识别效果。模型可以被应用于中文、粤语、英语、日语、韩语音频识别,并输出带有情感和事件的富文本转写结果。
- 多语言识别: 采用超过40万小时数据训练,支持超过50种语言,识别效果上优于Whisper模型。
- 支持自动语种检测(LID) :SenseVoice 在语音识别过程中可自动判断语种(如中文、粤语、英文等),无需手动指定参数 。
- 技术原理 :模型训练时融合了多语言数据(超50种语言),通过共享编码器提取语言无关特征,在解码阶段动态选择对应语言路径 。
- 局限性 :若需针对特定方言(如四川话、东北话)进一步优化,仍需微调模型或添加方言数据 。
- 富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。
- 高效推理: SenseVoice-Small模型采用非自回归端到端框架,推理延迟极低,10s音频推理仅耗时70ms,15倍优于Whisper-Large。
2. 代码
from funasr import AutoModel
model = AutoModel(
model="./SenseVoiceSmall",
disable_update=True,
device="cpu" # 或 "cuda" 如果有GPU
)
res = model.generate(input="yue.mp3")
print("识别结果:", res[0]["text"])
res = model.generate(input="zh.mp3")
print("识别结果:", res[0]["text"])
res = model.generate(input="en.mp3")
print("识别结果:", res[0]["text"])
3. 模型下载
模型文件官网:【https://modelscope.cn/models】
网盘下载地址:【https://pan.baidu.com/s/1OOPIrm5PJyLMpceXghxGNA?pwd=zhan】