[App Sharing] AI时代之入坑LLaMA模型
Tofloor
poster avatar
ThinkYoung
deepin
2023-04-13 05:19
Author

参照学习了:

“机器之心”的帖子(真·ChatGPT平替:无需显卡,MacBook、树莓派就能运行LLaMA

“羊驼大法”的帖子(无需高性能GPU,在MacBook(或linux)上运行对标GPT3的LLaMA模型教程),

介绍下项目:

GitHub上的一位开发者ggerganov发布了llama.cpp项目,该项目使用了C++重写了LLaMA模型,使其能够在硬件较弱的电脑上使用支持AVX2指令集的CPU运行LLaMA模型,不需要较高的显卡需求。

*    项目地址:https://github.com/ggerganov/llama.cpp*


我鼓捣了下这个调节后的LLaMA模型,但是个英文模型,中文则稀烂,简直跑毒!

anaconda我机器的配置有点问题,直接python环境跑成功了,我硬件是集成显卡的NUC8+32G内存,跑起来7B数据(12GB)没啥问题,

命令显示内存需求在5G左右,我的机器实际运行并没有感觉到这种压力

羊驼大法:

1、安装好conda环境和C++编译环境,可以在各大搜索引擎上搜索安装办法,这里不再赘述。

2、下载llama.cpp项目的源码。运行命令

git clone https://github.com/ggerganov/llama.cpp
cd llama.cpp

3.编译代码。运行命令

make

4.根据自己的需求下载泄露的LLaMA模型文件,演示使用的是最小的7B版,下载链接如下:

For the 7B model...
aria2c --select-file 21-23,25,26 'magnet:?xt=urn:btih:b8287ebfa04f879b048d4d4404108cf3e8014352&dn=LLaMA'
https://huggingface.co/nyanko7/LLaMA-7B/tree/main
For the 13B model...
aria2c --select-file 1-4,25,26 'magnet:?xt=urn:btih:b8287ebfa04f879b048d4d4404108cf3e8014352&dn=LLaMA'
For the 30B model...
aria2c --select-file 5-10,25,26 'magnet:?xt=urn:btih:b8287ebfa04f879b048d4d4404108cf3e8014352&dn=LLaMA'
For the 65B model...
aria2c --select-file 11-20,25,26 'magnet:?xt=urn:btih:b8287ebfa04f879b048d4d4404108cf3e8014352&dn=LLaMA'And for everything...aria2c 'magnet:?xt=urn:btih:b8287ebfa04f879b048d4d4404108cf3e8014352&dn=LLaMA'

5.在llama.cpp文件夹下新建目录models,把下载好的文件按照如下结构放入models文件里

截图_2023-04-12_21-10-05.png

6.安装python虚拟环境,执行如下命令创建虚拟环境并安装依赖:

conda create -n pytorch_env python=3.10
conda activate pytorch_env
pip install torch numpy sentencepiece

7.转换模型文件为ggml FP16 format的格式,执行如下命令:

python convert-pth-to-ggml.py models/7B/ 1

执行完之后7B文件夹会多出一个ggml-model-f16.bin文件

8.转换模型为4bits的模型文件

./quantize ./models/7B/ggml-model-f16.bin ./models/7B/ggml-model-q4_0.bin 2

转换完成后7B文件夹下会出现一个ggml-model-q4_0.bin文件,这也是我们等会运行模型需要用到的文件。

9.运行模型

./main -m ./models/7B/ggml-model-q4_0.bin -t 8 -n 128 -p 'The first man on the moon was '

-n参数代表的是需要生成内容的长度,-p参数代表的是你的输入。

经过测试,7B模型生成128位token的速度挺快的,大概十多秒。LLaMA模型主要使用英文预料进行训练。我测试使用的7B模型对中文的支持不太友好,对于中文问题答非所问。

演示:
截图_2023-04-12_20-19-32.png

我发现,国产模型也相继推出了:

BELLE模型(https://github.com/LianjiaTech/BELLE),还没来得及尝试。

ChatGLM-6B模型(https://github.com/THUDM/ChatGLM-6B),受 @q77190858 大佬的推荐,已经安装使用,终于可以中文聊天啦,cpu没显卡低配没量化的话是真的卡呀,量化是必须的!!!

小伙伴们一起开车吧!!!

Reply Favorite View the author
All Replies
青稚
deepin
2023-04-13 05:39
#1

感谢分享,鼓掌👏

Reply View the author
阿尼樱奈奈
Moderator
2023-04-13 05:51
#2

like

Reply View the author
Lwh2008-Equinox
deepin
2023-04-13 06:16
#3

你的环境是MacOS ventura吗?

不过我有一个unix电脑试一试能不能成功嘻嘻

Reply View the author
ThinkYoung
deepin
2023-04-13 06:30
#4
Lwh2008-Equinox

你的环境是MacOS ventura吗?

不过我有一个unix电脑试一试能不能成功嘻嘻

羊驼大法那位贴主是Mac,我的就是Linux啊

Reply View the author
把一切操作变成GUI
deepin
Backbone of ecological co-construction group
2023-04-13 06:39
#5

这个应该可以直接下载别人训练好的中文模型拿来用的吧

Reply View the author
fuuko
deepin
2023-04-13 16:55
#6

like

建议打个docker镜像出来,这样大家白嫖更方便(bushi)

Reply View the author
ThinkYoung
deepin
2023-04-13 19:17
#7
fuuko

like

建议打个docker镜像出来,这样大家白嫖更方便(bushi)

现在这么麻烦的主要原因是:

我们用的是泄漏版的基础模型,

大家发布的都是训练diff后的差集(包括中文版,都是精修出来的),得自己手工再合并!

我想也不用多久,开源模型会越来越多的

Reply View the author
q77190858
deepin
2023-04-13 23:51
#8

我之前跑过chatGLM,可以用中文,不过至少要32G内存或者8G显存,感觉效果还不错

Reply View the author
ThinkYoung
deepin
2023-04-14 01:21
#9
q77190858

我之前跑过chatGLM,可以用中文,不过至少要32G内存或者8G显存,感觉效果还不错

太帅了奥!AI大佬,赶紧多发布点教程呀!

好玩的东东,咱们得入坑呀!

Reply View the author
q77190858
deepin
2023-04-14 05:41
#10
ThinkYoung

太帅了奥!AI大佬,赶紧多发布点教程呀!

好玩的东东,咱们得入坑呀!

Reply View the author
ThinkYoung
deepin
2023-04-14 06:38
#11

kissing_heart ,刷到骆驼模型时候,正好就看到了这个模型,正在下载模型,清华的网盘速度很快呀!

Reply View the author
New Thread

Popular Events

More
国际排名
WHLUG