oboroge0/hayamimi
早耳 - Real-time multilingual speech-to-text on CPU only. Live subtitles, browser dashboard, speaker labels, translation. No GPU, no cloud.
解決的問題
hayamimi 提供完全在 CPU 上運行、記憶體使用量極低(低於 2GB RAM)的即時多語音語音轉文字(STT)。它解決了高精度轉錄通常伴隨的高延遲與高硬體需求問題,讓使用者無需 GPU 或雲端 API 即可實現低延遲的即時字幕與翻譯。
工作原理
hayamimi 不依賴單一通用模型,而是採用路由系統,將每個語音片段導向最適合該語言的專用、量化(INT8)ONNX 模型。它使用 sherpa-onnx 進行推論,避免使用 PyTorch 和 CUDA。整個流程包括:
- 語言識別(LID): 使用
whisper-tiny檢測輸入音訊的語言。 - 專用路由: 將音訊路由至專用模型,如 ReazonSpeech(日語)、Paraformer(中文)、SenseVoice(韓語/粵語)或 Parakeet(英語及 24 種歐盟語言)。
- 雙階段優化: 在靜音期結束後,對最近的語音片段重新解碼以提高準確性。
- 後處理: 包括透過 CAM++ 和 pyannote 實現的說話人標註、CJK 數字規範化,以及透過 FuguMT 或 M2M-100 實現的即時翻譯。
- 輸入彈性: 支援麥克風、WAV 檔案、WebSocket 網路音訊,以及 Windows 特有的系統音訊迴路輸入。
適用對象
- 直播主: 需要低延遲 OBS 叠加層實現直播字幕的使用者。
- 開發者: 希望透過其
EventHub和 API 將輕量級、私密的 STT 引擎嵌入其他應用的使用者。 - 會議記錄者: 需要同時轉錄自身語音與系統音訊(通話/影片)的使用者。
核心亮點
- 超低延遲: 終端文字通常在語音結束後約 100ms 內出現。
- CPU 優化: 在無 GPU 的 6 核桌面 CPU 上可實現 10–50 倍即時性能。
- 高準確率: 在日語廣播音訊上實現 3.8% 的 CER,顯著優於
whisper-large-v3-turbo在該場景下的表現。 - 記憶體高效: 使用 LRU 快取將常駐模型控制在可設定的上限內(預設 <2GB)。
- 整合工具: 內建瀏覽器儀表板與適用於 OBS 的疊加層。
相關
- 專案
- 專案
- 專案
- Dispatch
- 專案