30分钟上手!FunASR实时Paraformer模型微调全流程
你是否还在为语音识别模型适配特定场景发愁?本文将带你从零开始,通过5个步骤完成实时Paraformer模型的微调优化,解决行业术语识别准确率低的痛点。读完后你将掌握数据准备、模型训练、性能验证的全流程,让语音识别系统在你的业务场景中准确率提升20%以上。
为什么选择实时Paraformer
FunASR作为阿里达摩院开源的端到端语音识别工具包,提供了包括语音识别(ASR)、语音端点检测(VAD)、文本后处理等全链路能力。其中实时Paraformer模型凭借非自回归结构,实现了高精度与低延迟的平衡,特别适合实时交互场景。
核心优势:
- 工业级预训练模型:基于6万小时中文数据训练,开源模型在通用场景CER(字符错误率)低至5.8%
- 实时流式处理:支持600ms出字延迟,满足实时对话需求
- 灵活部署:支持ONNX导出,可部署于CPU/GPU/移动端等多种环境
官方文档:docs/tutorial/README_zh.md
模型仓库:model_zoo/modelscope_models_zh.md
环境准备与依赖安装
基础环境要求
开始前请确保你的环境满足:
- Python ≥ 3.8
- PyTorch ≥ 1.13
- 显卡显存 ≥ 12GB(推荐V100/A10以上)
快速安装
# 克隆仓库
git clone https://gitcode.com/GitHub_Trending/fun/FunASR && cd FunASR
# 安装依赖
pip3 install -e ./
pip3 install -U modelscope huggingface_hub
如需使用多GPU训练,建议额外安装DeepSpeed:
pip3 install deepspeed
安装验证:
from funasr import AutoModel
model = AutoModel(model="paraformer-zh-streaming")
print("安装成功")
数据集准备与格式转换
数据规范
微调需要准备两种文件:
- 音频文件列表(wav.scp):包含音频ID和路径
- 文本标注文件(text.txt):包含音频ID和对应转录文本
示例格式:
train_wav.scp
ID0012W0013 /data/audio/ID0012W0013.wav
ID0012W0014 /data/audio/ID0012W0014.wav
train_text.txt
ID0012W0013 当客户风险承受能力评估依据发生变化时
ID0012W0014 所有只要处理data不管你是做machine learning还是deep learning
数据存放路径:data/list/
格式转换工具
使用FunASR提供的scp2jsonl工具将上述文件转换为训练所需的JSONL格式:
scp2jsonl \
++scp_file_list='["data/list/train_wav.scp", "data/list/train_text.txt"]' \
++data_type_list='["source", "target"]' \
++jsonl_file_out="data/list/train.jsonl"
转换后生成的JSONL文件可直接用于训练,示例:data/list/train.jsonl
微调实战步骤
1. 配置训练参数
核心配置文件路径:examples/industrial_data_pretraining/paraformer/finetune.sh
关键参数说明:
| 参数 | 含义 | 推荐值 |
|---|---|---|
CUDA_VISIBLE_DEVICES |
指定GPU设备 | "0,1"(多卡训练) |
model_name_or_model_dir |
预训练模型路径 | "iic/speech_paraformer-large_asr_nat-zh-cn-16k-common-vocab8404-pytorch" |
batch_size |
批处理大小(token数) | 6000(根据显存调整) |
max_epoch |
训练轮次 | 50 |
lr |
学习率 | 0.0002 |
output_dir |
模型保存路径 | "./outputs" |
2. 启动微调训练
cd examples/industrial_data_pretraining/paraformer
bash finetune.sh
训练过程日志会保存至outputs/log.txt,关键指标包括:
loss_avg_rank:多GPU平均损失值acc_avg_epoch:验证集准确率(越高越好)lr:当前学习率
3. 训练监控
使用TensorBoard可视化训练过程:
tensorboard --logdir ./outputs/log/tensorboard
主要监控指标:
- 训练损失(train/loss)
- 验证准确率(valid/acc)
- 学习率变化(train/lr)
模型评估与导出
微调效果验证
训练完成后,使用验证集评估模型性能:
from funasr import AutoModel
model = AutoModel(model="./outputs")
res = model.generate(input="test.wav")
print(res)
关键评估指标:
- CER(字符错误率):越低越好
- 实时率(RTF):越小越好(实时模型需<0.1)
ONNX导出部署
将微调后的模型导出为ONNX格式,便于生产环境部署:
funasr-export ++model="./outputs" ++quantize=true
导出后模型位于./outputs/onnx目录,可通过funasr-onnx库加载使用:
from funasr_onnx import Paraformer
model = Paraformer("./outputs/onnx", quantize=True)
result = model("test.wav")
部署文档:runtime/python/onnxruntime
常见问题解决
显存不足问题
- 减少
batch_size:从6000降至4000 - 启用梯度累积:设置
train_conf.accum_grad=2 - 使用混合精度训练:
train_conf.use_fp16=true
过拟合处理
- 增加训练数据量
- 调整数据增强参数:
dataset_conf.aug_prob=0.5 - 延长训练轮次或早停策略
实时性优化
- 调整流式参数:
chunk_size=[0,8,4](降低延迟) - 模型量化:导出时启用
quantize=true - 部署优化:使用Triton Inference Server
总结与进阶方向
通过本文介绍的流程,你已掌握实时Paraformer模型的微调全流程。建议进一步探索:
- 多轮微调:使用领域数据进行二次微调
- 模型压缩:量化/剪枝减小模型体积
- 热词定制:通过SeACo-Paraformer优化特定词汇识别
项目贡献者名单:Acknowledge.md
模型许可协议:MODEL_LICENSE
收藏本文,关注FunASR项目获取更多技术干货!下一期我们将带来"实时语音识别服务高并发部署实践"。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00- QQwen3-Coder-Next2026年2月4日,正式发布的Qwen3-Coder-Next,一款专为编码智能体和本地开发场景设计的开源语言模型。Python00
xw-cli实现国产算力大模型零门槛部署,一键跑通 Qwen、GLM-4.7、Minimax-2.1、DeepSeek-OCR 等模型Go06
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin08
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00
