← 全部文章

AI 朗读为什么终于像真人了(以及它还会在哪儿翻车)

要是你对文字转语音的印象还停留在那个平板、机械、什么词都能念错的声音,那这印象早该更新了。合成朗读变好了,而且是很快就变好的,如今好听到能让人一口气听上好几个钟头。搞清楚它到底变了什么,是值得的。一来这事本身就挺有意思,二来懂了原理,你就知道怎么听出最好的效果,也知道哪些地方别指望太高。

老办法为什么听着像机器人

过去几十年,文字转语音基本就两条路子,都很机械。

老一点的那种,靠一套规则去拼元音和辅音,硬合成出语音,结果就是那种一耳朵就能听出来、嗡嗡作响的假嗓子。后来一代叫拼接合成,先录下真人念的成千上万个小音段,用的时候现场拼起来。单看一个词,它确实更像人声了,可拼接的缝隙藏不住,而且它根本没有整句话的概念。词它念得出,戏它演不出。

它们缺的都是同一样东西:语调,也就是说话的那股旋律。疑问句尾巴上一挑,重音正好压在要紧的词上,转折之前顿那么一小下。一个声音听着有没有活气,几乎全看这个,而规则加拼接的系统里,这些几乎一点都没有。

变化在哪儿:让模型学会说话的节奏

现在的朗读,是靠神经网络生成的,这些网络在海量真人语音上训练过。它不再去拼音段,而是把自然说话的规律学到手,一整段声音直接生成出来。语调是它从例子里学的,不是照规则套的,所以它多数时候都能把疑问句的上扬、把重音的落点放对。

有两件事把水准又往上抬了一截。一是模型越做越大,喂进去的语音更多也更杂,那些细微的地方就抓得更全。二是提前渲染,而不是边听边生成,这给了系统余地去通盘安排一整句、一整段,因为它知道后面是什么,就能把语速和轻重铺排得妥帖。云端音频听起来那么从容、那么顺,很大程度上就是这份提前铺排的功劳,而一个小小的实时声音只能做到“念得没错”而已。

合成语音还会在哪儿翻车

这问题远没解决,硬说解决了对谁都没好处。有几样东西,再好的系统也还是容易栽:

  • 生僻名字和生造的词。 奇幻小说里的名字、罕见的姓、外来词,模型都是在猜,有时就猜错了。
  • 同形异音词。 拼写一样、读音不同的词。英语里 “He will lead the way”(带路)和 “a lead pipe”(铅管),“a bass guitar”(贝斯)和 “a bass in the lake”(鲈鱼)。得读懂意思才选得对,偶尔就会读岔。
  • 反讽和弦外之音。 一句本来是挖苦的话,会被一本正经地念出来,因为语气不在字面上。真人朗读者能凭理解把它补上。
  • 隔得很远的呼应。 一处伏笔在三段之后才兜回来,一个词的分量取决于老早之前说过的话,这种很难演到位。

这些是眼下的边界。边界在往里收,但它们是真实存在的,也正因为如此,碰上一本全靠诠释撑起来的书,顶尖的真人朗读者在艺术性上还是赢家。

怎么听出最自然的效果

明白了上面这些,有几件实在事能帮上忙:

  • 值得的书,就选更饱满的那档。 在手机上,设备自带的声音免费、即开即听,但有点平。渲染出来的云端音频跑在大得多的模型上,明显更像真人。在 BookNPC 里,这就是录音室那一档,两者怎么取舍,设备自带的声音对比云端朗读里讲得更细。
  • 在 iOS 上,把高级系统语音装上。 就算只用免费的设备语音,装了它们也会好很多。这儿有一份简短的指南。
  • 先给自己弄一份干净的书。 合成朗读的上限,就是喂给它的文本的上限。结构规整、干干净净的 EPUB 读起来顺,导得乱七八糟的文件,什么声音都会被绊得磕磕巴巴。

说句老实话

AI 朗读跨过了那道坎,从“无障碍场景凑合能用”变成了“消遣时也听得享受”。大多数书、大多数时候,它现在听着是自然的。碰上那些以表演为魂的书,它还比不了最好的真人;名字、双关,偶尔也还是会念错。这两头都是实话,同时成立。

最值得记住的,是它顺带打开的这扇门:你手上任何一本书,都能有一份听着自然的朗读,不再只限于那少数几本被商业录制过的。BookNPC 的录音室声音走云端渲染,免费那一档用你设备自己的声音,所以你完全可以随手挑一本自己的书,亲耳听听这门技术如今走到了哪一步。