选择哪种量化方法适合您?(GPTQ vs. GGUF vs. AWQ)


探索预量化的大型语言模型

文章翻译:Maarten Grootendorst Which Quantization Method is Right for You? (GPTQ vs. GGUF vs. AWQ)

在过去的一年中,我们见证了大型语言模型(LLM)的狂野西部。发布新技术和模型的速度令人惊叹!因此,我们有许多不同的标准和处理LLM的方式。

在本文中,我们将探讨一个话题,即通过几种(量化)标准加载本地LLM。通过分片、量化和不同的保存和压缩策略,很难知道哪种方法适合您。

在示例中,我们将使用Zephyr 7B,这是一个经过Direct Preference Optimization(DPO)训练的Mistral 7B的精调变体。

🔥 提示:在加载LLM的每个示例之后,建议重新启动您的笔记本以防止内存不足错误。加载多个LLM需要大量的RAM/VRAM。您可以通过删除模型并重置缓存来重置内存,如下所示:

# 删除之前创建的任何模型
del model, tokenizer, pipe

# 清空VRAM缓存
import torch
torch.cuda.empty_cache()

您还可以使用Google Colab Notebook跟随操作,以确保一切正常。 https://colab.research.google.com/drive/1rt318Ew-5dDw21YZx2zK2vnxbsuDAchH?usp=sharing

1. HuggingFace

加载LLM的最简单、最基本的方法是通过🤗 Transformers。HuggingFace创建了一套大型的软件包,使我们能够在LLM上做出惊人的事情!

我们将从其主分支安装HuggingFace,以支持更新的模型:

# 用于类似Mistral的最新HF transformers版本
pip install git+https://github.com/huggingface/transformers.git
pip install accelerate bitsandbytes xformers

安装完成后,我们可以使用以下流水线轻松加载LLM:

from torch import bfloat16
from transformers import pipeline

# 加载未经任何压缩技巧的LLM
pipe = pipeline(
    "text-generation", 
    model="HuggingFaceH4/zephyr-7b-beta", 
    torch_dtype=bfloat16, 
    device_map="auto"
)

这种加载LLM的方法通常不会执行任何压缩技巧,以节省VRAM或提高效率。

为了生成我们的提示,我们首先需要创建必要的模板。幸运的是,如果聊天模板保存在底层的分词器中,这可以自动完成:

# 我们使用分词器的聊天模板来格式化每条消息
# 请参阅https://huggingface.co/docs/transformers/main/en/chat_templating
messages = [
    {
   
   
        "role": "system",
        "content": "You are a friendly chatbot.",
    },
    {
   
   
        "role": "user", 
        "content": "Tell me a funny joke about Large Language Models."
    },
]
prompt = pipe.tokenizer.apply_chat_template(
    messages, 
    tokenize=False, 
    add_generation_prompt=True
)

使用内部提示模板生成的提示如下所示:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

提示模板是使用内部提示模板自动生成的。请注意,有不同的标签来区分用户和助手。

然后,我们可以将提示传递给LLM以生成我们的答案:

outputs = pipe(
    prompt
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数智笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值