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 的访问权限。
此外还需要有一个 linux 环境。
准备工作完成之后,第一步是将 llama.cpp 克隆到本地。
如果没有安装 cuda,可以参考下面的步骤:
然后是建立 micromamba 环境,安装 python 和 pytorch 等工具。
接着需要在 micromamba 环境下安装一些包:
1exportmamba_root_prefix=2eval"$(micromambashellhook--shell=bash)"3micromambacreate-nmymamba4micromambaactivatemymamba5micromambainstall-cconda-forge-nmymambapytorchtransformerssentencepiece
然后运行 python 脚本以执行转换过程:
1pythonconvert.py~/ai/safe-llama-hf-v2\\/llama-13b/
之后将其量化为 4bit 模式。
1./quantize~/ai/safe-llama-hf-v2\\/llama-13b/ggml-model-f16.bin~/ai/safe-llama-hf-v2\\/llama-13b/ggml-model-13b-q4_0-2023_14_5.binq4_08
接着是新建一个 txt 文本文档,把提示词输入进去,然后就可以运行了。
1./main-ngl18-m~/ai/safe-llama-hf-v2\\/llama-13b/ggml-model-13b-q4_0-2023_14_5.bin-f文档名称txt-n2048q4_08
这步当中-ngl 后面的数字是可以修改的,它代表了转换层的数量。
当该值为 18 时,运行中消耗的 vram 为 5.5gb,根据显存的大小最高可以调至 40。
网友:amd 不配吗
这一教程出现之后,网友们的新玩具又增加了。
“苦 openai 久矣”的网友更是感觉仿佛找到了光。
这位网友就表示自己太期待在自己的设备上运行 llm 了,宁愿花 5 千美元购置设备也不想给 openai 交一分钱。
但 amd 用户可能就不那么兴奋了,甚至透露出了嫉妒之情。
这套方法要用到 cuda,所以 amd 是不配了吗?
那么,你期待用自己的设备跑大语言模型吗?
参考链接: