【记录】LLM本地部署尝试

目录

 


部署时间:2024 年 5 月 10 日

update(2024 年 7 月 15 日):这几天刚刚了解到 cuda 环境已经被封装在 pytorch 包的二进制文件里面了... 所以疑似是不需要装 CUDA的(没实测)

回到顶部

环境

  • 英伟达显卡(显存大小,在 windows11 上部署的话,8G 勉强能跑,16G 应该才能正常跑)

  • Windows11

回到顶部

下载开源 LLM:ChatGLM3

下载代码,通过 VSCode 打开ChatGLM3文件夹,作为工作目录

下载模型,大概十几 G,记录下保存的目录,形如X:\xxx\xxx\xxx\chatglm3-6b

另一篇参考流程

回到顶部

安装 miniconda

官网

将会在虚拟环境中配置所需的 Python 环境

回到顶部

安装 CUDA

  • 首先通过命令 nvidia-smi 查看显卡支持的 CUDA 最高版本

  • 然后在pytorch 官网查看你想安装的 pytorch 版本对应的 CUDA 版本

  • 官网安装 CUDA ,根据我的环境与任务,我选择的是 CUDA12.1 疑似无需安装

随便百度一篇可以参考

回到顶部

配置 python 环境

首先,可以在开始菜单中找到 miniconda(安装的时候默认勾选了),打开 miniconda 的终端,依次运行以下代码

conda create -n GPT python=3.11 -y

activate GPT

activate GPT

conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=12.1 -c pytorch -c nvidia

然后可以关闭这个终端了。

接下来切到 VSCode,将 VSCode 的 Python 解释器选成 GPT 环境中的解释器。(此步应有图片,有空再补)

在 VScode 中直接新建终端,就默认是在虚拟环境GPT中的终端,在这个终端运行命令

pip install -r requirements.txt

环境就配置完成了。

最后,可以运行 ChatGLM3\ 中的各种应用 demo 做测试,代码中的MODEL_PATH都要修改为 LLM 的模型保存目录,例如可以这样改 MODEL_PATH=X:\\xxx\\xxx\\xxx\\chatglm3-6b

关于代码怎么写怎么用,查阅源代码提供的各个文档,或者上官网

回到顶部

个人 PC 部署体验

我的渣机配置是 12600KF+16G 内存 +RTX4060(8G 显存),用 4-bit 量化部署,GPU 使用率和显存直接跑满,共享显存使用 5G+,运行对话功能的 demo 时,一次对话视情况不同需要 1 分钟 ~ 数分钟不等,挺慢的

(update 2024.7.15)推测跑得慢的原因:显存不够用的情况下,系统用内存充当“共享显存”,性能瓶颈在于,数据通过主板上的 PCIE4.0 接口在内存和显卡之间的交互效率实在太低,因此跑大模型一定要用显存足够的显卡

语言性能方面,输出质量还达不到可用的水准

如果真正用 LLM 参与实践,并且需要自己部署的话,最好用有专业显卡的服务器(足够大显存 + 没有 GUI 界面渲染对显存的占用),部署更多参数的模型(7B 肯定是不能用的)