工程版本日志 · 2026.08

在当前样本中,长录音为何没有让停止后 ASR 线性变慢

最近一组真实记录里,17.6 到 67.8 秒的录音在停止后的 final ASR 约为 0.42–0.47 秒。原因不是模型瞬间读完了整段,而是稳定语音已经在录音过程中完成识别;用户第二次按下 Option 停止时,只剩最后一个未稳定尾段需要收口。

InkTyper Engineering2026.08.07
0.42–0.47s近期样本停止后 final ASR
17.6–67.8s该组真实录音时长范围
1.99–3.22s同组停止后 AI 整理
尾段有界录音长度不再线性决定 ASR 尾延迟
适用范围受控生产观察数字仍需扩大样本量
证据类型5 条真实 History 样本观察结果、目标值与估算值分开陈述。
当前状态已进入当前路径本篇记录特定日期的工程状态,不代表永久承诺。

01 · THE CHANGE

停止不再意味着“现在才开始识别”

在 Toggle 模式下,第一次按 Option 开始录音,第二次按 Option 停止。过去,停止之后才上传完整音频并依次等待 ASR、AI 和粘贴;现在音频在录音过程中持续进入会话,停顿感知的 SenseVoice 分段不断生成候选结果,稳定前缀被合并并预存。

录音与上传分段 SenseVoice稳定前缀停止时只收口尾段

02 · BOUNDED TAIL

最终 ASR 的工作量由尾段决定,而不是由整段录音决定

如果前面的分段已经完成识别,停止后不需要重新跑完整的 1 分钟、3 分钟或更长音频。final ASR 主要处理最后一个仍可能变化的语音片段,再与已经冻结的稳定前缀合并。

这使停止后的 ASR 时间在正常会话中趋向一个有界尾延迟,而不是随着总录音时长线性增长。

03 · REAL RECORDS

近期真实记录显示 ASR 已经不再是主要等待

  • 17.6 秒录音:final ASR 约 416ms,AI 约 2.26s。
  • 22.8 秒录音:final ASR 约 424ms,AI 约 2.42s。
  • 29.2 秒录音:final ASR 约 436ms,AI 约 1.99s。
  • 58.6 秒录音:final ASR 约 444ms,AI 约 3.22s。
  • 67.8 秒录音:final ASR 约 467ms,AI 约 2.19s。

04 · THE NEW BOTTLENECK

瓶颈已经从 ASR 转移到最终 AI 整理

这组样本中,停止后的 AI 大约占 ASR 与 AI 合计时间的 82%–88%。ASR 尾段已经压到半秒附近,但最终的纠错、标点、格式和意图约束仍需要约两秒到三秒出头。下一轮优化重点是复用录音期间完成的滚动 AI 结果,只整理尚未冻结的尾部,而不是每次重新处理整篇文本。

05 · WHAT THIS DOES NOT MEAN

长录音不是完全免费

  • 网络累计流量、断线恢复和片段去重仍随时间增加。
  • 稳定前缀合并必须防止漏词、重复和语言翻转。
  • 长文本 AI 的上下文、输出长度和成本仍会增长。
  • 10–20 分钟会议需要独立的分块上传、任务队列、说话人和摘要流程。
  • 当前数字来自少量真实 History 样本,不等同于完整 p50/p95/p99 生产承诺。

06 · NEXT

下一步是让 AI 也具备同样的尾段有界特性

稳定句子在录音期间异步整理并冻结;停止时只把最后的未稳定语义片段与少量不可变上下文交给 AI。AI 超时或失败时先交付可靠 ASR,不能让润色阻塞输入。达到这一点以后,录音长度对停止后等待的影响才会进一步缩小。

证据 · 诊断

现有证据能说明什么,不能说明什么

这次改动解决的是停止后的尾延迟,而不是宣称长录音没有成本。判断依据来自同一客户端记录的录音时长、final ASR 与 AI 阶段计时;没有用单次 GPU 跑分替代端到端结果。

统一阅读规则生产观察只描述实际走过的路径;受控基准用于隔离单一组件;目标值在持续分布达标以前始终只是目标。

运维 · 开放工作

失败时如何退化,以及下一道验证门槛

验证还缺少多地区网络、断线恢复、并发会话与 10 分钟以上录音的 p50/p95/p99。若实时会话无法在超时内收口,客户端必须明确降级到完整批量转写,并记录 fallback reason,不能静默丢掉稳定前缀。

失败可见性
每次降级都必须记录原因码和阶段计时。最终拿到文字,不能抹掉实时、AI 或粘贴此前失败的事实。
发布证据
request ID、实际模型、节点、排队、上传、ASR、AI 和交付时间必须保存在同一条可追踪链路中,才能完整复盘回归。