FireRedASR: 开源工业级自动语音识别模型使用教程
2026-01-30 04:28:39作者:薛曦旖Francesca
1. 项目介绍
FireRedASR 是一套开源的工业级自动语音识别(ASR)模型,支持普通话、中文方言和英语。该模型在公开的普通话ASR基准测试中取得了新的最佳效果(SOTA),并且具有出色的歌声识别能力。
FireRedASR 包括两种变体:
- FireRedASR-LLM:采用编码器-适配器-LLM框架,利用大型语言模型(LLM)的能力,旨在实现最佳性能和无缝端到端语音交互。
- FireRedASR-AED:采用基于注意力的编码器-解码器(AED)架构,旨在平衡高性能和计算效率,作为基于LLM的语音模型中的有效语音表示模块。
2. 项目快速启动
首先,确保您已经安装了以下依赖:
- Python 3.10
- ffmpeg
接下来,按照以下步骤快速启动项目:
# 克隆仓库
git clone https://github.com/FireRedTeam/FireRedASR.git
# 创建Python虚拟环境并安装依赖
cd FireRedASR
conda create --name fireredasr python=3.10
conda activate fireredasr
pip install -r requirements.txt
# 设置环境变量
export PATH=$PWD/fireredasr/:$PWD/fireredasr/utils/:$PATH
export PYTHONPATH=$PWD/:$PYTHONPATH
# 转换音频文件格式为16kHz 16-bit PCM
ffmpeg -i input_audio -ar 16000 -ac 1 -acodec pcm_s16le -f wav output.wav
# 运行推理脚本(选择AED或LLM模型)
cd examples
bash inference_fireredasr_aed.sh # 使用AED模型
# 或者
bash inference_fireredasr_llm.sh # 使用LLM模型
3. 应用案例和最佳实践
3.1 使用FireRedASR-AED进行语音识别
from fireredasr.models.fireredasr import FireRedAsr
batch_uttid = ["BAC009S0764W0121"]
batch_wav_path = ["examples/wav/BAC009S0764W0121.wav"]
# 创建并加载模型
model = FireRedAsr.from_pretrained("aed", "pretrained_models/FireRedASR-AED-L")
# 进行语音识别
results = model.transcribe(batch_uttid, batch_wav_path, {
"use_gpu": 1,
"beam_size": 3,
"nbest": 1,
"decode_max_len": 0,
"softmax_smoothing": 1.25,
"aed_length_penalty": 0.6,
"eos_penalty": 1.0
})
# 打印识别结果
print(results)
3.2 使用FireRedASR-LLM进行语音识别
from fireredasr.models.fireredasr import FireRedAsr
batch_uttid = ["BAC009S0764W0121"]
batch_wav_path = ["examples/wav/BAC009S0764W0121.wav"]
# 创建并加载模型
model = FireRedAsr.from_pretrained("llm", "pretrained_models/FireRedASR-LLM-L")
# 进行语音识别
results = model.transcribe(batch_uttid, batch_wav_path, {
"use_gpu": 1,
"beam_size": 3,
"decode_max_len": 0,
"decode_min_len": 0,
"repetition_penalty": 3.0,
"llm_length_penalty": 1.0,
"temperature": 1.0
})
# 打印识别结果
print(results)
4. 典型生态项目
FireRedASR 作为开源项目,可以与其他开源项目结合使用,例如:
- 集成到基于深度学习的语音识别框架中,如 icefall/ASR_LLM。
- 结合 WeNet 或 Speech-Transformer 等现有语音识别模型进行性能比较和优化。
通过社区合作,FireRedASR 将不断发展和完善,为语音识别领域提供更高质量的解决方案。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0172
cann-learning-hubCANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。Jupyter Notebook093
Step-3.7-FlashStep-3.7-Flash是一个拥有 1980 亿参数的稀疏混合专家(MoE)视觉语言模型,由 1960 亿参数的语言主干网络和 18 亿参数的视觉编码器组合而成,具备原生图像理解能力。Python00
BitCPM-CANN-8BBitCPM-CANN 是首个基于华为昇腾 NPU 原生构建的端到端 1.58 位(三值化)大语言模型训练系统。该系统将量化感知训练(QAT)集成到 Megatron-LM 框架中,并结合 MindSpeed 加速,覆盖了从自定义三值算子到基于昇腾 910B 的分布式并行训练的完整训练栈。Python00
MiniCPM5-1BMiniCPM5-1B,这是 MiniCPM5 系列的首款模型。它是一个专为端侧、本地部署和资源受限场景打造的 10 亿参数密集型 Transformer 模型,达到了 10 亿参数级开源模型的 SOTA 水平Jinja00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0239
项目优选
收起
暂无描述
Dockerfile
749
4.86 K
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
641
1.26 K
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
835
1.83 K
Ascend Extension for PyTorch
Python
685
828
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
450
417
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.02 K
1.04 K
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
207
93
Oohos_react_native
React Native鸿蒙化仓库
C++
352
413
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
1.54 K
172
deepin linux kernel
C
32
16