[Share Experiences] AMD GPU加速openAI whisper音视频转字幕和文字
Tofloor
poster avatar
qq4945286
deepin
2023-08-14 08:11
Author

今天总算搞定了,用amd显卡加速openAI-whisper音视频转字幕和文字。要比用cpu快了很多很多。

下面是我的电脑配制

1.png

第一步:为amd显卡安装完整的rocm

到amd官网下载自己对应该的显卡驱动安装脚本

https://www.amd.com/zh-hans/support

我的显卡是6600xt

2.png

这是会跳到脚本下载页面

3.png

默认保存在下载目录

4.png

来到下载目录下面

空白处鼠标右键选择在终端打开

5.png

分别在终端输入下面的命令

sudo vim /etc/os-release

6.png

按i 用键盘上的上下左右移动键,移到Deepin这里,把Deepin改为ubuntu

😃 当然,你可以直接修改usr/bin/下面的amdgpu-install如下图😃

截图_选择区域_20231030185456.png

改完后按一下键盘上最左上角的ESC键退出修改模式

按着在英文输入状态下 按shift+:

再输入wq就保存退出了vim编辑器回到了终端。不会vim的可以用别的编辑器或者自己网上稍微找个vim的教程看一下。

按着在终端输入

sudo chmod +x ./amdgpu-install_5.5.50503-1_all.deb (给脚本增加权重)

sudo apt install ./amdgpu-install_5.5.50503-1_all.deb (安装脚本)

等脚本安装好后,

到/etc/apt/

7.png

然后在空白处,鼠标右键选择以管理员身份打开

8.png

修改下面的这两个文件

9.png

如果系统自带的文本编辑器打不开,就到应用商店安装一个Sublime Text4

把amdgpu.list里的

deb https://repo.radeon.com/amdgpu/5.6/ubuntu focal main(amdgpu后面的数字改成5.6或者5.4.2只能这两个数字,暂时)

把rocm.list里的

deb [arch=amd64] https://repo.radeon.com/rocm/apt/5.6 focal main (apt后面的数字改成5.6或者5.4.2只能这两个数字,暂时)

先别问为什么只能5.6或者5.4.2,后面你自然知道了

改好后保存

开始安装显卡驱动:终端输入

sudo apt update

sudo amdgpu-install --usecase=rocm,hip,mllib --no-32

如果提示缺少依赖,就下载这个文件,里面有打包好的依赖,直接安装一下:

依赖包:https://cloud.189.cn/web/share?code=yqiqAniquMRf(访问码:8jtl)

直接等安装完成,可能会比较慢。我试过最快的安装时候是上午9点前,晚上2点以后。不过我知道一个比较快的方法,就是自己去下载,来替换终端下载。这个一下说不清,以后有空录个视频吧。

如果安装的时候出现什么依赖,留言!!!!!!万一出现依赖应该也就这么一个

出现依赖liburi-encode-perl_1.1.1-1这个到这里下载

https://cloud.189.cn/web/share?code=Q3UJjm3i2yey(访问码:urv9)

再用sudo vim /etc/os-release把前面改的ubuntu换会Deepin

到此rocm安装完成

其实脚本不用卸载,这样备注一下就好,下次要用方便

10.png

11.png

第二步安装openAI whisper

1:终端分别输入:

echo 'export PATH=/home/deepin(改成自己的用户名,打开终端就能看到)/.local/bin:$PATH' >>~/.bashrc

source ~/.bashrc

安装:sudo apt install python3-pip

升级:python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U pip

安装需要的软件包:python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U vosk pysubs2 SRTranslator openai-whisper setuptools-rust

注:如果安装出现错误大概内容如下:就用下面的命名修复

sudo apt-get install python3.12-dev (python3.12这里,根据自己的python版本写)

sudo apt-get install build-essential python3-dev libssl-dev libffi-dev libxml2 libxml2-dev libxslt1-dev zlib1g-dev

用上面上条命名,修复后,再用python3 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -U vosk pysubs2 SRTranslator openai-whisper setuptools-rust进行安装。

`Building wheels for collected packages: cffi
Building wheel for cffi (setup.py) ... error
error: subprocess-exited-with-error

× python setup.py bdist_wheel did not run successfully.
│ exit code: 1
╰─> [56 lines of output]

error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for cffi
Running setup.py clean for cffi
Failed to build cffi
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (cffi)

上面安装完后,打开网站https://pytorch.org/

把网页下拉

12.png

如果你前面安装的rocm5.4.2就选择

13.png

把下面的复制到终端安装pytorch

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2

如果rocm安装的是5.6

14.png

把下面的复制到终端

pip3 install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/rocm5.6

说一下,5.4.2是稳定版,5.6的是日构版,我用的就是5.6的,因为我系统安装的是rocm5.6

!!!!!!如果你的系统前面已经安装了别的rocm版本就要先卸载,再安装这两个版本了。!!!!!!!

第三步完善设置

1:sudo vim /etc/modprobe.d/amdgpu.conf打开后在里面添加

options amdgpu si_support=1
options amdgpu cik_support=1

2:等上面安装好后,在终端分别输入下面这个命令

ls -l /dev/dri/render*
sudo usermod -a -G render $LOGNAME
sudo usermod -a -G video $LOGNAME

3:设置用户 GPU 使用权限,将当前用户加入到权限组:

sudo usermod -a -G video $LOGNAME

4:为系统以后的用户都添加权限

sudo /opt/rocm/bin/rocminfo
sudo /opt/rocm/opencl/bin/clinfo

5:将 ROCm 添加到环境变量:

sudo echo 'export PATH=$PATH:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin' | sudo tee -a /etc/profile.d/rocm.sh

监控(optional)
AMD 没有 NVIDIA 类似 nvidia-smi 的命令,只能使用第三方,这里推荐 radeontop,可以直接使用 apt 安装。

sudo apt-get install radeontop

sudo radeontop

6:在终端输入

sudo /opt/rocm/bin/rocminfo

如果没有报错,说明安装成功了。到这里还没有完,接着网下看

7:将ROCm路径加入系统PATH环境变量

在终端输入

sudo echo 'export PATH=$PATH:/opt/rocm/bin:/opt/rocm/profiler/bin:/opt/rocm/opencl/bin' | sudo tee -a /etc/profile.d/rocm.sh

8:终端输入

sudo vim ~/.bashrc #添加下面

export HSA_OVERRIDE_GFX_VERSION=10.3.0 #我这里的显卡是amd的RX6600xt
export LD_LIBRARY_PATH=/opt/rocm/lib

source ~/.bashrc#通重新执行刚修改的初始化文件

到这里可以说是完成了,但还要修改一个文件和检查一下

在终端输入

python3

import torch

torch.cuda.is_available()

如果返回True

恭喜你,安装成功。如图

15.png

最输入exit()退出python

如果你输出的不是这样的,去看看这篇https://www.bilibili.com/read/cv22748315/

最重要,最重要,最重要的一步来了,如果不修改timing.py文件,音视频转换字幕或文字会报错

一定要用Visual Studio Code修改,应用商店安装一下,然后在Visual Studio Code里安装一个python插件(不会的自己网上查一下,很简单的,这里就不介绍了)。

到/home/deepin(你用户名)/.local/lib/python3.10/site-packages/whisper

到whisper找到timing.py

17.png

18.png

把57行的 @numba.jit改成@numba.jit(nopython=True)

最后保存,到此结束

whisper音频转字幕或文字,这里有介绍https://github.com/openai/whisper

Reply Favorite View the author
All Replies
qq4945286
deepin
2023-08-14 08:33
#1

20.png

19.png

Reply View the author
阿尼樱奈奈
Moderator
2023-08-14 14:30
#2

like

Reply View the author
神末shenmo
deepin
Spark-App
2023-08-14 16:52
#3

个人觉得应该维护一个deepin-amd-driver的SIG

Reply View the author
晚秋(lateautumn)
Moderator
2023-08-14 17:00
#4

我的电脑是集显,这种方法不能用吧?

Reply View the author
qq4945286
deepin
2023-08-14 21:32
#5
神末shenmo

个人觉得应该维护一个deepin-amd-driver的SIG

我是不会,只会在网上找方法,然后综合起来

Reply View the author
qq4945286
deepin
2023-08-14 21:33
#6
晚秋(lateautumn)

我的电脑是集显,这种方法不能用吧?

集显可能只能用cpu

Reply View the author
Amber
deepin
2023-08-16 06:51
#7
神末shenmo

个人觉得应该维护一个deepin-amd-driver的SIG

大力支持啊啊啊啊啊like

Reply View the author
神末shenmo
deepin
Spark-App
2023-08-16 17:48
#8
Amber

大力支持啊啊啊啊啊like

你去lead一个吧

主要工作就是去下载amd闭源驱动,拆安装包,把里面判断Debian版本的换成deepin版本,然后测试哪个驱动版本能用

我可以把星火服务器贡献出来帮你host

但是没有精力去再开个sig啦

Reply View the author
Amber
deepin
2023-08-16 20:50
#9
神末shenmo

你去lead一个吧

主要工作就是去下载amd闭源驱动,拆安装包,把里面判断Debian版本的换成deepin版本,然后测试哪个驱动版本能用

我可以把星火服务器贡献出来帮你host

但是没有精力去再开个sig啦

哈哈我也没有精力啊,快开学了,我准高一,还得预习一些东西

Reply View the author
electricight
deepin
2024-05-06 18:01
#10

大佬,这样怎么办啊?image.png

Reply View the author
qq4945286
deepin
2024-05-06 21:09
#11
electricight

大佬,这样怎么办啊?image.png

sudo amdgpu-install --usecase=rocm,hip,mllib --no-32

直接用这条命令安装吧,这样就不会安装i386的,现在用的都是64位系统,ubuntu也一样

Reply View the author