模型概述: Granite-Speech-4.1-2B-NAR 是一款非自回归(NAR)语音识别模型,它将自动语音识别(ASR)任务构建为条件转录编辑任务。 该模型并非逐词解码,而是利用双向大型语言模型(LLM)在单次前向传播中对 CTC 假设结果进行编辑,与自回归模型相比,在保证识别准确率具有竞争力的同时,实现了更快的推理速度。 本模型基于 此论文 中描述的 NLE(基于非自回归 LLM 的编辑)架构。
如果您的应用场景将准确率置于首位,可考虑 Granite Speech 4.1 系列中的自回归模型 granite-speech-4.1-2b。该模型虽能提供更高的转录准确率,但推理延迟也相应增加。它可以生成带标点和首字母大写的转录文本,支持 AST(自动语音翻译)和关键词偏向识别,并包含日语支持。
当需要说话人信息或词级时间戳信息时,建议使用 granite-speech-4.1-2b-plus。该模型在上述模型基础上进行了扩展,支持说话人归因 ASR(即包含说话人标签和词语转录)以及词级时间信息。
发布日期:2026 年 4 月
许可证:Apache 2.0
支持语言: 英语、法语、德语、西班牙语、葡萄牙语
预期用途: 本模型旨在用于自动语音识别任务,尤其适用于对推理速度有严格要求的低延迟应用场景。
Open ASR 排行榜 上的 RTFx-WER 结果(截至 2026 年 4 月)。
采用 bfloat16 推理精度进行贪婪解码。词错误率(WER)是在使用 whisper_normalizer 的 EnglishTextNormalizer 进行文本归一化后,通过 jiwer 计算得出。
由于归一化方法和评分流程的差异,Open ASR 排行榜上的结果可能会略有不同。
在单张 H100 GPU 上(批处理推理,批大小为 128)测得的 RTFx 约为 1820。
| 数据集 | WER | 数据集 | WER |
|---|---|---|---|
| LibriSpeech clean | 1.29 | MLS EN | 4.77 |
| LibriSpeech other | 2.75 | MLS DE | 4.75 |
| CommonVoice 15 EN | 6.50 | MLS ES | 3.31 |
| CommonVoice 15 DE | 4.73 | MLS FR | 4.52 |
| CommonVoice 15 ES | 4.02 | MLS PT | 11.86 |
| CommonVoice 15 FR | 7.17 | AMI IHM | 7.91 |
| CommonVoice 15 PT | 2.57 | AMI SDM | 19.59 |
| Earnings-22 | 8.48 | GigaSpeech | 10.12 |
| SPGISpeech | 3.04 | TED-LIUM | 3.67 |
| VoxPopuli | 5.83 |
我们的推理过程需要 flash_attention_2,因为该后端支持序列打包,并且遵循 is_causal=False 标志。
已在 transformers==4.57.6 和 transformers==5.5.3 版本,搭配 torch==2.9.1 进行测试。
# Fresh install (CUDA 12.8, Python 3.10+)
pip install torch==2.9.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu128
pip install transformers==4.57.6 accelerate==1.13.0 safetensors==0.7.0 huggingface-hub==0.36.2 tokenizers==0.22.2
pip install soundfile
pip install flash-attn==2.8.3 --no-build-isolationtransformers 进行推理import torch
import torchaudio
from huggingface_hub import hf_hub_download
from transformers import AutoModel, AutoFeatureExtractor
device = "cuda" if torch.cuda.is_available() else "cpu"
model_name = "ibm-granite/granite-speech-4.1-2b-nar"
model = AutoModel.from_pretrained(model_name, trust_remote_code=True,
attn_implementation="flash_attention_2", device_map=device,
dtype=torch.bfloat16).eval()
feature_extractor = AutoFeatureExtractor.from_pretrained(model_name, trust_remote_code=True)
# Load sample audio from the repo
audio_path = hf_hub_download(repo_id=model_name, filename="10226_10111_000000.wav")
waveform, sr = torchaudio.load(audio_path)
if sr != 16000:
waveform = torchaudio.functional.resample(waveform, sr, 16000)
if waveform.shape[0] > 1:
waveform = waveform.mean(dim=0, keepdim=True)
waveform = waveform.squeeze(0)
# Extract features and run inference
inputs = feature_extractor([waveform], device=device)
output = model.generate(**inputs)
print(f"Prediction: {output.text_preds[0]}")该架构包含三个组件:
(1) CTC 语音编码器(4.4 亿参数)
一个 16 层 Conformer 编码器,通过 CTC 在字符级目标上进行训练。它处理 16kHz 音频,使用堆叠的对数梅尔特征(80 个梅尔 bins,2 帧堆叠),并采用块注意力机制,音频块大小为 4 秒,在第 8 层使用自条件化。
编码器具有一个双 CTC 头:除了字符级输出外,一个辅助 BPE 头会针对 LLM 的 10 万 token 词汇表生成 CTC 对数概率。BPE 头采用后验加权池化(窗口大小为 4),其重要性权重来源于中间层的空白概率(1 - blank_prob)。
(2) Q-Former 投影器(1.6 亿参数)
一个 2 层窗口 Q-Former,将来自 4 个编码器层(第 4、8、12、16 层)的拼接隐藏表示下采样 5 倍。 每个 15 帧窗口通过交叉注意力缩减为 3 个查询,为 LLM 生成 10Hz 的声学嵌入速率(编码器提供 2 倍 + 投影器提供 5 倍)。
(3) 双向 LLM 编辑器(10 亿参数,LoRA 适配)
granite-4.0-1b-base 移除了其因果注意力掩码,从而支持双向上下文。 通过在注意力层和 MLP 层应用 LoRA(秩 128)进行适配。LLM 接收拼接的音频嵌入以及带有插入槽的交错 CTC 假设,然后使用 CTC 目标在单次并行前向传递中预测编辑后的转录文本。
此设计利用了 Transformer 的恒等映射偏差:残差连接和绑定嵌入使模型自然倾向于复制输入 token,因此它将学习能力集中在修正上,而非完全重建。
该模型在五种语言(英语、西班牙语、法语、德语、葡萄牙语)的约13万小时语音数据上进行了训练,所使用的公开可用数据集包括CommonVoice 15、MLS、LibriSpeech、Libriheavy long、AMI、Granary VoxPopuli、Granary YODAS、Earnings-22、Fisher、CallHome和SwitchBoard。 有关更多训练详情,请参见论文。
训练在IBM的Blue Vela集群上完成,使用16块H100 GPU(2个节点),共进行了5个epoch(3天)。
该模型专为自动语音识别设计,不生成自由形式的文本,与通用型语音语言模型相比,这降低了幻觉风险。 然而,转录准确率会因语言和声学条件的不同而有所差异。对于训练数据较少的语言(例如葡萄牙语)或在具有挑战性的声学环境中(例如远场、重叠语音),模型性能可能较弱。
该模型的编辑方式在设计上较为保守——它倾向于删除而非插入,这降低了幻觉风险,但在嘈杂环境中偶尔可能会遗漏词语。
为增强安全性,我们建议将granite-speech-4.1-2b-nar与Granite Guardian配合使用。Granite Guardian是一款经过微调的指令模型,旨在检测和标记IBM AI Risk Atlas中概述的关键维度下提示和响应中的风险。
📄 阅读我们的论文:
⭐️ 了解Granite:https://www.ibm.com/granite
💡 了解最新的Granite学习资源:https://ibm.biz/granite-learning-resources