生成式語音 AI 有一招確實厲害:你打一句話,幾秒後就傳回一個溫暖、會呼吸的人聲念給你聽。不用麥克風、不用配音員、不用錄音室。那個速度是真的,品質也是真的。但「像魔法」這種感覺其實也像一層霧,而霧裡藏著很有用的東西。一旦你看懂那條把文字變成聲音的生產線,你就不會再被唬住,反而能精準預測這條線會在哪裡卡住、哪個名字會念錯、哪句在螢幕上讀起來沒問題的話到了耳朵裡會整個垮掉。
你可以把整套系統想成一間有四個工作站的小工廠,原料就是你打進去的那串文字。第一站是「文字正規化」:它要讀懂人們實際上亂打的東西,再決定該怎麼念出來。「$5」得變成「五元」,「Dr. Lee」得在「醫師」和「路」之間選一個,「2008」要念成「二〇〇八」而不是二、零、零、八這幾個數字。這一站一點也不光鮮,卻是出乎意料多的丟臉錯誤的出生地,因為它本質上就是一大堆規則,加上對「人到底想講什麼」的猜測。
第二站是大多數人從沒聽過、卻默默最關鍵的一站:字素轉音素,英文簡稱 G2P。字素是寫出來的字,音素是聲音的單位。這一站把「拼寫」翻譯成「發音」,就是你小時候看到沒見過的字、把它一個音一個音拼出來的那種本事。英文裡,它要分辨「read」這個字在不同句子裡到底押「red」還是「reed」的韻。中文裡,它得正面迎戰多音字問題:一個字有好幾種讀法,只有上下文能決定哪個才對。這一站搞砸了,後面整條線就會「很有自信地念錯」。
第三站和第四站,才是現代 AI 真正出力的地方。「聲學模型」拿到那串聲音,開始規劃這段話該有什麼「感覺」:節奏、抑揚頓挫、哪裡加速、哪裡會在某個字上加重。它輸出的不是音檔,而是一張聲音的「視覺藍圖」,叫做頻譜圖,本質上就是一張熱力圖,標出每一瞬間哪些音高比較響。最後一站「神經聲碼器」,則是把這張藍圖變成你真正聽得到的聲波的那位畫家。開創性的聲碼器、DeepMind 的 WaveNet,是一小片一小片地把聲音蓋出來的:每一秒語音要蓋一萬六千個取樣點 —— 這就是為什麼早期版本很慢,也是為什麼像 HiFi-GAN 這類新設計能用遠快過即時播放的速度,把同樣一秒鐘的聲音畫出來。
那麼,有了這麼一整套機器,為什麼語音還是會在某個名字上絆倒、或滑進錯的口音?老實的答案是:這些模型每一個都是靠「模仿」學會的,不是靠「理解」,而它只能很有把握地重現它看過很多次的東西。一個里程碑級的系統 VALL-E,是用六萬小時的錄音訓練出來的,比早期系統多上幾百倍 —— 然而「規模」恰恰就是陷阱。一個主要用標準美式或英式英語訓練出來的模型,會忠實地、卻錯誤地,把那個口音蓋到所有東西上,因為那正是它吃下去的資料裡最常見的口音。一個它從沒遇過的姓氏,就是擲銅板。模型沒有故障;它只是精準地做著它的訓練資料教它做的事。
多音字問題,是這件事在中文裡最尖銳的版本,而且它是可以量化的。研究者特地做了分類器,專門從上下文猜出一個多音字到底該念哪個音,有一份著名研究把多音字的準確率拉到 96.35%,而單純靠出現頻率去猜只有 81.22% —— 這是真正的躍進,但同時也是個低調的承認。即使是很強的系統,也會在相當一部分字上念錯;而在台灣國語或粵語裡,讀音和聲調本身就承載著意思,一個音節錯了,就能把一句清楚的話變成一道謎題。懂這個語言的聽者一聽就知道。軟體呢,按它的設計,聽不出來。
這些都不是模模糊糊的擔憂;它們是四個具體、找得到位置的破口:一個會猜意圖的正規化站、一個可能挑錯讀音的 G2P 站、一個它從沒學過的名字、一個被資料帶歪的口音。這恰恰就是「母語人耳」發揮價值的地圖。在 Onyx,每一份 AI 生成的交付,在出貨前都會由目標語言的母語者把關 —— 由一個聽得出多音字翻車、聽得出姓氏念糊掉、聽得出台灣或香港的句子飄成大陸腔的人來檢查。機器在幾秒內產出草稿;人,則保證那是你真的會開口講出來的那個版本。
這就是我們那句標語背後完整的理由 —— AI 生成,真人把關。我們不是出於懷舊才把真人留在流程裡,也不是不信任這項技術 —— 我們每天都在用它,也很喜歡它在速度和規模上能做到的事。我們只是把這條流程摸得夠透,透到知道它有哪四個盲點;我們也知道,在台灣國語、粵語、以及我們經手的四十多種語言裡,「驚艷」和「正確」之間的差距,就是一隻母語的耳朵。如果你要的是又快又對的語音,這就是我們的承諾:機器給你速度,而一個真的會講這個語言的人,給你信任。
