|
|
要在本地部署 OpenAI 的 Whisper 模型,你可以使用 Hugging Face 的 Transformers 库。Whisper 是一个强大的自动语音识别(ASR)模型,由 OpenAI 开发,它能够识别并转录音频文件中的语音内容。下面是如何在本地部署和使用 OpenAI Whisper 的步骤:
步骤 1: 安装必要的库
首先,确保你已经安装了 Python。然后,使用 pip 安装以下库:
- pip install transformers torchaudio
复制代码
步骤 2: 下载 Whisper 模型
Hugging Face 的 Transformers 库支持加载 OpenAI 的 Whisper 模型。你可以使用以下代码来下载模型:
- from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
- model_name = "openai/whisper-tiny.en" # 可以选择其他大小的模型,如 whisper-base, whisper-small 等
- model = Wav2Vec2ForCTC.from_pretrained(model_name)
- processor = Wav2Vec2Processor.from_pretrained(model_name)
复制代码
步骤 3: 加载音频文件并转录
使用 torchaudio 加载音频文件,然后使用模型进行转录:
- import torchaudio
- def transcribe_audio(audio_path, model, processor):
- input_speech, sampling_rate = torchaudio.load(audio_path)
- input_values = processor(input_speech, sampling_rate=sampling_rate, return_tensors="pt").input_values
- logits = model(input_values).logits
- predicted_ids = torch.argmax(logits, dim=-1)
- transcription = processor.decode(predicted_ids[0])
- return transcription
- # 使用函数
- audio_path = 'path/to/your/audio/file.wav'
- transcription = transcribe_audio(audio_path, model, processor)
- print(transcription)
复制代码
步骤 4: 选择合适的模型大小
OpenAI Whisper 提供多个模型大小,包括 tiny, base, small, medium, 和 large。每种模型大小的处理速度和准确率不同。你可以根据需要选择合适的模型大小。例如,使用 base 模型:
- model_name = "openai/whisper-base"
- model = Wav2Vec2ForCTC.from_pretrained(model_name)
- processor = Wav2Vec2Processor.from_pretrained(model_name)
复制代码
注意事项
确保你的音频文件格式是支持的(通常是 WAV 或 MP3)。如果需要,你可以使用 torchaudio 来转换音频格式。
根据你的硬件配置,较大模型的运行可能会比较慢。你可以根据实际情况选择合适的模型大小。
对于非英语音频,你可以选择带有相应语言代码的模型版本(例如 openai/whisper-base.zh 用于中文)。
通过以上步骤,你就可以在本地部署和使用 OpenAI 的 Whisper 模型进行语音转录了。
ref: GitHub - openai/whisper: Robust Speech Recognition via Large-Scale Weak Supervision
语音识别神器 Whisper 的几个小技巧_如何设定whisper只输出中文_whisper 中文识别-CSDN博客
实战指南:本地部署Whisper Web并通过内网穿透实现远程访问-百度开发者中心
|
|