在当今信息爆炸的时代,音频数据日益增长,将音频转换为文本的需求也变得越来越普遍。无论是采访记录、会议纪要,还是个人笔记,快速准确地转录音频可以极大地提高工作效率。虽然市面上存在许多在线音频转录服务,但它们往往需要付费,并且存在隐私泄露的风险。本文将向您介绍如何使用 OpenAI Whisper 在本地进行音频转录,无需依赖云服务,保护您的数据安全,同时享受高效便捷的转录体验。
什么是 OpenAI Whisper?
OpenAI Whisper 是由 OpenAI 开发的一款开源语音识别系统。它基于 Transformer 架构,拥有强大的语音识别能力,可以识别多种语言,并能处理各种复杂的音频环境。

Whisper 不仅可以进行语音转录,还可以进行语音翻译,将一种语言的语音转换为另一种语言的文本。Whisper 的强大之处在于它的泛化能力,即使在嘈杂的环境或低质量的音频中,也能保持较高的转录准确率。
Whisper 的优势
- 强大的语音识别能力:Whisper 在各种音频环境中都能保持较高的转录准确率。
- 支持多种语言:Whisper 可以识别多种语言,并能进行语音翻译。
- 开源免费:Whisper 是开源的,可以免费使用,无需支付任何费用。
这些优势使得 Whisper 成为本地音频转录的理想选择。通过在本地电脑上部署 Whisper,您可以构建自己的音频转录系统,无需依赖云服务,保护您的数据安全,同时享受高效便捷的转录体验。
准备工作:安装必要的软件和工具
在使用 OpenAI Whisper 进行本地音频转录之前,您需要安装以下必要的软件和工具:
- Python:Whisper 是基于 Python 开发的,因此您需要安装 Python 3.7 或更高版本。您可以在 Python 官网 下载适合您操作系统的 Python 安装包。
- FFmpeg:FFmpeg 是一款强大的多媒体处理工具,Whisper 需要使用 FFmpeg 来处理音频文件。您可以在 FFmpeg 官网 下载适合您操作系统的 FFmpeg 安装包。
- Git:Git 是一款版本控制系统,用于从 GitHub 上下载 Whisper 的代码。您可以在 Git 官网 下载适合您操作系统的 Git 安装包。
安装完成后,您可以使用以下命令来验证软件是否安装成功:
python --version
ffmpeg -version
git --version
如果命令输出了相应的版本信息,则说明软件安装成功。
步骤一:创建 Python 虚拟环境

为了避免不同 Python 项目之间的依赖冲突,建议您为 Whisper 创建一个独立的 Python 虚拟环境。使用以下命令创建虚拟环境:
python3 -m venv whispertest
这将在当前目录下创建一个名为“whispertest”的虚拟环境。接下来,激活虚拟环境:
- Windows:
.\whispertest\Scripts\activate
- macOS/Linux:
source whispertest/bin/activate
激活后,您将在命令行提示符前看到“(whispertest)”,表示您已成功进入虚拟环境。
步骤二:安装 OpenAI Whisper
在激活的虚拟环境中,使用以下命令安装 OpenAI Whisper:
pip install -U openai-whisper

这将从 PyPI(Python Package Index)下载并安装 Whisper 及其依赖项。安装过程中可能需要一些时间,请耐心等待。
如果您在使用 NVIDIA GPU,建议安装 CUDA 工具包以获得更好的性能。安装 CUDA 后,您可以使用以下命令安装 torch 及其相关依赖项:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
请根据您的 CUDA 版本选择合适的 torch 版本。安装完成后,您可以使用以下命令来验证 Whisper 是否安装成功:
whisper --help
如果命令输出了 Whisper 的帮助信息,则说明 Whisper 安装成功。
步骤三:下载 Whisper 模型
OpenAI Whisper 提供了多种不同大小的模型,模型越大,转录准确率越高,但同时也需要更多的计算资源。

您可以根据自己的硬件配置和转录需求选择合适的模型。以下是 Whisper 提供的模型列表:
模型名称 | 参数量 | 英语专用 | 多语言 | 所需显存 | 相对速度 | 下载大小 |
---|---|---|---|---|---|---|
tiny | 39M | tiny.en | tiny | ~1GB | ~32x | 75 MB |
base | 74M | base.en | base | ~1GB | ~16x | 142 MB |
small | 244M | small.en | small | ~2GB | ~6x | 466 MB |
medium | 769M | medium.en | medium | ~5GB | ~2x | 1.42 GB |
large-v1 | 1550M | N/A | large | ~10GB | 1x | 2.9 GB |
large-v2 | 1550M | N/A | large | ~10GB | 1x | 2.9 GB |
large-v3 | 1550M | N/A | large | ~10GB | 1x | 2.9 GB |
您可以使用以下命令下载 Whisper 模型:
whisper --model <model_name> <audio_file>
例如,要下载 tiny 模型,可以使用以下命令:
whisper --model tiny sample.wav
这将下载 tiny 模型并将其存储在本地电脑上。模型下载完成后,您就可以使用 Whisper 进行音频转录了。
步骤四:使用 Whisper 进行音频转录
您可以使用 Whisper 命令行工具或 Python 脚本进行音频转录。

以下分别介绍这两种方法:
方法一:使用 Whisper 命令行工具
使用以下命令进行音频转录:
whisper <audio_file> --model <model_name>
例如,要使用 tiny 模型转录名为“sample.wav”的音频文件,可以使用以下命令:
whisper sample.wav --model tiny
Whisper 将自动识别音频文件中的语言,并将其转录为文本。转录结果将显示在命令行中,并保存为 SRT 字幕文件。
您可以使用以下参数来调整转录效果:
--language <language>
:指定音频文件的语言。--task <task>
:指定任务类型,可以是“transcribe”(转录)或“Translate”(翻译)。--output_format <format>
:指定输出格式,可以是“txt”、“srt”、“vtt”或“json”。
方法二:使用 Python 脚本
您也可以使用 Python 脚本来控制 Whisper 进行音频转录。以下是一个简单的 Python 脚本示例:
import whisper
model = whisper.load_model("tiny")
result = model.transcribe("sample.wav")
print(result["text"])
这段代码首先导入 whisper 模块,然后加载 tiny 模型,接着使用 transcribe() 函数转录名为“sample.wav”的音频文件,最后打印转录结果。您可以将这段代码保存为“test.py”,然后使用以下命令运行:
python test.py
转录结果将显示在命令行中。
Whisper 更多使用方法
除了直接在命令行输出文本,还可以将文字输出到本地文件,方便保存查看。
import whisper
model = whisper.load_model("tiny")
result = model.transcribe("sample.wav")
with open("output.txt", "w") as file:
file.write(result["text"])
运行该脚本后,就可以在 output.txt 文件中查看到文字了。
OpenAI Whisper 使用教程
准备音频文件
首先,确保您拥有要转录的音频文件。Whisper 支持多种音频格式,包括 MP3、WAV、MP4 等。如果您的音频文件不是 Whisper 支持的格式,您可以使用 FFmpeg 将其转换为支持的格式。例如,将 MP4 文件转换为 WAV 文件:
ffmpeg -i input.mp4 output.wav
选择合适的模型
根据您的硬件配置和转录需求,选择合适的 Whisper 模型。如果您的电脑配置较低,建议选择 tiny 或 base 模型。如果您的电脑配置较高,并且需要更高的转录准确率,可以选择 small 或 medium 模型。如果您的需求是相对速度与准确率进行兼顾,可以尝试 base 模型。
调整转录参数
您可以使用 Whisper 提供的各种参数来调整转录效果。例如,您可以使用 --language
参数指定音频文件的语言,使用 --task
参数指定任务类型,使用 --output_format
参数指定输出格式。根据您的具体需求,调整这些参数可以提高转录准确率和效率。
OpenAI Whisper 的优缺点
优点
- 免费使用:无需支付任何费用,即可享受高质量的音频转录服务。
- 保护隐私:音频数据无需上传到云端,避免了隐私泄露的风险。
- 安全可靠:数据存储在本地,无需担心数据安全问题。
- 离线使用:无需网络连接,随时随地进行音频转录。
- 高度可定制:可以根据需要选择不同的模型和参数,以优化转录效果。
缺点
- 需要一定的技术知识才能安装和配置:对于不熟悉 Python 和命令行操作的用户来说,安装和配置 Whisper 可能会有一定难度。
- 转录速度取决于硬件配置:如果您的电脑配置较低,转录速度可能会较慢。
- 对于某些语言或口音,转录准确率可能不高:尽管 Whisper 支持多种语言,但对于某些特定语言或口音,转录准确率可能不如主流语言。
常见问题解答
Whisper 是否支持多种语言?
是的,Whisper 支持多种语言。您可以使用 --language
参数指定音频文件的语言。
Whisper 的转录准确率如何?
Whisper 的转录准确率取决于多种因素,包括音频质量、背景噪音和所使用的模型。一般来说,模型越大,转录准确率越高。在干净的音频环境中,Whisper 的转录准确率可以达到很高水平。
Whisper 是否可以在离线状态下使用?
是的,Whisper 可以在离线状态下使用。一旦您下载了 Whisper 模型,您就可以在没有网络连接的情况下进行音频转录。
相关问题
如何提高 Whisper 的转录准确率?
以下是一些提高 Whisper 转录准确率的建议:
- 选择合适的模型:模型越大,转录准确率越高。如果您的硬件配置允许,建议选择 small 或 medium 模型。
- 清理音频文件:尽量减少音频文件中的背景噪音。您可以使用音频编辑软件来降噪。
- 使用正确的语言:使用
--language
参数指定音频文件的语言。这将有助于 Whisper 更好地识别语音。 - 检查转录结果:仔细检查转录结果,并手动修正错误。这将有助于提高最终转录结果的准确性。