语音助手为什么总抢话?一文看懂 240ms 延迟的实时流式语音识别如何给出不抢话答案
【免费下载链接】Audio8-ASR-Infinite项目地址: https://ai.gitcode.com/hf_mirrors/Edge0/Audio8-ASR-Infinite
Audio8 ASR Infinite 是一个原生流式的实时语音识别模型:你说话的同时它就在持续消费音频、持续吐字,落笔延迟最快可到240 ms。它支持中英双语与 24/7 不间断的长音频转写,官方评测里中文 CER 最低1.750(单位:百分数)。
声学 VAD 为什么总是抢话、断错句
设想一个客服通话场景:你说"我想查一下那个订单,呃……20 号的那笔",中间有一个半秒的思考停顿。传统声学 VAD 只回答一个问题——"这里有没有人声?"能量一下去就判"说完了",系统立刻抢答,直播字幕里一行字也被拦腰截断。可真实对话里,思考性停顿、口吃、句中换气,声学能量都在,人却还没说完。要判断"你到底说完了没有",得靠语义级判断,这正是 Audio8 所说的 Semantic VAD:区分思考停顿、口吃与真正的轮次结束。当前 Preview 版交付的是 ASR 基座,正式版将在这套基座之上构建帧级语义感知。
多快、多长、多稳:拆三个硬指标
多快:三档音频时钟怎么选,240–560 ms 延迟旋钮怎么调
音频塔以20 ms为一帧处理波形(见 config.json 的audio_tower_frame_ms),再用frame_len(4/6/8)组合出三档流式时钟——时钟好比节拍器,节拍越短响应越快。每个时钟步产出一个文本 token:80 ms时钟下,模型每秒做 12.5 次"听—判—写"决策。target_delay_ms决定模型"听完多久再落笔":越短出字越快,但纠错窗口越小;越长识别越稳。官方后训练调优出的最优点组合:
| 音频时钟 | frame_len | 左侧补齐 token | 可选 target_delay_ms |
|---|---|---|---|
| 80 ms | 4 | 18 | 240 / 320 / 480 / 560 |
| 120 ms | 6 | 12 | 240 / 480 |
| 160 ms | 8 | 9 | 320 / 480 |
约束只有一条:延迟值必须是所选时钟的整数倍。语音助手、电话客服这类抢答场景选80 ms;批量转写、成本敏感选 160 ms 更省算力。
多长:30 秒滚动笔记本如何转写 24/7 不间断
模型原生上下文只有30 秒,一通客服电话就够呛。Audio8 的做法是 30 秒滚动 KV 缓存窗口加精确 RoPE 重基准化——像一本只记最近 30 秒、但绝不写偏的滚动记事本:持续转写时内存与延迟全程恒定,不漂移、不膨胀,24/7 连续运转。仓库里的演示视频 Audio8-Asr-Infinite-Demo.mp4 展示的就是这种不间断效果。
多稳:中英双语识别的准确靠什么兜底
音频塔是 Voxtral Realtime 4B 因果架构(32 层、128 mel bins),文本主干是 Qwen2.5-3B-Instruct,整体 bfloat16,权重约8.17 GB。官方评测采用贪婪解码并注明:无重复循环、无尾部丢词——这两条正是流式 ASR 最常见的"老毛病"。
数据验证:官方 480 ms 延迟评测的强弱项在哪
下表来自 README.md 的官方评测(80 ms 时钟、target_delay_ms = 480、贪婪解码,错误率单位均为百分数):
| 测试集 | 指标 | Audio8 ASR Infinite | Voxtral-Mini-4B-Realtime-2602 | nemotron-3.5-asr-streaming-0.6b |
|---|---|---|---|---|
| aishell1/test | CER | 1.750 | 16.795 | 12.927@560 ms |
| aishell4/test | CER | 2.893 | 16.456 | 14.677@560 ms |
| librispeech test.clean | WER | 3.042 | 2.210 | 3.353@560 ms |
| librispeech test.other | WER | 6.808 | 5.552 | 7.140@560 ms |
| 平均 | — | 3.623 | 10.253(2 套) | 9.524 |
中文是它最硬的强项:aishell 两个集合 CER 不到 3%,不足对手的四分之一。英文上则略逊于 Voxtral 原版,这点要如实说。另外注意 nemotron 一列是560 ms延迟下的成绩,Audio8 是480 ms,它的延迟优势是实打实的。
帧级语义感知是什么:让模型当"短期语音气象预报员"
正式版对"抢话"问题给出的答案写进路线图:在同一帧网格、同一次声学前向之上构建帧级语义感知——不需要额外的音频模型,也不需要第二次推理,语义判定搭已有流式前向的便车,近乎零额外成本。而预览版权重里其实已经埋好了这套判定头的骨架:独立权重 semantic_vad_heads.safetensors,实现位于 modeling_audio8_asr_infinite.py 的attach_semantic_vad_heads。
- 🎯 每个流式帧同时给出 4 份"预判":未来0.5 / 1.0 / 2.0 / 3.0 s内还会出现多少个语义单元;
- 🎯 每个时窗配一个8 类分类头(预测 0–7 个单元),第 0 类即"结束轮次"类,实时客户端直接拿它当断句阈值;
- 🎯 头读取文本主干的最后一层隐状态,判定与转写在同一步产出。
传统 VAD 看的是"现在有没有声音",这套头则像短期语音气象预报员,逐帧播报未来 3 秒内还会不会"下雨(语音内容)"。当 4 个时窗全部预测 0 个单元,系统即可高置信判定:这一轮真的说完了,可以把话语权交还。
三步跑通实时转写链路
- 获取权重:本仓库就是完整合并的 checkpoint,仅支持这种完整权重目录形式(不支持 adapter 或部分转换权重);
- 本地模拟流式解码:基于 transformers 以
trust_remote_code=True加载,按 80 ms 时钟 +target_delay_ms = 480调用模拟流式贪婪解码,即可得到逐字输出; - 24/7 部署:官方推荐定制版 vLLM + Docker Compose,自带 Web 演示客户端(
http://localhost:8080/)与 WebSocket 实时接口(/v1/realtime),在浏览器里就能体验"说话—出字"全链路。
结语
Preview 版已证明:原生流式能把"听—判—写"压到每秒 12.5 次,滚动 KV 能让长音频转写不失忆、不漂移。真正让体验质变的是帧级语义感知——它让"说什么"与"何时说"第一次在同一帧网格上合流。建议持续跟进 README 中的路线图更新,重点关注 Semantic VAD 的正式版落地。
【免费下载链接】Audio8-ASR-Infinite项目地址: https://ai.gitcode.com/hf_mirrors/Edge0/Audio8-ASR-Infinite
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考