当前位置:AIGC资讯 > AIGC > 正文

Linux系统上部署Whisper。

Whisper是一个开源的自动语音识别(ASR)模型,最初由OpenAI发布。要在本地Linux系统上部署Whisper,你可以按照以下步骤进行:

1. 创建虚拟环境

为了避免依赖冲突,建议在虚拟环境中进行部署。创建并激活一个新的虚拟环境:
如果不知道 conda如何安装
找作者这篇文章 最后面有安装conda教程

https://blog.csdn.net/yhl18931306541/article/details/129141060?spm=1001.2014.3001.5501

打开上方网址,划到最后位置,按照作者的一步一步来即可
conda create --name whisper python=3.11.7
conda activate whisper
进入到虚拟环境执行下方命令

2. 安装Whisper及其依赖项

使用pip安装Whisper及其依赖项:
pip install git+https://github.com/openai/whisper.git
pip install torch
pip install faster-whisper

3. 测试安装

你可以运行以下命令来测试Whisper是否安装成功:
python -m whisper

如果看到帮助信息,说明安装成功。

4. 使用Whisper

Whisper可以通过命令行或Python脚本来使用。以下是一个基本的使用示例:
命令行使用:
whisper audio_file.mp3 --model large-v2
将 audio_file.mp3 换成 你准备识别的语音,回车等待即可
python脚本使用:
# 导入模块
from faster_whisper import WhisperModel

# 模型路径, 
# # model_path = WhisperModel("large-v3")
# 注释:下载路径需要使用代理出外网下载,将下载好的模型上传到linux服务中
model_path = "/root/.cache/huggingface/hub/models--Systran--faster-whisper-large-v3/snapshots/edaa852ec7e145841d8ffdb056a99866b5f0a478"

# 初始化 WhisperModel
model = WhisperModel(
   model_size_or_path=model_path,  # 必须提供模型路径或模型大小
   device="cuda",           	# 使用 GPU    
   device_index=1,    			# 指定第二个 GPU(从 0 开始计数)
    compute_type="float32"   # 使用 float32 精度计算
)
# 进行语音识别
segments, info = model.transcribe("/opt/189****2345.wav", beam_size=5, language="zh", condition_on_previous_text=False)
# 注释 189****2345.wav 换成你准备识别的语音  .mp3文件可以
# 打印识别结果
for segment in segments:
 print("[%.2fs -> %.2fs] %s" % (segment.start, segment.end, segment.text)
)
输入如下即可

如果报错:

Could not load library libcudnn_ops_infer.so.8. Error: libcudnn_ops_infer.so.8: cannot open shared object file: No such file or directory
已放弃 (核心已转储)

处理:

find / -name 'libcudnn_ops_infer.so.8'
虚拟用户目录下
whisper/lib/python3.11/site-packages/nvidia/cudnn/lib/libcudnn_ops_infer.so.8
cp -rp /data/anaconda3/envs/whisper/lib/python3.11/site-packages/nvidia/cudnn/lib/*.8 /usr/lib/
cp -rp /data/anaconda3/envs/whisper/lib/python3.11/site-packages/nvidia/cudnn/lib/*.8 /usr/lib64/
继续运行即可

这些步骤应该可以帮助你在本地Linux系统上成功部署并使用Whisper。

注:下载模型时,需要到外网去下载,使用科学上网方式。

如果本身服务器出不了外网,则将模型下载到本地,然后打包上传到服务器。

总结


Whisper是一个开源的自动语音识别(ASR)模型,最初由OpenAI发布。要在本地Linux系统上部署Whisper,你可以按照以下步骤进行:



1. 创建虚拟环境


为了避免依赖冲突,建议在虚拟环境中进行部署。创建并激活一个新的虚拟环境:
如果不知道 conda如何安装
找作者这篇文章 最后面有安装conda教程
https://blog.csdn.net/yhl18931306541/article/details/129141060?spm=1001.2014.3001.5501
打开上方网址,划到最后位置,按照作者的一步一步来即可

conda create --name whisper python=3.11.7
conda activate whisper


进入到虚拟环境执行下方命令



2. 安装Whisper及其依赖项



使用pip安装Whisper及其依赖项:

pip install git+https://github.com/openai/whisper.git
pip install torch
pip install faster-whisper


3. 测试安装



你可以运行以下命令来测试Whisper是否安装成功:

python -m whisper

如果看到帮助信息,说明安装成功。



4. 使用Whisper



Whisper可以通过命令行或Python脚本来使用。以下是一个基本的使用示例:


命令行使用:

whisper audio_file.mp3 --model large-v2
将 audio_file.mp3 换成 你准备识别的语音,回车等待即可


python脚本使用:

# 导入模块
from faster_whisper import WhisperModel
# 模型路径,
# # model_path = WhisperModel("large-v3")
# 注释:下载路径需要使用代理出外网下载,将下载好的模型上传到linux服务中
model_path = "/root/.cache/huggingface/hub/models--Systran--faster-whisper-large-v3/snapshots/edaa852ec7e145841d8ffdb056a99866b5f0a478"
# 初始化 WhisperModel
model = WhisperModel(
model_size_or_path=model_path, # 必须提供模型路径或模型大小
device="cuda", # 使用 GPU
device_index=1, # 指定第二个 GPU(从 0 开始计数)
compute_type="float32" # 使用 float32 精度计算
)
# 进行语音识别
segments, info = model.transcribe("/opt/189****2345.wav", beam_size=5, language="zh", condition_on_previous_text=False)
# 注释 189****2345.wav 换成你准备识别的语音 .mp3文件可以
# 打印识别结果
for segment in segments:
print("[%.2fs -> %.2fs] %s" % (segment.start, segment.end, segment.text)
)


输入如下即可



如果报错:


Could not load library libcudnn_ops_infer.so.8. Error: libcudnn_ops_infer.so.8: cannot open shared object file: No such file or directory
已放弃 (核心已转储)


处理:


find / -name 'libcudnn_ops_infer.so.8'
虚拟用户目录下
whisper/lib/python3.11/site-packages/nvidia/cudnn/lib/libcudnn_ops_infer.so.8
cp -rp /data/anaconda3/envs/whisper/lib/python3.11/site-packages/nvidia/cudnn/lib/*.8 /usr/lib/
cp -rp /data/anaconda3/envs/whisper/lib/python3.11/site-packages/nvidia/cudnn/lib/*.8 /usr/lib64/
继续运行即可


这些步骤应该可以帮助你在本地Linux系统上成功部署并使用Whisper。



注:下载模型时,需要到外网去下载,使用科学上网方式。



如果本身服务器出不了外网,则将模型下载到本地,然后打包上传到服务器。

更新时间 2024-07-31