跳至主要內容
WeeMed Logo

致力運用創新科技為醫療機構打造智慧化資訊系統,提升醫療服務品質

瑋易科技股份有限公司

統一編號:00085209

關注我們:

快速導覽

  • 關於我們
  • 我們在建什麼
  • 解決方案
  • EAP 服務市集
  • 服務項目
  • 技術優勢
  • 最新消息
  • 人才招募
  • 聯絡我們

相關資訊

隱私權政策服務條款資訊安全政策ESG 永續發展

聯絡資訊

客服專線
04-23016388
客服信箱
service@weemed.ai
公司地址
台中市西區台灣大道二段 186 號 20 樓之 1
© 2024-2026 瑋易科技股份有限公司。保留所有權利。
ESG 永續發展隱私權政策服務條款資訊安全政策
WeemedAI Logo
首頁
關於我們
產品方案
我們在建什麼
服務項目
聯絡我們

台語語音辨識

長輩講的是台語,而機器聽不懂

這一頁講語音這一段:為什麼現場需要一個聽得懂台語的模型、聯發科已經做完了哪一步、我們補的是哪一步,還有我們試過但還沒做好的那一個。我們放在 Hugging Face 上的四個檔案,有三個來自這一段。

為什麼需要它

長輩在講話,照服員在低頭打字

社區據點的照服員坐在長輩旁邊,手上一台平板。他問:昨天晚上睡得好嗎?會不會半夜起來?長輩回答了。他得一邊聽,一邊在腦袋裡把話翻成表單上該打的字,一邊低頭打字。長輩看著他的頭頂講話。

而長輩講的是台語。有時候國語台語混在同一句裡:「我那個腳啊,會 sng(痠)。」照服員自己聽得懂,可是他得先翻成國語才打得出來。

我們想要的東西很簡單:讓他把頭抬起來,好好跟人講話,紀錄自己長出來。這需要一個聽得懂台語的語音模型——而市面上的語音辨識,國語都很行,台語就不行了。長輩不會為了配合系統改講國語。

台灣已經有人做出聽得懂台語的模型了。我們補的是「它裝不進現場那台電腦」這一段。

我們做的是哪一步

最難的那步聯發科做完了

Breeze-ASR-26 是聯發科研究院訓練並開源的(Apache-2.0,源自 OpenAI Whisper large-v2),它聽得懂台語和台灣口音。訓練不是我們做的,這件事要先講清楚。

但它有 3.1 GB,跑得順要 GPU。據點那台用了六年的電腦裝不下,照服員手上的手機更不用說。所以我們接著做剩下的:把它壓小、實際量速度和記憶體、做成三種不同機器跑得動的版本,然後放回網路上。

  • 這個模型設計上會把台語寫成華語漢字,不是台語正字。所以它給你的是「意思」,不是台語的讀音。
  • 短於三秒又沒什麼內容的音檔,所有 Whisper 系列的實作都會亂猜。這是模型家族的性質,不是量化造成的。

三個版本

同一個模型,三種機器

差別只在跑在哪一種硬體上。全部 Apache-2.0,可以商用、可以改,不用問我們。

  • Breeze-ASR-26-ct2

    有伺服器的話,用這個最快

    體積
    1.5 GB(int8),跑起來吃約 2.9 GB 記憶體
    速度
    RTF 0.21,比即時快將近五倍
    適合
    伺服器、8 GB 以上的機器、有 GPU 的環境
    執行環境
    faster-whisper / CTranslate2
    Hugging Face model card
  • Breeze-ASR-26-GGML

    只有一台舊筆電也能用,拖進去就好

    體積
    848 MB(Q4_0)/1.1 GB(Q5_0)
    記憶體
    約 1.85 GB,4 GB 的機器跑得起來
    速度
    RTF 0.40(四執行緒 CPU)
    執行環境
    whisper.cpp / MacWhisper / superwhisper,不用寫程式
    Hugging Face model card
  • Breeze-ASR-26-ONNX

    手機和瀏覽器裡的台語辨識

    格式
    int8 ONNX(encoder、decoder 各一個檔)
    速度
    RTF 1.3(四執行緒 CPU),比前兩個慢
    適合
    Android、iOS、瀏覽器(WASM)
    執行環境
    sherpa-onnx / onnxruntime
    Hugging Face model card

五秒以上的語音,壓縮前後幾乎聽不出差別(相對原始模型的字元誤差約 3.6%)。家訪時工作人員身上常常只有一支手機,所以最慢的那個版本也得做。

沒發布的那個

做不好的,我們就不放上去

我們也試過把它縮到 237 MB,好讓它直接跑在手機裡。過程是有進展的:在真實的長段語音上,它跟原始模型的落差從 63% 一路壓到 38.7%。但原始模型自己是 14%。差得還太多,所以我們沒有發布它。

中間也吃過一個很值得寫下來的失敗。第一次做的時候,我們讓小模型太用力去模仿大模型的「語氣」,結果它變得更差。後來把重心改回正確答案本身、模仿只當輔助,才開始進步。這種紀錄我們也一起公開,因為它比一個漂亮的數字更能幫到別人。

卡住的地方不是訓練技巧,是台語的錄音太少。公開來源全部加起來只有幾十小時,而且大多是照著稿子念的短句,跟長輩真的在講話差很遠。

另外還有一件更根本的事。台語真正的樣子是台羅拼音,寫成華語漢字會把台語的讀音丟掉——「斷腦筋」寫成漢字,讀的人不會知道它其實是在講中風。所以我們現在在做能輸出台羅的版本。還沒好。好了就會出現在這一頁。

它在產品裡做什麼

聲音變成字,只是第一步

語音轉出來的字,仍然是現場的講法。「皮蛇」還是「皮蛇」,要再對回「帶狀皰疹」才存得進紀錄——那是另一顆模型的工作。兩段接起來,一句話才會變成一筆能用的紀錄。

  • 負責讀懂那些字的模型:IlhaEmbed
  • 紀錄怎麼被整理進系統:Intake AI
  • 我們釋出了什麼、為什麼開源

台灣已經有人做出聽得懂台語的模型了。我們補的是它裝不進現場那台電腦。

拿去用吧。

三個版本都在 Hugging Face 上,Apache-2.0。每個 model card 裡有量測方法、限制與適用場景。上游模型是聯發科研究院的 Breeze-ASR-26,訓練是他們做的,我們做的是量化、量測與格式轉換。

前往 Hugging Face媒體與合作聯繫