1、升级Python版本(可选)

CentOS 7.9 系统默认安装的Python版本有两个,如果输入python -V我们看到的是python2的版本信息,如果我们输入python3 -V我们看到的是python3的版本信息。

由于whisper要求使用的是python版本是在3.8到3.11之间的版本。

CentOS 7.9自带的python版本是不符合的,我们需要卸载它或者升级它。如果我们不想要升级python版本,那么我们也可以使用Anaconda中的python版本,并且这里推荐使用Anaconda,如果你想要安装Anaconda,那么可以直接跳到第二步。

查看CentOS版本。我目前使用的是CentOS 7.9。

cat /etc/centos-release

查看python3版本。

python3 -V

1.1、升级python版本。

# 安装依赖
yum -y install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel libffi-devel
# 创建目录
mkdir -p /usr/local/python3
# 去 https://www.python.org/ftp/python 找一个自己想要下载的版本
wget -c https://www.python.org/ftp/python/3.9.9/Python-3.9.9.tar.xz
# 解压
xz -d Python-3.9.9.tar.xz
tar -xvf Python-3.9.9.tar.xz
# 切换到 Python-3.9.9 目录
cd Python-3.9.9
# 编译并安装
./configure --prefix=/usr/local/python3 && make && make install

1.2、修改配置

  1. 删除旧的软链接。
# 先查看一下有哪些软链接
ll /usr/bin | grep python
ll /usr/bin | grep pip
# 删除软链接
rm -rf /usr/bin/python3 
rm -rf /usr/bin/pip3
  1. 创建软链接。
ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

2、安装Anaconda

下载Anaconda可以去官方下载

  1. 创建目录。
mkdir -p /opt/Anaconda
  1. 下载Anaconda。
wget -c https://repo.anaconda.com/archive/Anaconda3-2023.03-1-Linux-x86_64.sh
  1. 执行脚本。
bash Anaconda3-2023.03-1-Linux-x86_64.sh

然后根据提示进行安装即可。

最后要记得关闭当前连接,重连接进来。

输入下面的命令可以看到版本信息说明已经安装成功了。

conda -V

3、安装FFmpeg

在CentOS7.9中不能使用下面的命令安装FFmpeg,我们需要从源码编译中安装FFmpeg。

yum install ffmpeg

FFmpeg部分源码使用汇编编写,所以我们需要安装汇编语言编译器。

  1. 安装yasm

    # 下载
    wget -c http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
    # 解压
    tar -zxvf yasm-1.3.0.tar.gz
    # 切换目录
    cd yasm-1.3.0
    # 执行配置
    ./configure
    # 编译并安装
    make && make install
    
  2. 安装FFmpeg

    # 下载源码
    git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
    # 切花目录
    cd ffmpeg
    # 执行配置
    ./configure
    # 编译并安装
    make && make install
    
  3. 查看FFmpeg版本信息

    ffmpeg --version
    

4、安装CUDA

先执行下面的命令查看你显卡最高支持的CUDA版本

nvidia-smi

4.1、安装CUDA

在NVIDIA官网下载支持的CUDA版本,可能国内网络无法正常访问NVIDIA官方CUDA下载网页,为了方便大家,这里我把一些常用的下载链接放到下面。下面下载的CUDA版本都是11.8版本。

4.1.1、CentOS

注意下面安装到CUDA版本都是11.8。

Linux操作系统,x86_64架构,CentOS 7,在线安装方式:(不推荐)经过测试,通过此种方式来安装会导致原来的NVIDIA显卡驱动出现问题,并且默认安装的是最新版本的CUDA。

sudo yum-config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.repo
sudo yum clean all
sudo yum -y install nvidia-driver-latest-dkms
sudo yum -y install cuda

Linux操作系统,x86_64架构,CentOS 7,本地安装方式:(推荐)经过测试,这种方式是可以正确安装CUDA的。注意:如果你已经安装了显卡驱动,那么要记得把显卡驱动的选项去掉。

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run

Linux操作系统,x86_64架构,CentOS 7,本地安装方式:这种方式没有测试过。

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-rhel7-11-8-local-11.8.0_520.61.05-1.x86_64.rpm
sudo rpm -i cuda-repo-rhel7-11-8-local-11.8.0_520.61.05-1.x86_64.rpm
sudo yum clean all
sudo yum -y install nvidia-driver-latest-dkms
sudo yum -y install cuda

4.1.2、RedHat

注意下面安装到CUDA版本都是11.8。

Linux操作系统,x86_64架构,RHEL 7,在线安装方式:(不推荐

sudo yum-config-manager --add-repo https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/cuda-rhel7.repo
sudo yum clean all
sudo yum -y install nvidia-driver-latest-dkms
sudo yum -y install cuda

Linux操作系统,x86_64架构,RHEL 7,本地安装方式:(推荐

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run

Linux操作系统,x86_64架构,RHEL 7,本地安装方式:

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-rhel7-11-8-local-11.8.0_520.61.05-1.x86_64.rpm
sudo rpm -i cuda-repo-rhel7-11-8-local-11.8.0_520.61.05-1.x86_64.rpm
sudo yum clean all
sudo yum -y install nvidia-driver-latest-dkms
sudo yum -y install cuda

4.1.3、Ubuntu

注意下面安装到CUDA版本都是11.8。

Linux操作系统,x86_64架构,Ubuntu 22.04,在线安装方式:(不推荐

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.deb
sudo dpkg -i cuda-keyring_1.0-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda

Linux操作系统,x86_64架构,Ubuntu 22.04,本地安装方式:(推荐

wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda_11.8.0_520.61.05_linux.run
sudo sh cuda_11.8.0_520.61.05_linux.run

Linux操作系统,x86_64架构,Ubuntu 22.04,本地安装方式:

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-ubuntu2204-11-8-local_11.8.0-520.61.05-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-11-8-local_11.8.0-520.61.05-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-11-8-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda

4.2、配置环境变量

  1. 编辑下面文件
vim ~/.bashrc
  1. 在文件末尾添加下面的内容
export PATH=/usr/local/cuda-11.8/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.8/lib64

如果添加失败,可能是你没有正确安装CUDA,默认是安装到/usr/local目录下,你可以去该目录找一下是否有cuda-xx.x的目录,如果没有,那么说明你没有正确安装CUDA。

  1. 最后要记得重新载入一下.bashrc文件
source ~/.bashrc
sudo ldconfig
  1. 查看CUDA版本

    如果能看到版本信息,说明已经正确安装CUDA,并且正确配置CUDA环境变量。

nvcc -V

5、安装cuDNN(可选)

  1. cuDNN对系统软硬件的要求。
image-20230525102342154
  1. cuDNN对CPU架构和系统版本的要求。
image-20230525102616237
  1. 安装cuDNN

    具体可以看官方安装指南

    先前条件:已安装NVIDIA显卡驱动,已安装CUDA。

    安装zlib

    # Ubunut
    sudo apt-get install zlib1g
    # RHEL
    sudo yum install zlib
    

    下载cuDNN

    选择下载的版本

    Download cuDNN v8.9.1 (May 5th, 2023), for CUDA 11.x
    

    选择下载对应系统的安装器

    Local Installer for Linux x86_64 (Tar) # 对所有Linux系统可用
    

    安装cuDNN

    tar -xvf cudnn-linux-x86_64-8.x.x.x_cudaX.Y-archive.tar.xz # 把8.x.x.x_cudaX.Y替换为自己下载的cuDNN版本和CUDA版本
    

    拷贝cuDNN到CUDA中

    sudo cp cudnn-*-archive/include/cudnn*.h /usr/local/cuda/include 
    sudo cp -P cudnn-*-archive/lib/libcudnn* /usr/local/cuda/lib64 
    sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
    

    具体可以查看官方说明文档

6、安装PyTorch

我这里安装的是PyTorch 2.0.1版本,CUDA 11.8。

  1. 下载PyTorch

    conda activate whisper
    pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
    
  2. 验证是否安装成功

    python
    import torch
    torch.__version__
    torch.cuda.is_available() # 如果返回 True,说明PyTorch可以使用CUDA
    

7、安装Whisper

pip install -U openai-whisper

输入下面的命令可以看到Whisper的帮助信息,说明已经安装成功。

whisper -h

8、Whisper的使用

具体可以添加哪些参数可以使用下面的命令来查看。

whisper -h

这里简单的列举一些应用。

audio.mp3使用large模型进行转录,转录的结果保存在/opt/whisper路径下,名称为audio.srt文件,使用的使用CUDA加速转录,指定语言为Chinese。我们可以省略所有的参数,默认使用small模型。

whisper audio.mp3 --model large --output_format srt --output_dir /opt/whisper --device cuda --language Chinese

最简单的写法。

whisper audio.mp3

说明:模型越大,转录的结果越准确,转录的时间越长。

Q.E.D.


热爱生活,热爱程序