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

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

1. funasr安装

sh 复制代码
pip install funasr


2. 模型下载

sh 复制代码
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 程序编码(本地模型)

python 复制代码
from funasr import AutoModel

model = 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 程序编码(运行时下载模型)

python 复制代码
from funasr import AutoModel

model = 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 程序编码(指定子模型)

python 复制代码
from funasr import AutoModel

model = 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)

python 复制代码
from funasr import AutoModel
import soundfile as sf

model = 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)

第二次运行不会下载模型。

sh 复制代码
# 创建虚拟环境
python -m venv sensevoice_env
source sensevoice_env/bin/activate  # Linux/macOS
sensevoice_env\Scripts\activate     # Windows

# 安装 SenseVoice 依赖
pip install torch torchaudio numpy
相关推荐
说私域14 分钟前
互联网生态下赢家群体的崛起与“开源AI智能名片链动2+1模式S2B2C商城小程序“的赋能效应
人工智能·小程序·开源
董厂长4 小时前
langchain :记忆组件混淆概念澄清 & 创建Conversational ReAct后显示指定 记忆组件
人工智能·深度学习·langchain·llm
G皮T7 小时前
【人工智能】ChatGPT、DeepSeek-R1、DeepSeek-V3 辨析
人工智能·chatgpt·llm·大语言模型·deepseek·deepseek-v3·deepseek-r1
九年义务漏网鲨鱼7 小时前
【大模型学习 | MINIGPT-4原理】
人工智能·深度学习·学习·语言模型·多模态
元宇宙时间7 小时前
Playfun即将开启大型Web3线上活动,打造沉浸式GameFi体验生态
人工智能·去中心化·区块链
开发者工具分享7 小时前
文本音频违规识别工具排行榜(12选)
人工智能·音视频
产品经理独孤虾8 小时前
人工智能大模型如何助力电商产品经理打造高效的商品工业属性画像
人工智能·机器学习·ai·大模型·产品经理·商品画像·商品工业属性
老任与码8 小时前
Spring AI Alibaba(1)——基本使用
java·人工智能·后端·springaialibaba
蹦蹦跳跳真可爱5898 小时前
Python----OpenCV(图像増强——高通滤波(索贝尔算子、沙尔算子、拉普拉斯算子),图像浮雕与特效处理)
人工智能·python·opencv·计算机视觉
雷羿 LexChien8 小时前
从 Prompt 管理到人格稳定:探索 Cursor AI 编辑器如何赋能 Prompt 工程与人格风格设计(上)
人工智能·python·llm·编辑器·prompt