如何在你的电脑上完成whisper的简单部署(超详细教程)
- 前言
-
- 一、显卡驱动、CUDA ToolKit、cuDNN的下载
-
- 1. 显卡驱动
- 2. CUDA ToolKit
- 3. cuDNN的安装
- 二、windows下安装conda
- 三、使用scoop包管理工具完成ffmpeg安装
- 四、whisper安装使用
前言
这几天正在做whisper相关的工作,github上的whisper源码,whisper相当容易安装,但当我在自己的电脑上安装使用时出现了各种各样的bug,正好需要写篇技术文档,顺便记录下安装环境中遇到的各种坑。(文章是基于windows10介绍的,不同的系统可能会有一些差异)
一、显卡驱动、CUDA ToolKit、cuDNN的下载
1. 显卡驱动
显卡驱动是最基础的,当然前提是你有一块GPU,并想用这个GPU完成一些工作,首先查看自己的显卡驱动是否符合自己的需求,在桌面空白处右击打开NVIDIA控制面板或者点击开始菜单右侧的搜索栏输入NVIDIA Control Panel,点击左下角的系统信息
可以看到自己的驱动程序版本为522.30,该版本已经满足我的需求,故没有进行更新。(可能有人会问怎么判断满足需求呢,其实这里的显卡驱动程序对于CUDA来说是向下兼容的,保持较新的版本即可)
如果你的显卡驱动不能满足你的需求,打开英伟达显卡驱动官网,选择自己电脑上对应的显卡驱动,比如我的显卡是Geforce GTX 1050Ti(Notebooks对应笔记本系列),点击搜索
可以看到当前最新的显卡驱动为528.49,点击下载–>同意并开始下载
按照提示完成驱动更新即可,这一步不会有坑。
2. CUDA ToolKit
CUDA和cuDNN的安装可以参考文章,这里做一下搬运。
进入CUDA官网,点击Download Now,此时进入的页面是最新版本的cuda12.0下载页面
下拉点击Resources中的Archive of Previous CUDA Releases.
可以找到之前的cuda版本,这里选择cuda11.7,选择相应的电脑配置
点击下载
运行安装程序,这里是一个临时目录,安装完成后会自动删除里边的文件,默认即可
点击ok—>同意并继续,
如果你是第一次安装点击精简即可(会默认安装在系统盘下),如果你是多次安装,点击自定义安装,不要选择下面三项
不要选CUDA中的Visual Studio Integration
点击下一步
记住这里的安装位置
安装完成后,查看系统变量中是否添加了路径,如果没有,需要自己添加
测试环境是否安装成功
运行cmd,输入nvcc --version即可查看版本号;
set cuda,可以查看 CUDA 设置的环境变量。
nvcc --version
set cuda
3. cuDNN的安装
点击cuDNN的下载地址,这里需要注册一个帐号,才能进入下载界面。
点击复选框
点击Archived cuDNN Releases选择对应版本
根据前面的CUDA版本下载
下载好的压缩包
解压,可以看到有三个文件夹
将这三个文件夹复制到cuda安装目录中,在安装cuda中提到的路径
拷贝时看到,CUDA 的安装目录中,有和 cuDNN 解压缩后的同名文件夹,这里不需要担心,直接复制即可。cuDNN 解压缩后的同名文件夹中的配置文件会添加到 CUDA安装目录中的同名文件夹中。
现在大家应该可以理解,cuDNN 其实就是 CUDA 的一个补丁而已,专为深度学习运算进行优化的,然后再添加环境变量。
添加至系统变量
往系统环境变量中的 path 添加如下路径(根据自己的路径进行修改)
验证是否安装成功
配置完成后,我们可以验证是否配置成功,主要使用CUDA内置的deviceQuery.exe 和 bandwidthTest.exe:
首先win+R启动cmd,cd到安装目录下的 …\extras\demo_suite,然后分别执行bandwidthTest.exe和deviceQuery.exe,应该得到下图结果:
参考博客:
【CUDA】cuda安装 (windows版)
至此显卡驱动、CUDA ToolKit、cuDNN安装完成。
二、windows下安装conda
可以参考文章conda的安装,Conda 是一个开源的软件包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。 Conda 是为 Python 程序创建的,适用于 Linux,OS X 和Windows,也可以打包和分发其他软件。
首先进入conda官网,选择适合自己版本的,本文以Windows为例,点击Download即可开始下载最新conda版本,conda的版本在这里无所谓的一般不会有影响。
下载完成后得到一个exe文件,双击即可开始安装:
点击Next:
点击I Agree:
这里可以选择用户,我选择的Just Me:
选择安装路径(路径名不要有中文),建议放在C盘(默认的安装位置),我的C盘资源紧张,放在了F盘上:
把这两项都勾选上,第一项是自动添加环境变量,无需手动添加,非常方便,接下来一直点击Next即可完成安装:
测试是否配置成功,WIN+R键输入cmd:
输入conda命令,出现如下界面,完成安装:
conda
三、使用scoop包管理工具完成ffmpeg安装
参考文章
Scoop是Windows的命令行安装程序,是一个强大的包管理工具。可以在github上找到其项目的相关信息。
ffmpeg堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见的数据封装格式、多媒体传输协议以及音视频编解码器。
因为ffmpeg的安装比较复杂,可以借助scoop完成安装。
由于我的C盘空间有限,使用如下命令更改安装位置
首先在终端输入powershell:
输入以下命令:
#将Scoop安装到自定义目录(命令行方式),默认为C:\Users<user>\scoop
$env:SCOOP='E:\Applications\Scoop'
[Environment]::SetEnvironmentVariable('SCOOP', $env:SCOOP, 'User')
#将Scoop配置为将全局程序安装到自定义目录 SCOOP_GLOBAL(命令行方式),默认为C:\ProgramData\scoop
$env:SCOOP_GLOBAL='E:\Applications\GlobalScoopApps'
[Environment]::SetEnvironmentVariable('SCOOP_GLOBAL', $env:SCOOP_GLOBAL, 'Machine')
不会科学上网的可能无法使用 iwr -useb get.scoop.sh | iex 安装,可使用下面的脚本将链接替换
#可能需要通过下面的命令设置权限之后再安装
Set-ExecutionPolicy RemoteSigned -scope CurrentUser
#iwr -useb get.scoop.sh | iex
#网络慢可以使用下面替换为cnpm和fastgit的链接
iwr -useb https://raw.fastgit.org/ScoopInstaller/Scoop/master/bin/install.ps1 | %{$_.Content.replace("github.com","ghproxy.com/https://github.com").replace("raw.githubusercontent.com","ghproxy.com/https://raw.githubusercontent.com")} | iex
scoop安装完成,使用scoop安装ffmpeg
scoop install ffmpeg
如果下载速度慢,可以更改下载设置,参考文章,这里不再做过多介绍。
四、whisper安装使用
在终端执行命令
conda create -n whisper python=3.9
conda activate whisper
pip install git+https://github.com/openai/whisper.git
注意:从github下载好的whisper自带的依赖中torch是cpu版本,所以在clone完成后需要自行修改torch依赖,进入anaconda环境中比如我的路径如下:
F:\anaconda3\envs\whisper\Lib\site-packages
找到你自己的路径,将torch相关文件夹删除,在回到终端输入:
conda install pytorch torchvision torchaudio pytorch-cuda=11.7 -c pytorch -c nvidia
安装完成后,输入:
whisper FilePath --model_dir YourModelDir --model medium --language Chinese
Ok!接下来便可以体验whisper模型。