OFFLINE-FIRST REAL-TIME TRANSLATION

精準、即時的網頁影音雙語字幕

Studio0808 LiveCaption 是一套專為瀏覽器影片設計的即時語音識別與雙語字幕翻譯系統。完全在您的本機電腦執行,擁有 100% 的隱私保護與極低延遲的速度。

多元應用場景

完美融入您的工作、學習與娛樂生活

線上課程與學術講座

觀看 Coursera、Udemy、YouTube 上的無字幕國外教學影片時,提供即時繁中翻譯,幫助快速掌握關鍵字與專業內容。

聽障輔助與無障礙學習

幫助聽障或聽力不便的學生,在觀看無字幕的線上教學影片、參與視訊課程時,將即時語音轉化為雙語文字,消弭學習阻礙。

外語聽力與口說練習

切換為「僅顯示原文」模式,只顯示純英文/日文字幕進行聽力盲聽訓練,遇到聽不懂的段落隨時切換回雙語對照,效果加倍。

全球即時影音與直播

支援無字幕的國外最新串流影音(如現場直播、海外新聞及即時節目等),提供本機極速語音識別與翻譯,讓您即時掌握第一手國外資訊。

網頁視訊會議逐字稿

在瀏覽器進行 Google Meet、Teams 跨國會議時,即時把發言渲染成雙語字幕,並自動在背景存檔為完整的 Markdown 會議紀錄。

影音創作者快速逐字稿

創作者在整理國外參考影片、產出腳本或進行訪談記錄時,可利用後端自動存檔功能直接匯出整份 Markdown 對話紀錄,大幅節省時間。

功能與設計特色

專為流暢體驗而生的現代化影音輔助工具

極低延遲分頁音訊擷取

藉由 Chrome Extension 獨創的分頁音訊 Loopback 機制,精準擷取分頁播放的音軌(不影響電腦其他音訊與錄音設備),提供給後端進行極低延遲的語音辨識。

本機離線 AI 語音辨識

後端搭載 Sherpa-ONNX 架構與阿里巴巴開源的 SenseVoice-Small 語音大模型,支援中、英、日、韓、粵語等語音,離線解碼速度極快,準確度極高。

自由切換翻譯引擎

內建免費的 Google 翻譯備援,安裝後即可直接使用;亦可自行安裝本機 Ollama 推理框架(推薦 Qwen 2.5 3B 模型)進行全離線智能意譯,或填入 DeepSeek 雲端金鑰取得接近人工翻譯的語意品質。※ Ollama 與 DeepSeek 皆需另行安裝或申請,詳見常見問題。

高顏值字幕懸浮視窗

精心設計的毛玻璃 (Glassmorphism) 半透明質感底框,支援字體大小自訂,具備完美的滑鼠穿透(不影響影片操作)。支援手勢拖拽定位與雙擊位置重置。

多行歷史字幕滾動

可選擇保留「最新 + 前 1 句」或「最新 + 前 2 句」的歷史字幕,舊字幕會以半透明、縮小解碼在上方滾動,避免字幕跳過快而漏看。

100% 離線隱私安全

若使用本機辨識與 Ollama 本地翻譯模型,所有音訊擷取、語音辨識、模型翻譯與字幕繪製皆在本機完成,無須連網,資料絕對不外洩。

快速安裝與啟動步驟

只需三步,即可在瀏覽器中開啟即時翻譯字幕

1

啟動後端伺服器 (Backend Server)

後端伺服器負責接收 Chrome 傳來的音訊、透過 VAD 斷句、SenseVoice 模型辨識與 LLM 翻譯。

  • 若下載的是整合發布包,請進入【LiveCaptionServer】資料夾雙擊執行:
    點我啟動後端服務.bat
  • 程式啟動時會檢測模型是否存在,若為首次使用,將會自動連線下載語音辨識模型。
  • 啟動成功後,終端機將會顯示:
    INFO: Uvicorn running on http://127.0.0.1:8000,請保持該視窗開啟。
2

載入 Chrome 瀏覽器外掛 (Extension)

外掛負責擷取當前分頁的音訊,並將即時字幕繪製在網頁畫面上。

  • 在 Chrome 瀏覽器網址列輸入並前往 chrome://extensions/
  • 在右上角開啟 「開發者模式」 (Developer Mode) 開關。
  • 點擊左上角的 「載入已解壓縮擴充功能」 (Load unpacked) 按鈕。
  • 選擇專案資料夾底下的 extension 資料夾載入。
  • 確認 Chrome 工具列已出現 Studio0808 LiveCaption 的圖示。
3

開啟影片,開始擷取與翻譯

一切就緒,開啟您想觀看的任何影片分頁。

  • 前往 YouTube 或任何影片網站播放影片。
  • 點擊擴充功能圖示開啟設定面板,點擊 「啟動即時字幕」按鈕。
  • 點擊後,網頁底部將會彈出毛玻璃風格的字幕懸浮框,顯示:
    語音系統已連線,準備辨識中...
  • 只要影片中有說話聲音,字幕將會即時辨識並流暢顯示於畫面上!

功能設定說明

透過設定面板,隨心調整您的專屬字幕樣式與翻譯選項

字幕外觀設定 (Appearance Settings)

我們提供了極具彈性的外觀控制項目,讓您可以完美搭配不同影片背景,確保字幕的高可讀性:

自訂底框與文字顏色

可以選擇適合的背景顏色與文字顏色,底框會自動加上約 80% 的毛玻璃透明度。

字幕文字大小調整

支援「小」、「中」、「大」、「特大」四種字體尺寸,適用於不同螢幕解析度。

歷史字幕保留行數 (0 - 2 行)

切換為 1 行或 2 行時,舊字幕會被淡化並略微縮小往上推,避免跳太快來不及看。

字幕翻譯語言與雙語對照模式

1. 字幕翻譯語言:支援切換至繁中、簡中、英文、日文、韓文等多國翻譯語系,預設不選即為「僅顯示原文」模式,直接跳過後端翻譯接口以節省額外負擔並提升 300% 以上之解碼效能。
2. 雙語對照模式:當選取了某種翻譯語言時,勾選雙語對照會同時呈現「原文 + 翻譯文」;取消勾選則只會呈現「翻譯文」。如果翻譯語言選擇「僅顯示原文」,則無論是否勾選皆僅顯示原文。

You can adjust the font size dynamically using this panel.
您可以透過這個面板動態調整字體大小。
互動預覽:字體大小切換
互動預覽:歷史行數切換
互動預覽:字幕翻譯與雙語切換

常見問題與障礙排除

使用過程中遇到異常?這裡有快速修復指南

問題 1:後端啟動失敗,提示「找不到 VAD 模型 ...」?

後端引擎在進行語音切分時需要 Silero VAD 模型(silero_vad.onnx)。
解決方法:請先在後端程式碼根目錄(即 backend/ 資料夾)中,在安裝好環境後執行 python download_models.py 進行自動下載,確保模型檔案下載完整。

問題 2:外掛顯示「語音系統已連線」,但是播放影片時完全沒有出字幕?

有幾種可能性需要排除:
1. 影片是否靜音:系統擷取的是分頁播放的音訊,如果影片靜音或聲音太小,VAD 無法偵測到人聲,就不會產生字幕。
2. 模型正在載入:首次辨識時,後端需要讀取載入 SenseVoice 辨識模型,可能會花費 3-5 秒,可以等待一下再測試。
3. 後端沒有開啟:請確保啟動後端服務的命令提示字元 (CMD) 視窗一直保持開啟,且沒有拋出 Error。

問題 3:彈出 Cannot capture a tab with an active stream 錯誤,或是啟動失敗?

這是因為 Chrome 判定該影片分頁已經有音訊擷取行程正在執行。這通常是因為外掛背景腳本自動休眠重啟、狀態不同步導致。
解決方法:
1. 重新整理影片網頁:直接按下 F5 重新整理播放影片的網頁,這會強制釋放該分頁被佔用的所有音軌。
2. 重載擴充功能:chrome://extensions/ 中點選 Studio0808 LiveCaption 的「重新整理」圖示,徹底重啟背景程式即可。

問題 4:如何申請與配置 DeepSeek 雲端翻譯金鑰 (API Key)?

DeepSeek 為選用的雲端付費服務,需自行申請金鑰。不填寫也完全不影響使用(系統會改用本機 Ollama 或免費 Google 翻譯)。若您想取得最精準的雙語對照,請依以下步驟申請:
  1. 註冊/登入開發者平台:造訪 DeepSeek 開放平台。您可以透過手機註冊或 Google 帳號快速登入。
  2. 帳戶充值 (Top Up):進入後台後,點擊左側選單的 "Top up"。DeepSeek 採「先儲值、後扣款」制,儲值最低金額(如 1~5 美元)即可供日常影片翻譯使用極長時間。
  3. 建立金鑰 (Create API Key):點擊左側選單的 "API Keys",然後點擊 "Create new API key"。輸入金鑰名稱並點擊確定。
  4. 複製金鑰:複製系統產生的以 sk- 開頭的金鑰。基於安全限制,該金鑰只會顯示一次,請務必當下複製保存。
  5. 配置到外掛:點擊 Chrome 的 LiveCaption 外掛圖示,在「DeepSeek API 金鑰」欄位貼上剛才複製的金鑰,即可自動啟用雲端翻譯。
費用怎麼算?DeepSeek 沒有月費或訂閱制,完全依實際使用的 Token 量計費,用多少扣多少。本系統預設使用 deepseek-v4-flash 模型,官方牌價如下(單位:美元 / 每百萬 Token):
  • 輸入(快取未命中):$0.14 | 輸入(快取命中):$0.0028 | 輸出:$0.28
  • 實際花費估算:字幕每句翻譯的文字量很短,觀看 1 小時影片大約僅消耗 0.01~0.03 美元(約新台幣 0.3~1 元)。也就是說儲值 2 美元大約可翻譯 100 小時以上的影片。
  • 尖峰時段加價:DeepSeek 公告將實施離峰/尖峰差別定價,尖峰時段(北京時間每日 09:00–12:00 與 14:00–18:00)費率為平常的 2 倍。
  • 模型代號異動(重要):舊有的 deepseek-chatdeepseek-reasoner 代號已於 2026 年 7 月 24 日停用,現行代號為 deepseek-v4-flashdeepseek-v4-pro。若您使用的是舊版後端,請更新至最新版本,否則雲端翻譯會失敗並自動退回 Google 翻譯。
※ 以上價格為本手冊更新時(2026 年 7 月)之官方牌價,實際費率請以 DeepSeek 官方定價頁 公告為準。

問題 5:Mac 電腦也可以使用嗎?

可以!Mac 電腦完全可以使用,但啟動方式與 Windows 略有不同:
  1. 瀏覽器外掛 (Chrome Extension):100% 支援。外掛的安裝與使用方式在 Mac Chrome 瀏覽器上與 Windows 完全相同。
  2. 後端伺服器 (Python Backend):發布包中的 .exe.bat 為 Windows 專用。Mac 使用者若要使用,需先安裝 Python 環境,並於終端機執行 pip install -r requirements.txt 安裝依賴,再執行 python main.py 啟動。
  3. 處理器晶片相容性:辨識核心對 Mac 的 Intel 晶片與 Apple Silicon (M1/M2/M3) 晶片皆有原生高效能優化,可流暢執行。

備忘與未來規劃:開發方案 B「桌面獨立程式」版本?

目前我們採用「Chrome 外掛 (擷取與顯示) + 本機 Python (AI 大腦)」的雙軌架構。若未來您希望脫離 Chrome 瀏覽器、為 PotPlayer 等本機軟體或 Teams/Zoom 視訊程式提供即時字幕,可以規畫另外開發為獨立桌面程式:
  1. 系統音訊錄製 (WASAPI Loopback):捨棄瀏覽器專用 API,改在 Python 中使用 Windows WASAPI 環回機制錄音,這樣便能直接擷取電腦喇叭播放的所有聲音。
  2. 獨立桌面懸浮視窗 (PyQt6 / PySide6):在 Python 建立半透明、無邊框、永遠置頂 (Always on Top) 的桌面 UI 字幕視窗。
  3. 特性評估:此方案將可支援全電腦所有音軌,但需要防範其他系統通知雜音(例如通訊軟體叮咚聲)對辨識的干擾。本項目將作爲未來獨立產品另外開發。

問題 7:在擴充功能管理頁面點擊「錯誤」按鈕,出現 ScriptProcessorNode 警告或 Cannot capture a tab 錯誤?

這是開發者偵錯介面中顯示的狀態,具體原因如下:
1. ScriptProcessorNode is deprecated 警告 (黃色):這是 Chrome 瀏覽器的標準開發者提示,告知該音訊處理介面未來將被新標準取代。由於目前此設計在擴充功能後台(Offscreen Document)相容性與穩定性最佳,因此程式繼續採用,此警告完全不影響字幕正常運作,請放心忽略。
2. Cannot capture a tab with an active stream 錯誤 (紅色):這通常發生在**播放影片時重新載入(Reload)擴充功能**。因為 Chrome 尚未釋放前一次的擷取連線,導致新連線衝突。解決方法:請按下 F5 重新整理播放影片的網頁以強制釋放音訊,並在錯誤頁面點選右上角的「全部清除」即可恢復正常。

問題 8:辨識中文影片時,為何每句的第一個字或發音較輕的起句字常常沒有跑出來?

這是由語音切分(VAD)的偵測反應時間所致,您可以透過調整 VAD 參數獲得顯著改善:
1. **調整「斷句靜音時間」**:建議調高至 0.8。若設太短(如 0.5s),講話過程的微小換氣停頓會被判定為斷句,導致新句子開頭字容易因 VAD 重新偵測而被切掉。
2. **調整「單句最長上限」**:建議調高至 8.0 秒以上。若設太短,系統會頻繁強制截斷長句,容易切碎邊界字。
3. **後端內建優化**:最新版後端已將說話判定門檻(threshold)調降至 0.4,並將最小語音長度由 0.25s 縮短至 0.15s,極大提高了開頭輕發音字的保留率。

問題 9:除了 Google Chrome 之外,Microsoft Edge / Brave / Opera / Vivaldi 等瀏覽器也可以使用嗎?

可以!本系統外掛基於 Chromium 標準開發,所有採用 Chromium 核心的瀏覽器皆能完美相容。安裝步驟與 Chrome 類似:
  • Microsoft Edge:前往 edge://extensions/,開啟左下角「開發人員模式」,點擊「載入解壓縮的項目」,選取 extension 資料夾。
  • Brave 瀏覽器:前往 brave://extensions/,開啟右上角「開發者模式」,點擊「載入已解壓縮擴充功能」,選取 extension 資料夾。
  • Opera 瀏覽器:前往 opera://extensions/,開啟右上角「Developer mode」,點擊「Load unpacked」,選取 extension 資料夾。
  • Vivaldi 瀏覽器:前往 vivaldi://extensions/,開啟右上角「開發者模式」,點擊「載入已解壓縮擴充功能」,選取 extension 資料夾。
※ 提示:在上述瀏覽器的網址列輸入 chrome://extensions/ 也會自動跳轉至對應的擴充功能設定頁面。

問題 10:Firefox 瀏覽器可以使用嗎?

很遺憾,Firefox 目前無法直接使用本系統的外掛。原因說明如下:
  • 引擎架構不同:Firefox 使用 Mozilla 自家的 Gecko 引擎,而非 Chromium 核心。本系統外掛依賴 Chrome 專屬的擴充功能 API(例如 chrome.tabCapturechrome.offscreen 等),這些 API 在 Firefox 中完全不存在,也沒有對應的替代方案。
  • Manifest 格式差異:本外掛採用 Chrome Manifest V3 規範,Firefox 雖然也開始支援 MV3,但在權限模型與背景腳本(Service Worker vs. Background Page)的實作上仍有顯著差異,導致無法直接移植。
  • 建議替代方案:若您習慣使用 Firefox,建議在需要即時字幕功能時,暫時改用 Google Chrome、Microsoft Edge 或其他 Chromium 核心瀏覽器(詳見問題 9)。

問題 11:如何安裝 Ollama 與下載 qwen2.5:3b-instruct 翻譯模型?

請注意:Ollama 與翻譯模型「並未」包含在本系統的發布包中,需要您另行安裝下載。發布包內建的 sherpa-onnx-sense-voicesilero_vad.onnx 只負責「語音辨識」,不負責翻譯。
如果您不安裝 Ollama 也完全沒問題——系統會自動改用免費的 Google 翻譯,字幕依然正常顯示。只有在您需要「全離線、不連網」的翻譯時,才需要以下步驟:
  1. 下載並安裝 Ollama 程式:造訪 Ollama 官方下載頁,依作業系統選擇 Windows / macOS / Linux 版本並完成安裝。安裝後 Ollama 會常駐在系統列(工作列右下角出現羊駝圖示),並自動在 http://localhost:11434 提供服務。
  2. 下載翻譯模型:開啟命令提示字元(Windows 按 Win + R 輸入 cmd;Mac 開啟「終端機」),輸入以下指令並按 Enter:
    ollama pull qwen2.5:3b-instruct
    模型約 2GB,請確保網路順暢與磁碟空間充足,下載時間依網速約需 3~15 分鐘。
  3. 驗證安裝成功:下載完成後輸入 ollama list,若清單中出現 qwen2.5:3b-instruct 即代表成功。也可直接在瀏覽器開啟 http://localhost:11434,看到 Ollama is running 字樣即表示服務正常。
  4. 確認外掛設定:點擊 LiveCaption 外掛圖示,確認「Ollama 伺服器網址」為 http://localhost:11434、「翻譯模型名稱」為 qwen2.5:3b-instruct(兩者皆為預設值,通常無須修改),即可啟用全離線翻譯。
硬體建議與模型選擇:
  • 3B 模型(推薦):約需 4GB 以上記憶體,一般文書筆電即可流暢執行,是速度與品質的最佳平衡點。
  • 7B 模型:若您的電腦有獨立顯卡(8GB VRAM 以上),可改用 ollama pull qwen2.5:7b-instruct 取得更佳語意品質,並在外掛的「翻譯模型名稱」欄位改填 qwen2.5:7b-instruct
  • 注意:使用 Ollama 時請務必讓 Ollama 保持在背景執行。若後端偵測到 Ollama 未啟動,會自動跳過並改用備援翻譯,以避免每句字幕都等待連線逾時而延遲。

問題 12:DeepSeek、Ollama、Google 翻譯三者的翻譯品質差在哪?我該選哪一個?

先說明一個三者共通的架構限制:本系統為了追求低延遲,每一句字幕都是獨立送出翻譯、不夾帶前後文。因此不論使用哪個引擎,都無法根據上一句來判斷「他」指的是誰、或延續前面出現過的專有名詞譯法。這是速度與品質的取捨,並非引擎本身的缺陷。
比較項目 Google 翻譯(保底) Ollama qwen2.5:3b DeepSeek v4-flash
語意品質逐句直譯,忠實但生硬會潤飾成通順口語最佳,接近人工翻譯
成語/俚語常直譯出錯普通
中日文省略主詞容易補錯普通
專業術語中上(字典龐大)3B 偏弱,可能自行腦補
抗辨識錯字能力差,錯字照翻中,能推測原意好,能還原語意
輸出穩定性極穩小模型偶爾多輸出解釋文字
延遲100~300 毫秒CPU 上約 0.5~3 秒(有逾時風險)0.5~2 秒(視網路而定)
隱私字幕文字送往 Google完全不離開本機字幕文字送往 DeepSeek
成本免費免費(僅耗電)約每小時 0.01~0.03 美元
實務結論:
  • DeepSeek 明顯最好,尤其當影片含有專業術語、成語,或語音辨識結果不夠乾淨時。它會先理解「這句在講什麼」再翻譯,而不是逐字對應。以每小時不到新台幣 1 元的成本而言,性價比很高。
  • qwen2.5:3b 與 Google 翻譯其實互有勝負。3B 模型在「口語化、句子通順度」上占優,但在「專有名詞、數字、人名」上反而可能不如 Google,因為小模型容易自行腦補。要明顯拉開差距,建議升級至 7B 模型。
  • 一個容易被忽略的陷阱:三個引擎的連線逾時都設為 3 秒。若您的電腦沒有獨立顯卡、純以 CPU 執行 3B 模型,每句可能剛好卡在 2~4 秒而間歇性逾時;而且後端一旦偵測到逾時,該次工作階段後續將不再嘗試 Ollama,全部改走備援翻譯。您可能以為正在使用 Ollama,實際上早已退回 Google 翻譯。請查看後端視窗是否印出「偵測到本機 Ollama 未啟動」以確認。
選擇建議:追求翻譯品質請使用 DeepSeek;重視隱私(例如翻譯公司內部會議)請使用 Ollama 並盡量選用 7B 模型;其餘一般情況下,內建免費的 Google 翻譯已經足夠。

問題 13:Ollama 明明開著,後端卻顯示「偵測到本機 Ollama 未啟動」?

這個訊息會誤導人——實際上 Ollama 確實在執行,只是「來不及回應」。
  • Ollama 的模型並非常駐記憶體。預設的 keep_alive5 分鐘,閒置超過就會自動從記憶體卸載。
  • 您啟動 Ollama 後,通常還要開影片、設定外掛,這段時間早已超過 5 分鐘,模型其實不在記憶體中。
  • 第一句字幕送達時,Ollama 必須先把約 2GB 的模型從硬碟載入記憶體,而本系統的連線逾時只有 3 秒,等不到就會判定失敗。
以下是實測數據(一般文書筆電、純 CPU 執行 qwen2.5:3b-instruct):
階段冷啟動(模型未載入)熱啟動(模型已常駐)
總耗時48.87 秒0.65 秒
模型載入27.19 秒0.37 秒
提示詞處理20.38 秒0.20 秒
產生翻譯1.27 秒0.07 秒
解決方式:使用前先「預熱」模型(無須修改任何程式)
  1. 預熱模型:開啟命令提示字元,貼上以下指令並執行。它只把模型載入記憶體、不產生任何文字,因此很快就會完成(實測約 4.5 秒):
    curl -X POST http://localhost:11434/api/generate -H "Content-Type: application/json" -d "{\"model\":\"qwen2.5:3b-instruct\",\"keep_alive\":-1}"
    其中 keep_alive:-1 是關鍵,代表「永遠不要釋放這個模型」,可繞過預設的 5 分鐘自動卸載。
    ※ 重要:上述指令僅適用於「命令提示字元 (CMD)」。在 PowerShell 中,curlInvoke-WebRequest 的別名,無法接受這些參數而會直接報錯。若您慣用 PowerShell,或想要更簡短好記的寫法,請改用以下指令(CMD 與 PowerShell 皆適用):
    ollama run qwen2.5:3b-instruct "" --keepalive=24h
    此寫法會讓模型常駐 24 小時。請注意 CLI 的 --keepalive 必須帶時間單位(例如 24h8h),不接受 -1
  2. 確認模型已常駐:執行以下指令,清單中必須出現 qwen2.5:3b-instruct;若清單是空的就代表預熱未成功:
    ollama ps
  3. 正常啟動後端與外掛:之後依照原本流程操作即可。預熱後實測翻譯耗時僅 0.96 秒,遠低於 3 秒逾時。
若後端已經印出過該警告,不必重開後端:後端在每次收到設定訊息時都會重新啟用 Ollama。因此只要先完成上述預熱,再到外掛面板隨意改動任何一個設定(例如把「字幕翻譯語言」切走再切回來),Ollama 就會重新生效。

一勞永逸的做法(設定環境變數,同樣不需改程式):若不想每次手動預熱,可讓 Ollama 預設就不卸載模型:
  1. Windows 搜尋「編輯系統環境變數」→ 點擊「環境變數」。
  2. 在「使用者變數」新增:變數名稱 OLLAMA_KEEP_ALIVE,變數值 -1
  3. 完全結束 Ollama(系統列圖示按右鍵 → Quit),再重新啟動。
※ 注意兩點:一、設定環境變數後仍需第一次請求把模型叫起來,最穩定的組合是「設定環境變數 + 開機後執行一次預熱指令」。二、模型常駐會持續佔用約 2GB 記憶體,若您的電腦記憶體吃緊或不常使用字幕功能,建議維持手動預熱即可。

問題 14:外掛一直卡在「連線中...」、完全沒有字幕,後端出現 invalid unordered_map 錯誤?

⚠️ 最常見原因:本系統資料夾的完整路徑中含有中文字(或其他非英文字元)。例如解壓縮到「桌面\即時字幕」、「下載\分享會」,或 Windows 使用者名稱本身是中文(C:\Users\王小明\)。
典型症狀:
  • 外掛面板的連線狀態永遠停在「連線中...」,擷取狀態卻顯示「擷取中」。
  • 後端視窗不斷重複「連線 → 建立紀錄存檔 → 更新設定 → 錯誤 → 中斷連線」的迴圈。
  • 錯誤訊息為 WebSocket 發生錯誤: invalid unordered_map<K, T> key
  • 影片明明有聲音,卻連一句字幕都沒有出現。
最容易被誤導的一點:後端在啟動時仍然會印出「所有離線 AI 模型載入成功!」,看起來一切正常。但這是假的成功訊息——問題要到第一句語音進來、真正開始解碼時才會爆發。

技術原因:兩個模型檔的讀取方式不同。
model.int8.onnx 路徑tokens.txt 路徑實測結果
純英數純英數正常辨識
含中文純英數正常辨識
純英數含中文invalid unordered_map 錯誤
含中文含中文invalid unordered_map 錯誤
由上表可見,真正的關鍵是 tokens.txtmodel.int8.onnx 由 ONNX Runtime 以寬字元 (Unicode) API 載入,能正確處理中文路徑;但 tokens.txt 是由辨識引擎以窄字元路徑開啟,Windows 無法將中文字轉換成對應的 ANSI 編碼,導致開檔失敗且未被檢查。符號對照表因此是空的,直到解碼時查表才丟出 invalid unordered_map 錯誤。

解決方法:把整個資料夾移到不含中文字的路徑,然後重新啟動後端。
  1. 建議路徑:例如 D:\LiveCaption\C:\LiveCaption\,全部使用英文、數字、底線或減號。
  2. 應避免:資料夾名稱含中文、日文、韓文、全形符號或表情符號。空白字元通常沒問題,但建議一併避免。
  3. 特別注意使用者名稱:若您的 Windows 使用者名稱是中文,則桌面與下載資料夾的完整路徑都會含有中文C:\Users\王小明\Desktop\)。此時務必把資料夾放到磁碟根目錄底下,例如 D:\LiveCaption\,不要放在桌面。
  4. 如何確認:在檔案總管開啟該資料夾,點一下上方網址列,即可看到完整路徑;確認整條路徑從磁碟代號到最後一層都沒有中文字。
※ 此問題與外掛、瀏覽器、模型檔本身皆無關,純粹由路徑字元造成。移動資料夾後不需要重新下載任何模型,也不需要重新安裝外掛。