QLoRA微调后的Llama3模型在本地运行

简介

首先使用Llama-3-1-8B作为例子进行解析。如何Llama-3-1-8B想要在本地电脑运行,那么它需要多少GPU才能完美的运行起来了,大约需要19.2G的GPU才能运行。那么我们的机子最好是4090,哎。。。。。。。
这成本太高了,普通人是无法承受的。

因为很多人看到大模型运行成本这么高,所有都在想使用什么方式降低成本,又能达到接近的效果。参数高效微调后的大模型就是此产物,参数高效微调相关知识可以看我之前写的文章。

今天这篇文章目的不是讲解大模型的知识,今天的内容是怎么在自己的电脑上运行Llama-3-1-8B大模型。
例子中的模型是自己通过4bit量化训练的模型,可以在8G的以下的机子上可以运行。

这里插入一个如何计算大模型运行是需要消耗多少资源。
1)估算公式(该公式来自于Sam Stoelinga简化[1])
在这里插入图片描述

符号描述
M用千兆字节 (GB) 表示的 GPU 内存
P模型中的参数数量。例如,一个 7B 模型有 7 亿参数。
4B4 字节,即每个参数使用的字节数
324 字节中有 32 位
Q加载模型时应使用的位数,例如 16 位、8 位或 4 位。
1.2表示在 GPU 内存中加载额外内容的 20% 开销。

注意:该公式只是为了简化计算的估计,并未包含kvcache所需显存以及context大小的影响。

下面以运行16位精度的 Llama 70B 模型所需的 GPU 内存为例套用公式:

该模型有 700 亿参数。

M = (70 ∗ 4) / (32 / 16) ∗ 1.2 ≈ 168GB

由此可见,模型所需的 GPU 内存相当大。单个 80GB 的 A100 GPU 不足以满足需求,需要多个A100 GPU才能跑的起来。

运行模型

安装依赖

pip install transformers
pip install streamlit
pip install torch
pip install modelscope

下载模型

进入modelscope的https://modelscope.cn/models/ty200509/Llama-3.1-8B-bnb-4bit下载模型
也可以使用一下方式下载:

from modelscope import snapshot_download
model_dir = snapshot_download("ty200509/Llama-3.1-8B-bnb-4bit",cache_dir="下载模型到本地路径")
下载代码

代码地址:https://github.com/tangyi2005/Llama_chatbot.git
使用命令进来Llama_chatbot项目的llama_chat.py
执行以下命令:

# streamlit run llama_chat.py所在文件的路径如:D:\XXXX\XXXX --server.address 127.0.0.1 --server.port 6006

运行后的效果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值