FunASR:阿里巴巴开源的语音识别工具包,提供预训练模型与详细教程,一键部署多场景应用.

❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

微信订阅号|搜一搜:蚝油菜花

🚀 快速阅读

  1. FunASR 是由阿里巴巴开源的语音识别工具包,支持多种功能,包括语音识别、语音活动检测、标点恢复、说话人验证等。
  2. FunASR 提供了预训练模型和易于使用的接口,支持快速部署,满足不同场景的应用需求。
  3. 本文将介绍 FunASR 的主要功能、技术原理,并提供运行示例和安装教程。

正文(附运行示例)

FunASR 是什么

FunASR 是由阿里巴巴达摩院开源的语音识别工具包,旨在帮助研究人员和开发者更高效地进行语音识别模型的研究和生产。它支持多种功能,如语音识别(ASR)、语音活动检测(VAD)、标点恢复、说话人验证和多人对话语音识别等。FunASR 提供了便捷的脚本和教程,支持预训练模型的推理与微调,使用户能够快速部署语音识别服务。

FunASR 的主要功能

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

如何运行 FunASR

安装教程

确保已安装以下依赖环境:

shell 复制代码
python>=3.8
torch>=1.13
torchaudio

使用 pip 安装:

shell 复制代码
pip3 install -U funasr

或者从源代码安装:

shell 复制代码
git clone https://github.com/alibaba/FunASR.git && cd FunASR
pip3 install -e ./

如果需要使用工业预训练模型,安装 modelscope 与 huggingface_hub(可选):

shell 复制代码
pip3 install -U modelscope huggingface huggingface_hub

运行示例

非实时语音识别

使用 Paraformer 模型进行语音识别:

python 复制代码
from funasr import AutoModel

model = AutoModel(model="paraformer-zh", vad_model="fsmn-vad", punc_model="ct-punc")
res = model.generate(input=f"{model.model_path}/example/asr_example.wav", batch_size_s=300, hotword='魔搭')
print(res)
实时语音识别

使用 Paraformer 模型进行实时语音识别:

python 复制代码
from funasr import AutoModel

chunk_size = [0, 10, 5]  # 600ms
encoder_chunk_look_back = 4
decoder_chunk_look_back = 1

model = AutoModel(model="paraformer-zh-streaming")

import soundfile
import os

wav_file = os.path.join(model.model_path, "example/asr_example.wav")
speech, sample_rate = soundfile.read(wav_file)
chunk_stride = chunk_size[1] * 960  # 600ms

cache = {}
total_chunk_num = int(len((speech)-1)/chunk_stride+1)
for i in range(total_chunk_num):
    speech_chunk = speech[i*chunk_stride:(i+1)*chunk_stride]
    is_final = i == total_chunk_num - 1
    res = model.generate(input=speech_chunk, cache=cache, is_final=is_final, chunk_size=chunk_size, encoder_chunk_look_back=encoder_chunk_look_back, decoder_chunk_look_back=decoder_chunk_look_back)
    print(res)

语音端点检测(VAD)示例

使用 fsmn-vad 模型进行语音端点检测:

python 复制代码
from funasr import AutoModel

model = AutoModel(model="fsmn-vad")

wav_file = f"{model.model_path}/example/vad_example.wav"
res = model.generate(input=wav_file)
print(res)

VAD 模型将返回音频中有效语音段的起始和结束时间,格式如下:

json 复制代码
[[beg1, end1], [beg2, end2], ..., [begN, endN]]

其中 begNendN 以毫秒为单位。

标点恢复示例

使用 ct-punc 模型进行标点恢复:

python 复制代码
from funasr import AutoModel

model = AutoModel(model="ct-punc")

res = model.generate(input="那今天的会就到这里吧 happy new year 明年见")
print(res)

该模型会自动在转录文本中添加合适的标点符号,提升文本的可读性。

时间戳预测示例

使用 fa-zh 模型进行时间戳预测:

python 复制代码
from funasr import AutoModel

model = AutoModel(model="fa-zh")

wav_file = f"{model.model_path}/example/asr_example.wav"
text_file = f"{model.model_path}/example/text.txt"
res = model.generate(input=(wav_file, text_file), data_type=("sound", "text"))
print(res)

该模型将为输入的音频和文本生成时间戳信息。

情感识别示例

使用 emotion2vec_plus_large 模型进行情感识别:

python 复制代码
from funasr import AutoModel

model = AutoModel(model="emotion2vec_plus_large")

wav_file = f"{model.model_path}/example/test.wav"

res = model.generate(wav_file, output_dir="./outputs", granularity="utterance", extract_embedding=False)
print(res)

该模型将返回音频中情感类别的预测结果,如 "生气/angry","开心/happy","中立/neutral","难过/sad"。

资源


❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

微信订阅号|搜一搜:蚝油菜花

相关推荐
AndrewHZ15 分钟前
【图像处理基石】如何对遥感图像进行实例分割?
图像处理·人工智能·python·大模型·实例分割·detectron2·遥感图像分割
CodeShare43 分钟前
某中心将举办机器学习峰会
人工智能·机器学习·数据科学
那就摆吧1 小时前
U-Net vs. 传统CNN:为什么医学图像分割需要跳过连接?
人工智能·神经网络·cnn·u-net·医学图像
深度学习实战训练营1 小时前
中英混合的语音识别XPhoneBERT 监督的音频到音素的编码器结合 f0 特征LID
人工智能·音视频·语音识别
WADesk---瓜子1 小时前
用 AI 自动生成口型同步视频,短视频内容也能一人完成
人工智能·音视频·语音识别·流量运营·用户运营
星环科技TDH社区版1 小时前
AI Agent 的 10 种应用场景:物联网、RAG 与灾难响应
人工智能·物联网
时序之心2 小时前
ICML 2025 | 深度剖析时序 Transformer:为何有效,瓶颈何在?
人工智能·深度学习·transformer
希艾席帝恩2 小时前
拥抱智慧物流时代:数字孪生技术的应用与前景
大数据·人工智能·低代码·数字化转型·业务系统
Bar_artist2 小时前
离线智能破局,架构创新突围:RockAI与中国AI的“另一条车道”
大数据·人工智能
双向332 小时前
高性能MCP服务器架构设计:并发、缓存与监控
人工智能