👋 歡迎回來!
我是🔥浴火重生的雞🔥,你可以稱呼我為 Michael雞🐔🔥。
💖 如果你喜歡我的文章,請幫我按個 愛心;📌 若覺得內容對你有幫助,也別忘了 點選收藏 支持一下!
那話不多說… 🚀 我們開始今日的文章!
在這篇文章中,我想分享我最近開發的一個實驗性系統:
一個能「🎧 自動偵測聲音 → 🎤 錄音 → ✍️ 語音轉文字 → 🌏 自動翻譯」的全自動語音助理。
它的核心由兩個 AI 模型組成:
🧠 OpenAI 的 Whisper 負責語音辨識,
🤖 再搭配 LLM(大型語言模型) 負責語意翻譯。
整個流程不需要人工介入,從發出聲音到翻譯完成,全自動完成。
以下我會用比較概念化的方式,說明整個系統的邏輯與理論。
在開始之前,先看一段成果影片吧!
🧩 一、程式設計架構
我把整個架構拆成五個主要部分:
1️⃣ 聲音監聽與振幅分析
2️⃣ 自動錄音與資料切片
3️⃣ 音訊預處理與語音轉文字
4️⃣ 文字翻譯(LLM 處理)
5️⃣ 結果保存與時間標記
這五個模組是以多執行緒(thread)並行運作的方式設計,彼此透過安全的佇列(Queue)交換資料,確保整個系統可以即時處理、不互相干擾。
🎚️ 二、智慧錄音的關鍵:振幅門檻控制
在一般錄音程式中,錄音的啟動與停止通常由使用者手動控制。
但在這個系統裡,我利用「音訊振幅」自動判斷何時開始與停止錄音。
理論上,只要音訊的瞬時振幅(Amplitude)或平均能量(RMS)超過某個閾值,就代表有聲音出現;而當持續一段時間低於閾值,就判定為靜音。
這樣的「🎛️ 振幅門檻法」讓系統能在環境中自動偵測人聲,在有人說話時自動錄音,結束後自動停止。
這個過程幾乎不需操作,非常直覺。✨
🎧 三、音訊前處理:讓語音更「乾淨」
在語音辨識之前,我加入了簡單的前處理步驟:
- 🔊 音量正規化:將音訊調整到固定的輸出能量,避免太小或太大。
- 🚫 高通濾波:去除低頻雜音(例如空調或麥克風底噪)。
- 🐢 速度調整:可選擇放慢音訊,使 Whisper 更容易辨識語音細節。
這些步驟的目的是讓音訊品質更穩定,
提升 Whisper 在辨識時的準確度。🎯
🧠 四、Whisper 語音轉文字:從波形到語意
Whisper 是一個強大的語音辨識模型,能處理多語言輸入。
在這個系統中,它負責把錄下的音訊波形轉成文字。
理論上,Whisper 的運作分為三個層次:
- 🎵 聲學特徵提取(Feature Extraction):把聲音轉成頻譜特徵。
- 🔄 語音編碼與解碼(Encoder–Decoder):將聲音特徵轉換為語言結構。
- 📖 語言模型預測(Language Modeling):產出最可能的文字序列。
完成轉譯後,系統會把結果加上時間標記與處理耗時,並儲存到本地檔案中,形成一份完整的語音紀錄檔。🗒️
🌏 五、LLM 翻譯:語意層的延伸
當 Whisper 完成中文轉寫後,文字會被送入另一個 LLM 模型(例如 Ollama 上的 GPT 模型)。
這個 LLM 不只是單純逐字翻譯,而是根據上下文理解語氣與情緒,再生成自然流暢的日文譯文。
我在提示詞(Prompt)中設定了幾個翻譯原則:
- 💬 保留原文的語氣與情感。
- 🈶 使用自然且符合日文表達習慣的用語。
- 🚫 不加入多餘的說明,只輸出翻譯結果。
這樣的設計能讓機器翻譯更貼近人工語感,特別適合做即時中日口語轉譯的應用。🇨🇳➡️🇯🇵
使用 LLM 要注意,模型要挑選多語系以外,模型本身的邏輯與語意辨識能力也要相當好。
若選用一個只會翻譯的模型,有時遇到同詞不同義時或同義不同詞時,一段句子翻譯起來就會很糟糕。⚠️
⚙️ 六、非同步架構:讓即時性與穩定性並存
整個系統中至少有四條執行緒在並行運作:
- 🎙️ 錄音執行緒:持續接收音訊。
- 📈 振幅監聽執行緒:負責聲音啟停判定。
- 🧩 轉譯執行緒:負責呼叫 Whisper。
- 🤖 翻譯執行緒:非阻塞地處理 LLM 翻譯。
透過多執行緒與佇列的解耦設計,即使翻譯或轉譯需要較長時間,也不會影響錄音的流暢度。⚡
🗂️ 七、輸出設計:可追蹤的語音筆記
每次辨識與翻譯的結果都會被記錄到一個帶時間戳的檔案中。
我讓系統自動加上:
- ⏰ 文字產出時間
- ⏱️ 處理耗時
- 📝 原文與翻譯版本
這讓整份紀錄檔不只是文字紀錄,更像是「📒 語音日誌(Audio Log)」。
🔬 八、理論背後的價值
這樣的架構其實是一種「語音流轉管線(Audio Processing Pipeline)」,
它結合了信號處理、語音辨識與自然語言理解三種技術。
理論上,這樣的設計可以延伸應用到更多場景:
- 🗣️ 自動會議紀錄與即時翻譯
- 🎓 教學錄音的中日雙語字幕生成
- 🪶 個人語音筆記系統
- 💡 實時語音助理(Speech-to-LLM)
🏁 九、結語
這個專案的重點不是「錄音」或「翻譯」本身,
而是如何讓 AI 模型在多層任務中自動協作。
從聲音開始,經過振幅偵測、音訊處理、語音辨識、語意翻譯,
最後輸出成完整可讀的文字檔案,整個過程就是一條完整的「⚙️ AI 語音理解鏈」。
如果你對這樣的系統想了解更深入的細節,我在另一篇文章中會公開完整程式碼與執行說明,包含 Whisper 模型設定、音訊重採樣方法、以及 LLM 串接細節。💻















