OpenAI-whisper 本地化部署

引言

今天一个朋友提了个需求,说是把视频中的文字给提取出来,用于做会议总结,可是视频太长了,网上的好多都是收费的,挺令人苦恼的,所以用OpenAI开源的Whisper处理也是个不错的选择,但是最好是有GPU的机器,不然会很慢的。

环境构造

官网: https://github.com/openai/whisper

  • python3

从Github上拉下来源码,用python编译安装,如果没有虚拟环境(如anaconda),可以Pipenv来生成一个崭新的python环境。

使用新环境中的python 执行python setup.py install
image.png

GPU支持(N卡)

pytorch: https://pytorch.org/get-started/locally/

import torch

version__ = torch.__version__
print(version__)
available = torch.cuda.is_available()
print(available) # 如果是True 则支持

这里需要和自己CUDA对应上,如果没有,选择最相近的就行。

比如我的

C:\Users\*****>nvidia-smi
Thu Dec 28 18:30:09 2023
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 546.33                 Driver Version: 546.33       CUDA Version: 12.3     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                     TCC/WDDM  | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce RTX 3060 ...  WDDM  | 00000000:01:00.0 Off |                  N/A |
| N/A   76C    P0              75W / 115W |   4885MiB /  6144MiB |     53%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+

+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A     42432      C   E:\Software\python310\python.exe          N/A      |
+---------------------------------------------------------------------------------------+

我用的是pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 --index-url https://download.pytorch.org/whl/cu118

是可以完美运行的,可做参考。

运行

路径:venv/Scripts/whisper.exe

whisper audio.wav --model medium --language Chinese

这时候会自动下载模型包,路径为C:\Users\[Users]\.cache\whisper

445dd552d351806f8229cf60d2e6553.png

demo

import whisper


wr = whisper.load_model("medium")
transcribe = wr.transcribe('audio.wav', initial_prompt='这是普通话的句子。') # 这样结果是简体的,并且有标点符号的,注意最后的句号
print(transcribe)

评论 0

还没有评论,来说点什么吧。

提交后需要审核才会公开。