❤️❤️❤️❤️❤️❤️ 我们已经正式推出微信小程序,在微信中搜索 TrendForge Pro 即可使用小程序,如果使用 Telegram 请搜索 trendforge_tg ❤️❤️❤️❤️❤️❤️

学习路径指南
难度等级
初级
预计时长
2-3小时
适合人群
对语音识别感兴趣、有基本C/C++编程经验或希望了解如何在本地运行AI模型的开发者。适合想快速体验离线语音转文本功能的初学者。

学习目标:学会在本地计算机上编译和运行Whisper.cpp,将音频文件转换为文字,并了解如何根据硬件选择不同的加速方案。

前置知识

C/C++基础 了解

项目核心是C/C++实现,需要能理解基本的编译命令(如make, cmake)和命令行操作。

Git基础 了解

需要从GitHub克隆项目仓库。

命令行/终端使用 熟悉

所有步骤(克隆、编译、运行)均在命令行中完成。

Python基础(可选) 了解 (可选)

仅在需要使用Core ML或OpenVINO等高级功能生成模型时才会用到。对于快速入门不是必须的。

学习步骤

1

环境准备与项目获取

15-30分钟

安装必要的编译工具

根据你的操作系统(如macOS, Linux, Windows),确保已安装Git和C/C++编译器(如gcc/clang,或Windows上的MSVC/MinGW)。对于macOS,通常已自带。对于Linux,可能需要运行 `sudo apt install build-essential` 或类似命令。

Windows用户建议使用MSYS2或WSL2来获得类似Linux的体验,或者直接使用Visual Studio的开发者命令提示符。

克隆项目仓库

打开终端,运行 `git clone https://github.com/ggml-org/whisper.cpp` 将项目下载到本地。

进入项目目录

运行 `cd whisper.cpp` 进入项目根目录。

2

快速入门与初体验

30-45分钟

下载预转换的模型

运行 `./models/download-ggml-model.sh base.en` 下载一个较小的英文专用模型。这是最快上手的模型。

模型会下载到 `models/` 目录下。如果脚本执行失败,可以手动从项目Releases页面或Hugging Face寻找ggml格式的模型文件。

编译基础命令行程序

运行 `make` 命令编译项目。这会在 `build/bin/` 目录下生成可执行文件,主要是 `whisper-cli`。

如果编译出错,请检查前置的编译工具是否安装正确。这是最常见的问题。

运行快速演示

运行 `make base.en`。这个命令会自动下载 `base.en` 模型并对项目自带的 `samples/` 目录下的.wav样例文件进行转录。

这是验证一切是否正常工作的最快方法。观察终端输出,应该能看到识别出的英文文本。

3

核心功能实践

45-60分钟

转录自己的音频文件

1. 确保你的音频文件是16-bit单声道WAV格式。如果不是,使用ffmpeg转换:`ffmpeg -i input.mp3 -ar 16000 -ac 1 -c:a pcm_s16le output.wav`。 2. 运行转录命令:`./build/bin/whisper-cli -m models/ggml-base.en.bin -f path/to/your/output.wav`。

`-m` 指定模型路径,`-f` 指定音频文件路径。可以尝试 `-h` 查看所有参数,例如 `-l zh` 指定中文语言(如果使用多语言模型)。

尝试不同模型

下载其他模型进行对比,例如更小的 `tiny` 或更强大的 `small`。运行 `./models/download-ggml-model.sh tiny`,然后用 `-m models/ggml-tiny.bin` 参数运行转录。观察速度、内存占用和准确率的差异。

参考README中的‘Memory usage’表格,根据你的硬件选择合适模型。内存小的电脑不要轻易尝试‘large’模型。

探索更多样例

运行 `./samples/download-samples.sh` 下载更多音频样例进行测试。

4

高级功能探索(可选)

30-60分钟

根据硬件启用加速

根据你的硬件,在编译时启用相应支持以获得更快速度。例如: - Apple Silicon (Mac):`make clean && WHISPER_METAL=1 make` 启用Metal GPU加速。 - NVIDIA GPU:`make clean && WHISPER_CUDA=1 make`。 - 其他:参考README中的OpenBLAS、Vulkan、Core ML等部分。

每次切换编译选项前,最好先运行 `make clean`。加速功能可能需要额外安装库(如CUDA Toolkit)。

了解量化模型

运行 `./models/quantize.sh` 脚本,将下载的模型进行量化,生成更小、可能更快的 `.q4_0.bin` 等文件。然后用量化后的模型进行转录。

量化模型会损失少量精度,但能显著减少内存和磁盘占用,在资源受限的设备(如树莓派)上很有用。

推荐资源

GitHub README 必看

项目最核心的文档,包含了所有安装、编译、使用和高级功能的说明。

GitHub Issues 和 Discussions 推荐

遇到问题时可以在这里搜索或提问,很多常见错误已有解决方案。

OpenAI Whisper 原始论文和文档 可选

了解Whisper模型本身的原理、训练数据和能力,有助于更好地使用移植版。

学习路径常见错误

1

音频格式不正确

Whisper.cpp 的 `whisper-cli` 目前只支持16-bit PCM WAV格式。务必使用ffmpeg等工具将MP3等格式正确转换(采样率16000Hz,单声道)。

2

编译失败,提示找不到命令或头文件

确认已安装完整的编译工具链(如build-essential)。在macOS上,可能需要安装Xcode Command Line Tools (`xcode-select --install`)。

3

运行程序时提示找不到模型文件

检查 `-m` 参数后的模型路径是否正确。模型文件应放在 `models/` 目录下,并使用正确的文件名。确保已成功运行下载脚本。

4

内存不足,程序崩溃

尤其是使用‘medium’或‘large’模型时。请先使用‘tiny’或‘base’模型。确保你的系统有足够可用内存(参考README内存表)。

5

启用GPU加速后编译或运行出错

确保已正确安装对应的驱动和开发库(如CUDA、Metal SDK)。仔细阅读README中对应加速板块的详细 prerequisites。初次尝试建议先使用CPU-only版本确保基础功能正常。

学习路径下一步步骤

1. 阅读 `whisper.h` 和 `whisper.cpp` 源码,理解模型推理的核心流程。 2. 研究如何将 `whisper.cpp` 作为库集成到你自己的C/C++项目中。 3. 探索项目 `examples` 目录下的其他示例,如实时麦克风输入转录 (`stream`)。 4. 尝试为其他语言(非英语)音频进行转录,使用 `tiny` 或 `base` 等多语言模型。 5. 了解 `ggml` 库,这是本项目依赖的底层机器学习张量库。 6. 关注项目更新,尝试最新的功能和模型优化。

助手