首页
/ FireRedASR: 开源工业级自动语音识别模型使用教程

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 将不断发展和完善,为语音识别领域提供更高质量的解决方案。

登录后查看全文
热门项目推荐
相关项目推荐