AlmaLinux(Unraid VM) 使用 AMD GPU 安装部署 MLC LLM

0
(0)

前言

MLC LLM 是近期最新开源的大语言模型,需求算力较低,号称甚至可以手机原生本地运行。大多数消费级显卡自然也能顺畅运行起来,那么就让我们尝试在 NAS 上快速部署并亲自测试一下吧。

根据项目部署说明,部署前,我们需要先准备好 Conda 环境及 Vulkan 驱动。

创建 VM 并直通显卡

如果读者基于其他系统平台进行部署,可跳过本节

首先,准备好 AlmaLinux 9.1 系统镜像(可以在 这里 寻找一个合适的下载点),在 Unraid 中如下创建虚拟机,将你的 GPU 设置为第二显卡。这里笔者保险起见,分配了 15G 内存,读者可以根据实际需要自行调整。虚拟机创建后,直接连接 VNC 安装系统即可,建议直接选择最小安装。

需要注意的是,Unraid 直通显卡前,需先在「工具-系统设备」处勾选,然后点击下方的「在引导时绑定」按钮,重新启动机器后再进行配置。

安装 AMD GPU 驱动

系统安装完成后,首先更新一遍所有软件包:

dnf update

然后,安装需要用到的软件包和依赖:

dnf install epel-release pciutils wget tar nano mlocate qt5 xinput libXinerama

执行以下命令检查是否已检测到直通的 GPU:

lspci | grep -i vga

看到你的显卡后,到 AMD 官网 (https://www.amd.com/en/support/linux-drivers) 找到适合你系统的最新 Linux 驱动下载链接。AlmaLinux 等红帽系系统选择「for RHEL」,在本例中,笔者选择「for RHEL 9.1」的驱动,复制下载链接,执行以下命令将它下载到 /opt 目录:

cd /opt && wget -c https://repo.radeon.com/amdgpu-install/22.40.3/rhel/9.1/amdgpu-install-5.4.50403-1.el9.noarch.rpm

下载完成后,执行安装:

dnf install ./amdgpu-install-5.4.50403-1.el9.noarch.rpm && dnf update

然后,执行以下指令安装驱动(有关 amdvlk 和 pro 的区别,可以参考 AMD 的文档,保险起见,可以两个都安装好):

amdgpu-install --vulkan=amdvlk,pro --accept-eula

如果遇到 404 错误提示 Cannot download repomd.xml: Cannot download repodata/repomd.xml: All mirrors were tried,请编辑 /etc/yum.repos.d/amdgpu-proprietary.repo 文件,将 baseurl 中的 5.4 改为 5.4.3,重新执行安装即可。

安装 Vulkan SDK

到 Vulkan 官网 (https://vulkan.lunarg.com/sdk/home) 右侧的 Linux SDK Installer 处找到最新的 SDK 下载链接,执行以下命令,将其下载至 /opt/vulkan:

cd /opt && mkdir vulkan && cd vulkan && wget -c https://sdk.lunarg.com/sdk/download/1.3.243.0/linux/vulkansdk-linux-x86_64-1.3.243.0.tar.gz

下载完成后,解压:

tar xf vulkansdk-linux-x86_64-1.3.243.0.tar.gz

然后设置好相关环境变量:

source /opt/vulkan/1.3.243.0/setup-env.sh && echo "source /opt/vulkan/1.3.243.0/setup-env.sh" >> ~/.bash_profile

完成后,可以执行 vulkaninfo 验证安装。

安装 Miniconda

到 Miniconda 文档页 (https://docs.conda.io/en/latest/miniconda.html) 找到适合平台环境的最新下载链接,执行以下命令,将其下载至 /opt:

cd /opt && wget -c https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

执行以下命令运行安装脚本:

bash Miniconda3-latest-Linux-x86_64.sh

安装成功后,重新连接 SSH 或重新登录即可自动进入到 Conda 的 base 环境(如果不希望登录时自动进入 Conda 环境,执行 conda config –set auto_activate_base false),执行以下命令,创建一个新的环境用于部署MLC LLM:

conda create -n mlc-chat

随后激活 Conda 环境:

conda activate mlc-chat

安装 Git 用于拉取模型:

conda install git git-lfs

安装 Chat CLI app:

conda install -c mlc-ai -c conda-forge mlc-chat-nightly

下载模型:

cd /opt && mkdir -p dist
git lfs install
git clone https://huggingface.co/mlc-ai/demo-vicuna-v1-7b-int3 dist/vicuna-v1-7b
git clone https://github.com/mlc-ai/binary-mlc-llm-libs.git dist/lib

开始对话

完成后,执行以下指令即可开始对话:

mlc_chat_cli

参考资料

[1] https://github.com/mlc-ai/mlc-llm
[2] https://mlc.ai/mlc-llm/
[3] https://amdgpu-install.readthedocs.io/en/latest/install-script.html
[4] https://vulkan.lunarg.com/doc/sdk/1.3.243.0/linux/getting_started.html
[5] https://conda.io/projects/conda/en/stable/user-guide/install/linux.html

这篇文章有用吗?

点击星号为它评分!

平均评分 0 / 5. 投票数: 0

到目前为止还没有投票!成为第一位评论此文章。

很抱歉,这篇文章对您没有用!

让我们改善这篇文章!

告诉我们我们如何改善这篇文章?

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注