在 Windows 上部署 OpenAI Whisper:详细教程
OpenAI Whisper 是一个功能强大的多语言语音识别模型,能够处理多种音频格式并生成高质量的字幕文件。本文将详细介绍如何在 Windows 系统上部署 Whisper,利用 GPU 加速音频转录,并探讨 Whisper 的基本使用方法和支持的音频格式。
使用体验:直接用cpu(i7-12700)跑small模型,6分钟的音频也大概只要3分钟,除了极个别语速很快的时候的语气词没识别出来,其他地方完全准确。用gpu(3060 laptop)跑small模型,8分钟的音频一分钟以内跑完。因此,对于时长较短的音频,small模型完全够用了
目录
什么是 Whisper? 环境准备 创建虚拟环境并安装 Whisper 使用 Whisper 进行音频转录 使用 GPU 加速 Whisper Whisper 支持的音频格式 常见问题及解决方案1. 什么是 Whisper?
Whisper 是 OpenAI 提供的开源语音识别模型,能够将音频文件转录为文本或字幕文件,支持多种语言和多格式输出。其主要功能包括:
自动检测和转录多语言音频。 支持生成.txt
, .srt
, .vtt
等格式的字幕文件。
能够处理嘈杂环境下的音频。
通过 GPU 加速,提高转录效率。
2. Whisper 支持的音频格式
Whisper 支持多种常见的音频格式,能够处理各种类型的音频文件,包括但不限于:
MP3 (.mp3) WAV (.wav) M4A (.m4a) FLAC (.flac) OGG (.ogg)3. 环境准备
在开始部署 Whisper 之前,请确保你具备以下环境:
操作系统:Windows 10 或更高版本 Python:Python 3.7 及以上版本 Conda:用于创建和管理虚拟环境(推荐使用 Miniconda) NVIDIA GPU(可选):用于加速音频转录任务4. 创建虚拟环境并安装 Whisper
创建虚拟环境:
打开 终端(Anaconda Prompt , Git Bash等,我个人用的是Git Bash),运行以下命令创建并激活虚拟环境:
conda create --name whisper_env python=3.9
conda activate whisper_env
安装 Whisper:
在虚拟环境中运行以下命令安装 Whisper:
pip install git+https://github.com/openai/whisper.git
安装 FFmpeg:
Whisper 依赖 FFmpeg 处理音频文件,使用以下命令安装:
(一定要记得安装,不然会报错找不到音频文件)
conda install -c conda-forge ffmpeg
(可选)安装支持 GPU 的 PyTorch:
如果你有 NVIDIA GPU 并且想利用 GPU 加速,安装支持 CUDA 的 PyTorch。例如,针对 CUDA 11.8:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
5. 使用 Whisper 进行音频转录
Whisper 支持多种音频转录模式,可以生成多种格式的字幕文件。以下是一个简单的音频转录命令:
whisper "path/to/your/audiofile.mp3" --model small --output_format srt --output_dir "path/to/output"
–model small:选择模型大小,模型越大,精度越高,但速度较慢(可选模型:tiny
, base
, small
, medium
, large
)。
–output_format srt:指定输出格式为 .srt
字幕文件。
–output_dir:指定生成文件的保存路径。
如果需要自动检测语言,你可以直接运行命令。否则,也可以手动指定音频的语言:
whisper "path/to/your/audiofile.mp3" --model small --language English
Whisper 具备自动语言检测功能,可以识别音频中的语言并选择适合的模型进行转录。默认情况下,Whisper 使用前 30 秒的音频进行语言检测。
whisper "path/to/audiofile.mp3" --model small
6. 使用 GPU 加速 Whisper
如果你有 NVIDIA GPU,并且已安装了 CUDA 和支持 GPU 的 PyTorch,Whisper 会自动使用 GPU。你也可以通过 --device
参数明确指定使用 GPU:
whisper "path/to/your/audiofile.mp3" --model small --output_format srt --output_dir "path/to/output" --device cuda
使用 GPU 加速时,音频处理速度会显著提升,特别是在处理较大的模型如 medium
或 large
时。
7. 常见问题及解决方案
1. NumPy 版本兼容性问题
如果你遇到类似 RuntimeError: Numpy is not available
或 NumPy 相关的警告,可以通过降级 NumPy 来解决:
如果用的是Git Bash,则加引号:
pip install "numpy<2.0"
如果用的是 Anaconda Prompt,则不用加引号:
pip install numpy<2.0
2. FileNotFoundError
如果系统提示找不到文件,确保音频文件路径正确。对于 Git Bash 用户,注意文件路径格式应使用正斜杠 /
,例如:
whisper "/f/LINSP_podcast/episode.mp3" --model small
如果路径正确还是找不到文件,确保安装了 FFmpeg
3. GPU 不可用
如果你有 NVIDIA GPU,但 PyTorch 无法检测到 GPU,请检查 CUDA 是否安装正确,并使用以下命令验证 GPU 是否可用:
python -c "import torch; print(torch.cuda.is_available())"
4. FFmpeg 问题
如果 FFmpeg 没有安装或无法找到,确保你已经使用 Conda 安装了 FFmpeg:
conda install -c conda-forge ffmpeg
总结
通过这篇教程,你已经了解了如何在 Windows 系统上部署 Whisper,创建虚拟环境、安装必要依赖,并利用 GPU 加速音频转录。Whisper 提供了强大的语音识别能力,支持多种音频格式,并且能够生成不同的字幕文件,适合各种语音转录和字幕生成需求。
希望这篇博客对你有所帮助,如果你有任何问题或建议,欢迎在评论区留言!
总结
在 Windows 上部署 OpenAI Whisper:详细教程
OpenAI Whisper 是一个功能强大的多语言语音识别模型,能够处理多种音频格式并生成高质量的字幕文件。本文将详细介绍如何在 Windows 系统上部署 Whisper,利用 GPU 加速音频转录,并探讨 Whisper 的基本使用方法和支持的音频格式。
使用体验:直接用cpu(i7-12700)跑small模型,6分钟的音频也大概只要3分钟,除了极个别语速很快的时候的语气词没识别出来,其他地方完全准确。用gpu(3060 laptop)跑small模型,8分钟的音频一分钟以内跑完。因此,对于时长较短的音频,small模型完全够用了
目录
什么是 Whisper?
环境准备
创建虚拟环境并安装 Whisper
使用 Whisper 进行音频转录
使用 GPU 加速 Whisper
Whisper 支持的音频格式
常见问题及解决方案
1. 什么是 Whisper?
Whisper 是 OpenAI 提供的开源语音识别模型,能够将音频文件转录为文本或字幕文件,支持多种语言和多格式输出。其主要功能包括:
自动检测和转录多语言音频。
支持生成
.txt
, .srt
, .vtt
等格式的字幕文件。能够处理嘈杂环境下的音频。
通过 GPU 加速,提高转录效率。
2. Whisper 支持的音频格式
Whisper 支持多种常见的音频格式,能够处理各种类型的音频文件,包括但不限于:
MP3 (.mp3)
WAV (.wav)
M4A (.m4a)
FLAC (.flac)
OGG (.ogg)
3. 环境准备
在开始部署 Whisper 之前,请确保你具备以下环境:
操作系统:Windows 10 或更高版本
Python:Python 3.7 及以上版本
Conda:用于创建和管理虚拟环境(推荐使用 Miniconda)
NVIDIA GPU(可选):用于加速音频转录任务
4. 创建虚拟环境并安装 Whisper
创建虚拟环境:
打开 终端(Anaconda Prompt , Git Bash等,我个人用的是Git Bash),运行以下命令创建并激活虚拟环境:
conda create --name whisper_env python=3.9
conda activate whisper_env
安装 Whisper:
在虚拟环境中运行以下命令安装 Whisper:
pip install git+https://github.com/openai/whisper.git
安装 FFmpeg:
Whisper 依赖 FFmpeg 处理音频文件,使用以下命令安装:
(一定要记得安装,不然会报错找不到音频文件)
conda install -c conda-forge ffmpeg
(可选)安装支持 GPU 的 PyTorch:
如果你有 NVIDIA GPU 并且想利用 GPU 加速,安装支持 CUDA 的 PyTorch。例如,针对 CUDA 11.8:
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
5. 使用 Whisper 进行音频转录
Whisper 支持多种音频转录模式,可以生成多种格式的字幕文件。以下是一个简单的音频转录命令:
whisper "path/to/your/audiofile.mp3" --model small --output_format srt --output_dir "path/to/output"
–model small:选择模型大小,模型越大,精度越高,但速度较慢(可选模型:
tiny
, base
, small
, medium
, large
)。–output_format srt:指定输出格式为
.srt
字幕文件。–output_dir:指定生成文件的保存路径。
如果需要自动检测语言,你可以直接运行命令。否则,也可以手动指定音频的语言:
whisper "path/to/your/audiofile.mp3" --model small --language English
Whisper 具备自动语言检测功能,可以识别音频中的语言并选择适合的模型进行转录。默认情况下,Whisper 使用前 30 秒的音频进行语言检测。
whisper "path/to/audiofile.mp3" --model small
6. 使用 GPU 加速 Whisper
如果你有 NVIDIA GPU,并且已安装了 CUDA 和支持 GPU 的 PyTorch,Whisper 会自动使用 GPU。你也可以通过 --device
参数明确指定使用 GPU:
whisper "path/to/your/audiofile.mp3" --model small --output_format srt --output_dir "path/to/output" --device cuda
使用 GPU 加速时,音频处理速度会显著提升,特别是在处理较大的模型如 medium
或 large
时。
7. 常见问题及解决方案
1. NumPy 版本兼容性问题
如果你遇到类似 RuntimeError: Numpy is not available
或 NumPy 相关的警告,可以通过降级 NumPy 来解决:
如果用的是Git Bash,则加引号:
pip install "numpy<2.0"
如果用的是 Anaconda Prompt,则不用加引号:
pip install numpy<2.0
2. FileNotFoundError
如果系统提示找不到文件,确保音频文件路径正确。对于 Git Bash 用户,注意文件路径格式应使用正斜杠 /
,例如:
whisper "/f/LINSP_podcast/episode.mp3" --model small
如果路径正确还是找不到文件,确保安装了 FFmpeg
3. GPU 不可用
如果你有 NVIDIA GPU,但 PyTorch 无法检测到 GPU,请检查 CUDA 是否安装正确,并使用以下命令验证 GPU 是否可用:
python -c "import torch; print(torch.cuda.is_available())"
4. FFmpeg 问题
如果 FFmpeg 没有安装或无法找到,确保你已经使用 Conda 安装了 FFmpeg:
conda install -c conda-forge ffmpeg
总结
通过这篇教程,你已经了解了如何在 Windows 系统上部署 Whisper,创建虚拟环境、安装必要依赖,并利用 GPU 加速音频转录。Whisper 提供了强大的语音识别能力,支持多种音频格式,并且能够生成不同的字幕文件,适合各种语音转录和字幕生成需求。
希望这篇博客对你有所帮助,如果你有任何问题或建议,欢迎在评论区留言!