跳到主内容

TTS 的延迟都花在哪?合成链路拆解

2026-10-29 发布 来源:我告诉你AI导航 阅读

把一段文字交给 AI 合成语音,按下按钮到听见声音,快的不到一秒,慢的要等上好几秒。这几秒里机器在干什么?时间花在了哪一段?答案藏在语音合成的链路里:文字要先把「念法」理顺,再由模型算出声音的特征,最后把特征变成真正的波形——三段工...

把一段文字交给 AI 合成语音,按下按钮到听见声音,快的不到一秒,慢的要等上好几秒。这几秒里机器在干什么?时间花在了哪一段?答案藏在语音合成的链路里:文字要先把「念法」理顺,再由模型算出声音的特征,最后把特征变成真正的波形——三段工位,各有各的耗时。这篇按链路顺序把账拆开算:每一段做什么、大概占多少、为什么有的快有的慢;合成全程的三段工序框架见语音合成三阶段一篇,本文聚焦的是各段的耗时分布。至于从开口到回应的完整交互延迟怎么分层,那是另一篇的事,见语音延迟分层一篇,两篇的口径先分清。

第一段:文本正则,动手合成前先理顺念法

链路第一段是文本正则,也叫文本前端处理。机器拿到的原始文字不能直接合成:「3.5 万」要变成「三万五千」,「2026 年」要念成「二零二六年」,多音字要按上下文定音,缩写与符号要展开。这一段本质是文本规则的解析与转换,单句通常在几毫秒到几十毫秒量级,占比不大,但它是耗时的「方差来源」:正文流畅时几乎无感,遇到超长段落、密密麻麻的数字表格、夹杂生僻符号的内容,正则的处理时间会明显抬升,极端情况下能占到总耗时的一两成。这一段慢还有一个连带效应——它是串行的第一步,它没算完,后面的声学模型就只能等着。文本前端的具体工序见文本前端一篇,此处只算时间账。

第二段:声学模型,耗时的大头

第二段是声学模型,把整理好的文字(音素序列)转成声学特征——通常是频谱或类似的中间表示,可以理解为「声音的设计图纸」。这一段通常占总耗时的大头,原因在于计算量:模型的规模从几千万到上亿参数,每个音素都要经过多轮网络计算,还要携带上下文——前后音的信息影响当前音的走势,句子越长,序列越长,算得越久。耗时长短主要看三件事:模型大小,大模型音质好但算得慢;文本长度,十秒的语音对应几百帧特征,逐帧生成;以及是否自回归——逐帧依赖上一帧结果的模型,长句耗时线性增长,无法并行。同样的文本,不同产品的合成速度差几倍,差距主要就在这一段的模型架构与规模上。

影响因素怎么拖慢这一段原文的说明
模型大小大模型音质好但算得慢规模从几千万到上亿参数,每个音素都要多轮网络计算
文本长度句子越长,序列越长,算得越久十秒的语音对应几百帧特征,逐帧生成
是否自回归长句耗时线性增长,无法并行逐帧依赖上一帧结果的模型只能一帧一帧来

第三段:声码器,从图纸到声音的最后一关

第三段是声码器,把声学特征变成真正的音频波形,相当于把设计图纸变成实物。早年这一段是著名的耗时大户——高质量声码器逐采样点生成波形,一秒音频几万个采样点,算得比声学模型还久。近年神经网络声码器大幅提速,加上不少方案改为并行生成,这段的占比已经从「大头」降到「零头」,通常只占总耗时的一成上下。但它仍是音质的守门员:声码器的选择直接决定听感是「机器腔」还是「人声感」,速度与音质的权衡在这里最明显。三段加起来,典型分布大致是:文本正则一成上下、声学模型六七成、声码器一成多,剩余是各段之间的调度与缓冲。文本越长,声学模型占比越重,这个结构基本稳定。

时间账怎么省:流式把三段重叠起来

看懂了分布,省时的思路就清楚了。一是缩短各段本身:用更轻的声学模型、限制单次合成的文本长度——超长文本切成句段分配合成,既绕开长序列的耗时,也让错误只影响局部,长文本的切法见长文本合成一篇。二是改变结构:流式合成的思路是不等全文算完,边算边出——文本正则处理完第一句,声学模型就开始算第一句的特征,声码器拿到第一段特征就开始出音频,三段工位像流水线一样重叠运转,首字可闻的时间从「全文算完」缩短到「第一句算完」,边合成边播放的机制见流式合成一篇。对朗读长文章的场景,流式带来的体感提升是数量级的。理解了这条链路,很多体验差异就解释得通:为什么短句合成秒出而长文要转圈——声学模型的大头随长度线性涨;为什么有的产品首字快整体慢——流式只提前了开口,全文的总计算量没变。

算清这笔账的用处

把链路的账算清,对使用者有三处实际用处。选型时,拿自己的典型文本测「首字延迟」与「总耗时」两个数——前者决定交互体感,后者决定批量生产的吞吐,只看宣传的总分容易选错。排查时,慢有慢的位置:长文本慢是声学模型在算,符号密的内容慢可能是正则在理,音质差得看声码器——对症才能对路。使用时,提前分句、清理特殊符号、把数字写成希望念出的形式,都能把第一段的时间与不确定性压下去。想实测延迟差异,可以让豆包与通义千问各合成同一段短文本与同一段长文本,掐表对比首字与总耗时;架构层面的疑问丢给 DeepSeek 或 Kimi,把「自回归生成为何无法并行」展开成平实的解释,这笔时间账就彻底归你支配了。

合成延迟速查

  • 三段工位:文本正则理念法、声学模型出特征、声码器变波形
  • 耗时分布:声学模型占大头,正则与声码器各一成上下
  • 正则是方差来源:数字密、符号多的文本让第一段明显抬升
  • 省时两条路:切句分配合成绕开长序列,流式让三段重叠运转
  • 选型看两个数:首字延迟定交互体感,总耗时定批量吞吐

再多说几句合成延迟

  • 为什么同一产品有时快有时慢?:除了文本长度与符号密度,服务负载也会带来波动——高峰时段排队,延迟整体上浮。测延迟要多个时段各测几次,单次快慢说明不了架构差异。
  • 文本正则可以完全跳过吗?:不能省,只能减负。跳过正则,数字与符号只能按字符硬念,出错率陡增。把文本提前清洗成「希望怎么念就怎么写」的形式,等于把正则的工作挪到自己这边,又快又准。
  • 流式合成会影响音质吗?:切句边界处的语调衔接是主要风险点,句间可能听出细微的不连贯。成熟方案会做跨句的上下文缓冲,日常朗读基本无感;对音质要求极高的成品配音,仍以整段合成更稳。

反馈页面信息

请描述需要更正的地方,页面标题和网址会自动附上。

也可以发邮件至 [email protected]