测了 11 个中文语音识别模型:识别最准,也可能漏掉念错的字
我听辨标注了 168 段中文合成播客音频,用它们比较 11 个开放的语音识别模型。Qwen3-ASR-1.7B 的字符错误率最低,但准确率高的模型有时会把念错的内容自动纠正,反而掩盖发音问题。这次测试让我决定更换第二遍检查模型,同时保留人工听辨。
我会用语音识别检查每一期中文播客。这次测试让我量化了一个盲点:识别模型把文字写对了,并不代表合成语音把它念对了。
在我确认音频正确的片段上,11 个模型中表现最好的是 Qwen3-ASR-1.7B,字符错误率约为 1/40;目前用于第二遍检查的模型,约为 1/7。前者更准,但准确率高的模型也会悄悄“修正”合成语音的错误读音,让本该被检查出来的问题消失在转写文本里。
我的播客由文本转语音引擎配音。每期音频先经过两遍自动语音识别(ASR),再由语言模型将转写文本与脚本比较;有疑问的地方切成短音频,交给我听辨。两周里,我一共标注了 168 段,其中 141 段没有发现问题,27 段有缺陷。剔除不适合主分析的早期片段后,用于准确率比较的是 136 段确认正确的音频。
这些数据来自实际播客制作:既有经听辨核对的参考文本,也有我确实听到的错误,可以同时检验“转写准不准”和“能不能发现配音缺陷”。
转写准确率,差距很明显
在这 136 段正确音频上,最好模型的字符错误率约为 2.4%,我当前的第二遍检查模型则为 14.3%。

| 模型 | 字符错误率 | 统一数字写法后的字符错误率 | 被误报的正确片段数(共 136 段) |
|---|---|---|---|
| Qwen3-ASR-1.7B | 2.4% | 2.1% | 1 |
| Qwen3-ASR-0.6B | 2.8% | 2.7% | 1 |
| FireRedASR2-AED | 2.9% | 2.9% | 4 |
| Fun-ASR-Nano | 3.0% | 2.9% | 5 |
| Paraformer(当前第一遍) | 4.4% | 4.3% | 3 |
| SenseVoice-Small | 4.4% | 4.3% | 5 |
| Whisper-large-v3 | 7.1% | 3.8% | 13 |
| Belle-Whisper-turbo-zh | 7.3% | 7.5% | 10 |
| Cohere Transcribe | 8.2% | 5.1% | 15 |
| Zipformer-large | 13.8% | 13.4% | 29 |
| Zipformer-middle(当前第二遍) | 14.3% | 14.0% | 33 |
表中的 Belle-Whisper-turbo-zh,是本次测试的 Belle-Whisper-large-v3-turbo-zh 的简称。
前四个模型都优于当前第一遍使用的 Paraformer,这个差距在重采样分析中仍然成立。Whisper-large-v3 和 Cohere Transcribe 的错误率,主要受到数字写法的影响:将“V3”和“V三”视为相同内容后,Whisper 的错误率接近减半。
我当前第二遍用的是小型 Zipformer。正确音频中的 84 个英文术语,它漏掉了 80 个,还会把“Attention”写成近似读音的汉字。
字写对了,可能恰好掩盖了缺陷

合成语音曾把“省”念成“xing”,而不是“sheng”。Qwen3-ASR-1.7B 和 FireRedASR2-AED 都写出了正确的“省”,于是转写与脚本一致,读音错误没有显现。另一次,音频把“AutoML”念成了“Auto-L”,FireRed 和 Qwen3-ASR-0.6B 仍然写成“AutoML”。
Cohere Transcribe 则写出了“Altomel”,并将念错的“省”写成“行”,反而暴露了实际读音。
做质量检查时,至少需要有一遍识别能保留声音里的偏差。识别器内部较强的语言模型有利于生成可读字幕,却也可能把配音检查需要发现的错误纠正掉。
换掉第二遍检查,能减少多少无效听辨
在这批数据上,将第二遍模型换成 Qwen3-ASR-1.7B,检出的缺陷数不变,需要我复听的误报位置却减少了一半以上。

现有流程会在两种情况下把一个位置交给我:两遍识别都与脚本不一致;或者其中一遍显示含义改变、多音字读音不同。我按这套规则对 11 个模型的全部 55 种两两组合进行了评估。这里是对生产分流规则的近似评估,尚不能当作更换模型后的线上实测结果。
| 组合 | 检出的缺陷位置(共 10 处) | 送交复听的正确位置(共检查 218 处) | 被误报的正确片段(共 136 段) |
|---|---|---|---|
| Paraformer + Zipformer-middle(当前) | 8 | 36 | 33 |
| Paraformer + Qwen3-ASR-1.7B(准备采用) | 8 | 14 | 3 |
| Qwen3-ASR-0.6B + Qwen3-ASR-1.7B | 8 | 11 | 1 |
| Qwen3-ASR-1.7B + Cohere Transcribe | 9 | 12 | 15 |
| Whisper-large-v3 + Qwen3-ASR-1.7B | 9 | 13 | 13 |
新旧组合都检出 8 处,但并非同样的 8 处:新组合漏掉了旧模型能发现的一处“调”字误读,却发现了旧模型漏掉的“Llama”错误发音。
另有两种组合检出 9 处。不过,缺陷样本只有 10 处,多检出一处还不足以让我认定它们更好。更换现有第二遍模型的依据,不依赖这 10 处缺陷的小样本;它主要来自 136 段正确音频上的大量误报。
哪些问题仍然需要耳朵判断

去掉重复记录后,共有 19 处音频缺陷、6 处脚本文字问题。19 处音频缺陷中,只有 7 处会可靠地改变转写文本:5 处词语错误或遗漏,2 处读音错误且对应不同汉字的问题。其余包括 9 处停顿或疑问句语调平淡的问题,以及 3 处字写对了、读法却不对的问题。
前面模型组合比较的 10 处缺陷,取自这 7 处词语或不同汉字的读音问题,加上 3 处同字异音问题;它们不包含那 9 处停顿和语气问题。
普通转写文本不能可靠地呈现这些停顿、语气和同字异音问题,因此人工听辨还要保留。接下来我准备:
- 将第二遍模型换成 Qwen3-ASR-1.7B。
- 继续亲自检查语气、停顿和多音字。
- 继续标注,新增至少 30 处词级缺陷后,重新比较检出 8 处与 9 处的组合。
为质量检查选择识别器,要看它能暴露哪些问题。转写排行榜上的分数,只回答了其中一个问题。
测试方法与边界
- 数据集: 168 段中文播客音频,约 25 分钟,均由我听辨。确认正确的片段,以脚本文字作为参考转写。最早一个审听页面里的音频截得比卡片文本长,该批 13 段不纳入主分析;其中有 5 段原本标为正确,因此准确率比较使用 141−5=136 段正确音频。27 条原始缺陷记录去掉两条重复后,得到上文的 19 处音频缺陷和 6 处脚本文字问题。
- 评分: 先使用与生产检查器相同的文本规范化方式,再计算字符错误率;另算拼音层面的错误率,不将“它/他”这类同音字差异算作声音错误。置信区间通过对音频片段重采样获得。
- 限制: 音频来自两个合成声音,不是真人语音,模型排名未必适用于真人录音。组合的缺陷检出结果只基于 10 个位置。其中一次 Cohere Transcribe 转写漏掉了片段中的大部分内容。
- 测试模型: Qwen3-ASR-1.7B 和 0.6B、FireRedASR2-AED、Paraformer、Cohere Transcribe,以及 Fun-ASR-Nano、SenseVoice-Small、Whisper-large-v3、Belle-Whisper-large-v3-turbo-zh 和两个 WenetSpeech Zipformer 模型。