内置 CUDA、Vulkan 和 CPU 后端的预构建安装程序。无需编译,无需 Python,无需四处寻找模型。选择模型,点击录制,获取转录文本。完全离线运行且已签名。
whisper.cpp 是由 Georgi Gerganov 创建的 OpenAI Whisper 语音识别模型的 C++ 移植版本,并作为开源项目在 GitHub 上维护。最初的 Whisper 模型是以 Python 发布的,这在 Windows 部署方面造成了巨大的实际障碍:需要安装 Python、配置虚拟环境、匹配 PyTorch 和 CUDA 工具包版本,以及命令行操作。whisper.cpp 通过将 Whisper 推理引擎实现为可编译为原生二进制文件的可移植 C++ 代码,消除了所有这些依赖。
对于 Windows 用户而言,whisper.cpp 意味着可以在没有任何 Python 基础设施的情况下进行本地 Whisper 语音识别。编译后的二进制文件直接在 Windows 上运行,支持 NVIDIA CUDA GPU 加速,并使用与 Python 实现相同的 Whisper 模型权重。Windows 上的 whisper.cpp 是 StarWhisper 得以实现的基础。它是驱动本地转录的引擎,无需用户管理 Python 环境或命令行工具。
本页面介绍了 whisper.cpp 在 Windows 上的功能、StarWhisper 如何将其打包为桌面应用程序、支持的硬件配置,以及 whisper.cpp 与在 Windows 上运行 Python 版 Whisper 的对比。
whisper.cpp 支持所有五种 Whisper 模型尺寸:tiny(3900 万参数)、base(7400 万)、small(2.44 亿)、medium(7.69 亿)和 large-v3(15 亿)。模型文件是标准的 GGML 格式权重,可以从 Hugging Face 模型仓库下载或随安装程序捆绑。StarWhisper 完整安装程序中捆绑了 tiny、base 和 small;medium 和 large 可作为专业版模型下载。
whisper.cpp 包含 CUDA 支持,与仅使用 CPU 推理相比,对于 medium 和 large 模型可实现 5-15 倍的加速。GPU 推理需要具备 CUDA 计算能力 5.0 或更高版本的 NVIDIA GPU(基本上是 GTX 900 系列或更新的任何 NVIDIA GPU)。StarWhisper 在启动时自动检测 NVIDIA GPU,并在可用时自动将处理路由到 CUDA。
同一个模型文件即可处理 Whisper 支持的所有 96 种语言。语言指定是一个运行时参数,无需单独下载模型。whisper.cpp 还实现了 Whisper 的翻译模式,即在以一种语言转录音频的同时输出英文文本。StarWhisper 将语言选择和“翻译为英语”都向用户展示为可选选项。
whisper.cpp 在生成转录文本的同时会生成单词级别和片段级别的时间戳。StarWhisper 使用这些数据生成 SRT 字幕文件,并支持在转录输出面板中显示时间戳。对于标准语速,时间戳的精确度在几百毫秒以内。
whisper.cpp 实现了 SIMD CPU 优化(AVX、AVX2、AVX512,视情况而定),以便在没有 NVIDIA GPU 的机器上进行更快的推理。某些构建版本支持通过 ROCm 实现 AMD GPU 加速。Mac 构建版本支持 Apple Metal;这与 Windows 无关,但说明了 whisper.cpp 项目在跨平台优化方面的投入。
StarWhisper 随附了适用于 Windows x64 的预编译 whisper.cpp 二进制文件。该二进制文件在可能的情况下静态链接了其依赖项,从而最大限度地减少了运行时依赖要求。安装过程不需要 Python、Conda、pip 或任何包管理器。整个软件堆栈通过标准 Windows 安装程序在不到一分钟的时间内完成安装。
StarWhisper 的用户界面使用 Electron 构建,它提供了跨平台的图形界面层。Electron 前端通过本地 IPC 机制与 whisper.cpp 后端进程通信。从用户的角度来看,这完全透明:它呈现为一个标准的 Windows 应用程序。whisper.cpp 进程与 GUI 分开运行,因此繁重的转录工作负载不会阻塞界面。
支持 CUDA 的 whisper.cpp 构建版本需要 CUDA 运行时库。StarWhisper 捆绑了必要的 CUDA 运行时文件,因此用户无需单独安装完整的 CUDA 工具包。只需在用户的系统上安装 NVIDIA GPU 驱动程序即可。捆绑的 CUDA 运行时与过去几年的所有受支持的 NVIDIA GPU 驱动程序兼容。
whisper.cpp 的模型文件采用 GGML 格式,大小从约 75MB(tiny)到约 3GB(large-v3)不等。StarWhisper 通过“设置”面板处理模型的下载、存储位置和选择。用户无需与原始模型文件交互。应用程序会在下载后验证模型文件的完整性,并在模型文件损坏或不完整时提醒用户。
将 Whisper 模型加载到内存需要 2-10 秒,具体取决于模型大小和存储速度。StarWhisper 使 whisper.cpp 工作进程持久运行,并加载选定的模型,因此单个转录请求不会产生模型加载时间。这就是 StarWhisper 快速实时响应背后的架构:模型始终处于就绪状态,而不是针对每个请求进行加载。
以下性能估算适用于使用 Windows 版 whisper.cpp 处理的 60 分钟音频文件:
| 模型 | 仅 CPU(现代台式机) | RTX 3070 (GPU) | 所需内存 |
|---|---|---|---|
| tiny | 约 6 分钟 | 约 1 分钟 | 约 1 GB |
| small | 约 60 分钟 | 约 4 分钟 | 约 2 GB |
| medium | 约 200 分钟 | 约 15 分钟 | 约 5 GB |
| large-v3 | 约 600 分钟 | 约 40 分钟 | 约 10 GB |
估算值会因 CPU/GPU 代际、音频特性和系统负载而异。GPU 内存要求是指推理期间的显存(VRAM);系统内存要求对于 CPU 推理来说较低。whisper.cpp GitHub 仓库中有针对更广泛硬件配置的社区基准测试结果。
默认使用 small 模型。在我们针对混合听写和会议音频的自动模式基准测试中,对于短音频片段,small 始终优于 medium 和 large。Medium 和 large 在短上下文输入上更容易产生幻觉(可能因为它们是在更长的片段上训练的)。Small 在现代台式机 CPU 上以大约实时速度运行,并且在无需 GPU 的情况下也能输出清晰的拉丁文字母语言文本。
仅针对非拉丁文字(中日韩 CJK、阿拉伯文、西里尔文)或长篇连续音频才考虑使用 medium。只有当准确性比速度更重要且您拥有 GPU 时,才考虑使用 large-v3。对于短听写片段,这两个较大的模型都有可能会插入从未说过的短语。如果您不确定选择哪个,请坚持使用 small。
CUDA 加速是自动的。配备 8GB 显存的 RTX 3060 或更好显卡可以 8-10 倍实时速度运行 small 模型,以 3-4 倍实时速度运行 medium 模型。large-v3 模型需要 10GB 显存,否则会回退到 CPU 处理溢出部分。即使在高端 GPU 上,对于短听写,small 仍然是推荐的默认设置;large 用于长篇音频的批量转录。
Windows 10/11(64 位)、8GB 内存、任何现代多核 CPU。对于 GPU 加速:NVIDIA GeForce GTX 1060 6GB 或更好显卡,并安装最新的 NVIDIA 驱动程序。固态硬盘(SSD)可显著改善模型加载时间,但在模型加载到内存后对推理速度的影响微乎其微。
不需要。StarWhisper 捆绑了适用于 Windows 的预编译 whisper.cpp 二进制文件。无需 Python、Conda 或命令行设置。安装 StarWhisper 后,即可通过图形界面使用 whisper.cpp。
whisper.cpp 具有实验性的 AMD ROCm GPU 支持,但在 Windows 上远不如 NVIDIA CUDA 支持成熟。StarWhisper 目前针对 NVIDIA CUDA 进行 GPU 加速。AMD GPU 用户应预期获得 CPU 级别的性能,而非 GPU 加速性能。
是的,在实际使用中是这样。whisper.cpp 使用与 Python 实现相同的 GGML 格式模型权重,并实现了同等的准确性。由于 GGML 与 PyTorch 之间的浮点精度差异,存在微小的数值差异,但在实际转录输出中无法察觉。
tiny:约 75MB,base:约 145MB,small:约 465MB,medium:约 1.5GB,large-v3:约 3GB。StarWhisper 捆绑了 tiny + base + small 的完整安装程序大小约为 700MB。其他模型可根据需要从“设置”面板下载。