「語音轉文字 AI – Whisper」


又完成一支 AI app 作品 – 「使用 Whisper 作語音轉文字 (speech to text, STT)」。或許大部分人對語音轉文字的應用已用得習以為常,覺得不是什麼新技術,但對我這開發者而言是頗興奮的。因為過去常用的語音轉文字服務大多是閉源 (close source) 的,也就是某一家公司用非公開的語音轉文字模型在提供轉換服務,如此就可能會有一些限制,比如串接服務須付費使用、有隱私洩漏的疑慮(因為語音資料要傳給某公司的服務作處理)。

Whisper 是 OpenAI 開源的 STT AI 模型,可以在自己的電腦上運作,避開上述閉源 STT 服務的限制👍 我用它寫了一支全端 app,前端是 web 介面,作為語音輸入,再用 WebSocket 傳輸語音串流給後端 Python 程式。停止錄音後,後端會將整個音檔交給 Whisper 作轉寫 (transcribe) 文字,再透過 WebSocket 將轉寫文字傳回前端顯示。如 demo 影片(有聲音)所示。(目前僅測試英語辨識,中文還要再研究😅)

之所以會想練習寫這支 app,是因為我發覺現在 AI 語言模型 (LLM, VLM) 的應用愈來愈廣,但要讓這些用到文字輸入的應用使用起來更好用,「語音輸入」相對於「文字輸入」更具親和力!所以值得學會如何打通語音輸入這個環節。

程式原始碼:
https://github.com/MrMYHuang/audio_transcriber


Leave a Reply