6G 显存玩转 130 亿参数大模型,仅需 13 行命令,RTX2060 用户发来贺电
- 量子位
2023-05-21 18:54
Meta 的大语言模型 LLaMA 13B,现在用 2060 就能跑了~
羊驼家族的 Alpaca 和 Vicuna 也都能运行,显存最低只需要 6G,简直是低 VRAM 用户的福音有木有。
GitHub 上的搭建教程火了之后,网友们纷纷跑来问苹果 M2 是不是也能跑。
这通操作的大致原理是利用最新版 CUDA,可以将 Transformer 中任意数量的层放在 GPU 上运行。
与此前 llama.cpp 项目完全运行在 CPU 相比,用 GPU 替代一半的 CPU 可以将效率提高将近 2 倍。
而如果纯用 GPU,这一数字将变成 6 倍。
网友实测的结果中,使用 CPU 每秒能跑 2.1 个 token,而用 GPU 能跑 3.2 个。
生成的内容上,开发者成功用它跑出了“尼采文学”。
如何操作
在开始搭建之前,我们需要先申请获得 LLaMA 的访问权限。
传送门:https://ai.facebook.com/ blog / large-language-model-llama-meta-ai/
此外还需要有一个 Linux 环境。(Windows 用户可以用 WSL2)
准备工作完成之后,第一步是将 llama.cpp 克隆到本地。
1git clone https://github.com/ggerganov/llama.cpp.git2cd llama.cpp3pacman -S cuda //make sure you have CUDA installed4make LLAMA_CUBLAS=1
如果没有安装 CUDA,可以参考下面的步骤:
1wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin2sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-6003wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda-repo-wsl-ubuntu-12-1-local_12.1.1-1_64.deb4sudo dpkg -i cuda-repo-wsl-ubuntu-12-1-local_12.1.1-1_64.deb5sudo cp /var/cuda-repo-wsl-ubuntu-12-1-local/cuda-*-keyring.gpg /usr/share/keyrings/6sudo apt-get update7sudo apt-get -y install cuda
然后是建立 micromamba 环境,安装 Python 和 PyTorch 等工具。
接着需要在 micromamba 环境下安装一些包:
1export MAMBA_ROOT_PREFIX=(自定义安装路径)2eval "$(micromamba shell hook --shell=bash)"3micromamba create -n mymamba4micromamba activate mymamba5micromamba install -c conda-forge -n mymamba pytorch transformers sentencepiece
然后运行 Python 脚本以执行转换过程:
1python convert.py ~/ai/Safe-LLaMA-HF-v2\ \(4-04-23\)/llama-13b/
之后将其量化为 4bit 模式。
1./quantize ~/ai/Safe-LLaMA-HF-v2\ \(4-04-23\)/llama-13b/ggml-model-f16.bin ~/ai/Safe-LLaMA-HF-v2\ \(4-04-23\)/llama-13b/ggml-model-13b-q4_0-2023_14_5.bin q4_0 8
接着是新建一个 txt 文本文档,把提示词输入进去,然后就可以运行了。
1./main -ngl 18 -m ~/ai/Safe-LLaMA-HF-v2\ \(4-04-23\)/llama-13b/ggml-model-13b-q4_0-2023_14_5.bin -f 文档名称txt -n 2048q4_0 8
这步当中-ngl 后面的数字是可以修改的,它代表了转换层的数量。
当该值为 18 时,运行中消耗的 VRAM 为 5.5GB,根据显存的大小最高可以调至 40。
网友:AMD 不配吗
这一教程出现之后,网友们的新玩具又增加了。
“苦 OpenAI 久矣”的网友更是感觉仿佛找到了光。
这位网友就表示自己太期待在自己的设备上运行 LLM 了,宁愿花 5 千美元购置设备也不想给 OpenAI 交一分钱。
但 AMD 用户可能就不那么兴奋了,甚至透露出了嫉妒之情。
这套方法要用到 CUDA(英伟达专用),所以 AMD 是不配了吗?
那么,你期待用自己的设备跑大语言模型吗?
参考链接:
[1].https://gist.github.com/rain-1/8cc12b4b334052a21af8029aa9c4fafc
[2].https://twitter.com/_akhaliq/status/1657779996247588865
[3].https://news.ycombinator.com/item?id=35937505
本文来自微信公众号:量子位 (ID:QbitAI),作者:克雷西
广告声明:文内含有的对外跳转链接(包括不限于超链接、二维码、口令等形式),用于传递更多信息,节省甄选时间,结果仅供参考,IT之家所有文章均包含本声明。