SuperAPI AI 工具集

Whisper

Whisper 是一个开源 Windows 桌面应用,基于 OpenAI 的 Whisper 自动语音识别模型,使用 DirectCompute(Direct3D 11 计算着色器)进行高性能 GPGPU 推理,速度远快于 OpenAI 的 PyTorch/CUDA 实现。它支持转录音频文件、从麦克风捕获实时音频进行转录或翻译,提供内置性能分析器,内存占用低,并通过 Media Foundation 支持大多数音视频格式和音频捕获设备(Ogg Vorbis 除外),还包含基于语音活动检测的实时捕获。用户下载 WhisperDesktop.zip 解压后运行 WhisperDesktop.exe,首次启动需下载模型(推荐 ggml-medium.bin)。该软件自 2023 年后未更新,仅支持 64 位 Windows,需要 Direct3D 11.0 能力的 GPU 和 AVX1、F16C 支持的 CPU,不支持自动语言检测,实时捕获延迟约 5-10 秒。

访问官网

工具介绍

Whisper 是一个开源 Windows 桌面应用,基于 OpenAI 的 Whisper 自动语音识别(ASR)模型,使用 DirectCompute(Direct3D 11 计算着色器)进行高性能 GPGPU 推理。该项目是 whisper.cpp(OpenAI Whisper 的 C++ 移植)的 Windows 移植版本。

用途

  • 转录音频文件中的语音为文本。
  • 从麦克风捕获实时音频并进行转录或翻译。

主要能力

  • 供应商无关的 GPGPU:基于 DirectCompute(Direct3D 11 计算着色器)。
  • 纯 C++ 实现,除必要的操作系统组件外无运行时依赖。
  • 性能显著优于 OpenAI 的 PyTorch/CUDA 实现:在 GeForce 1080Ti 上使用 medium 模型,3分24秒语音 PyTorch/CUDA 需 45 秒,本实现仅需 19 秒;运行时依赖 9.63 GB 对比 Whisper.dll 的 431 KB。
  • 混合 F16/F32 精度(Windows 自 D3D 10.0 起要求支持 R16_FLOAT 缓冲区)。
  • 内置性能分析器,可测量各个计算着色器的执行时间。
  • 低内存占用。
  • 使用 Media Foundation 处理音频,支持大多数音视频格式(Ogg Vorbis 除外)和大多数 Windows 音频捕获设备(部分仅实现 ASIO API 的专业设备除外)。
  • 音频捕获时包含语音活动检测,基于 2009 年 Mohammad Moattar 和 Mahdi Homayoonpoor 的文章 “A simple but efficient real-time voice activity detection algorithm”。
  • 提供易用的 COM 风格 API;NuGet 上有惯用的 C# 封装。版本 1.10 引入 PowerShell 5.1(Windows PowerShell)脚本支持。
  • 提供预编译二进制文件。

使用方式

  • 从仓库的 Releases 部分下载 WhisperDesktop.zip,解压后运行 WhisperDesktop.exe。
  • 首次启动界面会要求下载模型,推荐 ggml-medium.bin(1.42 GB),因为作者主要使用该模型测试。
  • 下一界面可转录音频文件。
  • 另有界面可捕获并转录或翻译来自麦克风的实时音频。
  • 开发者构建步骤:克隆仓库,用 Visual Studio 2022 打开 WhisperCpp.sln,切换到 Release 配置,构建并运行 Tools 子文件夹中的 CompressShaders C# 项目(设为启动项目,然后“调试 / 开始执行(不调试)”),成功后应看到类似“Compressed 46 compute shaders, 123.5 kb -> 18.0 kb”的输出。再构建 Whisper 项目生成原生 DLL,或 WhisperNet 生成 C# 封装和 NuGet 包,或示例项目。若在 Visual C++ 2022 或更新版本构建的软件中使用该库,可能需要以 .msm 合并模块或 vc_redist.x64.exe 形式再分发 Visual C++ 运行时 DLL;如这样做,在 Whisper 项目属性中 C/C++ -> 代码生成 -> 运行时库从“多线程 (/MT)”改为“多线程 DLL (/MD)”并重新生成。库包含 RenderDoc GPU 调试器集成,从 RenderDoc 启动程序时按 F12 捕获计算调用;调试 HLSL 着色器请使用 DLL 的调试版本。仓库还包含许多仅用于开发的代码(替代模型实现、兼容 FP64 版本的部分计算着色器、调试追踪和追踪比较工具等),通过预处理器宏或 constexpr 标志禁用。

适用场景

  • 需要在 Windows 上快速转录音频文件的用户。
  • 需要从麦克风实时转录或翻译语音的用户。
  • 拥有 Direct3D 11.0 能力 GPU 的开发者,希望通过 COM 风格 API 或 C# 封装集成语音识别功能。

限制

  • 自 2023 年后未更新。
  • 唯一支持的平台是 64 位 Windows;应在 Windows 8.1 或更新版本上运行,但仅在 Windows 10 上测试过。
  • 库需要 Direct3D 11.0 能力的 GPU(2023 年即“任何硬件 GPU”,最近不支持 D3D 11.0 的 GPU 是 2011 年的 Intel Sandy Bridge)。
  • CPU 侧需要 AVX1 和 F16C 支持。
  • 未实现自动语言检测。
  • 当前版本实时音频捕获延迟较高,根据语音检测约 5-10 秒。
  • 作者指出代码可能包含错误,软件“按原样”提供,不附带任何保证。
  • 网站 whisperdesktop.com 冒充该项目,不应信任;它虽然目前链接到 GitHub 下载,但站方可能随时替换为恶意软件。
  • 作者已构建商业后继产品(闭源,30 天免费评估,之后一次性购买),使用新语音转文本引擎,主要用 AOT 编译的 C# 实现,包含 Direct3D 12 和 Vulkan 1.3 计算后端,支持 Voxtral Mini 4B Realtime 模型推理。
  • 性能优化有限:作者针对 nVidia 1080Ti、Ryzen 7 5700G 的 Radeon Vega 8、Ryzen 5 5600U 的 Radeon Vega 7 进行了优化。nVidia 相对速度:大模型 5.8,中模型 10.6;Ryzen 5 5600U APU 中模型约 2.2;nVidia 1650 比 1080Ti 慢但远快于实时;Intel HD Graphics 4000(Core i7-3612QM)中模型相对速度 0.14,小模型 0.44,远慢于实时但能运行。未针对独立 AMD GPU 或集成 Intel GPU 专门优化。瓶颈可能在内存而非计算。