whisper.cpp:OpenAI Whisper 的高性能 C/C++ 实现,用于离线设备端语音识别
whisper.cpp:OpenAI Whisper 的高性能 C/C++ 实现,用于离线设备端语音识别
它解决了什么
whisper.cpp 提供了 OpenAI Whisper 自动语音识别(ASR)模型的高性能、轻量实现。它让用户能够在完全离线且本地设备上进行语音转文字转录,免除对繁重依赖或云端 API 的需求。
工作原理
该项目使用纯 C/C++ 编写,并利用 ggml 机器学习库进行推理。它支持多种硬件加速,以最大化速度,包括 Apple Silicon(通过 Metal 和 Core ML)、NVIDIA GPU(通过 CUDA)、AMD GPU(通过 ROCm)、Vulkan、OpenVINO 以及各种 CPU 内部指令集(AVX、NEON、VSX)。
适用人群
希望在各种平台(包括 iOS、Android、Windows、Linux、macOS 和 WebAssembly)中集成高质量语音识别且不依赖外部服务器的开发者和用户。
亮点
- 零运行时内存分配:针对效率和速度进行优化。
- 广泛的硬件支持:几乎所有主流 GPU 和 NPU 架构的原生加速。
- 整数量化:降低内存和磁盘占用,适合体积更小的设备。
- 跨平台:可在高端 GPU、Raspberry Pi 以及移动手机等各种设备上运行。
- 实时能力:提供连续麦克风输入转录的示例。
Sources
- undefinedggml-org/whisper.cpp