handy-computer/transcribe.cpp
ggml speech-to-text inference for 16+ model families
解決的問題
transcribe.cpp 是一個高性能的 C/C++ 語音轉文本 (STT) 推理函式庫,旨在各種硬體平台上執行多樣化的模型系列。它透過提供支援串流與批次轉寫的輕量級、可移植執行期,消除了對沉重依賴項的需求。
工作原理
該函式庫使用 ggml 執行期與 GGUF 模型格式執行推理。它利用 Metal (Apple Silicon)、Vulkan (Linux/Windows) 與 CUDA (NVIDIA GPUs) 進行硬體加速,同時為 CPU 提供 tinyBLAS 加速路徑。它包含一個用於縮減模型尺寸的量化工具,以及一個將 NVIDIA NeMo 檢查點轉換為 GGUF 格式的轉換器。
適用對象
需要將快速、本地的語音轉文本功能整合到其應用程式中,且不依賴雲端 API 或沉重 ML 框架的開發人員。它為 Python、TypeScript/JavaScript、Rust 與 Swift 提供官方綁定。
亮點
- 廣泛的模型支援:支援包括 Whisper、Parakeet、Canary 與 Qwen3-ASR 在內的 16 個模型系列與 60 多個變體。
- 跨平台加速:對 Metal、Vulkan 與 CUDA 的原生 GPU 支援。
- 數值驗證:所有發佈的模型都經過數值驗證,並針對參考實作進行了 WER 測試。
- 靈活的部署:支援音訊的串流處理與批次處理。
- 量化:內建用於建立更小、更高效模型的工具 (F16, Q8_0, Q4_K_M 等)。