模型简介
模型特点
模型能力
使用案例
🚀 Saiga Mistral 7B - GPTQ
Saiga Mistral 7B - GPTQ 是经过量化处理的模型,提供了多种 GPTQ 参数组合,适用于不同硬件和需求。该模型可在多个推理服务器和 Web UI 中使用,方便用户进行文本生成等任务。
🚀 快速开始
下载模型
在 text-generation-webui 中下载
请确保使用 text-generation-webui 的最新版本。强烈建议使用 text-generation-webui 的一键安装程序,除非你确定知道如何手动安装。
- 点击 模型 选项卡。
- 在 下载自定义模型或 LoRA 下,输入
TheBloke/saiga_mistral_7b-GPTQ
。- 若要从特定分支下载,例如输入
TheBloke/saiga_mistral_7b-GPTQ:gptq-4bit-32g-actorder_True
。 - 请参考下面的 提供的文件和 GPTQ 参数 部分获取各选项的分支列表。
- 若要从特定分支下载,例如输入
- 点击 下载。
- 模型将开始下载,完成后会显示“已完成”。
- 在左上角,点击 模型 旁边的刷新图标。
- 在 模型 下拉菜单中,选择你刚刚下载的模型:
saiga_mistral_7b-GPTQ
。 - 模型将自动加载,现在可以使用了!
- 如果你需要自定义设置,设置完成后点击右上角的 保存此模型的设置,然后点击 重新加载模型。
- 注意,你不再需要也不应该手动设置 GPTQ 参数,这些参数会从
quantize_config.json
文件中自动设置。
- 注意,你不再需要也不应该手动设置 GPTQ 参数,这些参数会从
- 准备好后,点击 文本生成 选项卡并输入提示词即可开始!
从命令行下载
建议使用 huggingface-hub
Python 库:
pip3 install huggingface-hub
将 main
分支下载到名为 saiga_mistral_7b-GPTQ
的文件夹中:
mkdir saiga_mistral_7b-GPTQ
huggingface-cli download TheBloke/saiga_mistral_7b-GPTQ --local-dir saiga_mistral_7b-GPTQ --local-dir-use-symlinks False
若要从不同分支下载,添加 --revision
参数:
mkdir saiga_mistral_7b-GPTQ
huggingface-cli download TheBloke/saiga_mistral_7b-GPTQ --revision gptq-4bit-32g-actorder_True --local-dir saiga_mistral_7b-GPTQ --local-dir-use-symlinks False
使用 git
下载(不推荐)
使用 git
克隆特定分支,可使用如下命令:
git clone --single-branch --branch gptq-4bit-32g-actorder_True https://huggingface.co/TheBloke/saiga_mistral_7b-GPTQ
请注意,强烈不建议对 HF 仓库使用 Git,它比使用 huggingface-hub
慢得多,并且会占用两倍的磁盘空间,因为它必须将模型文件存储两次(一次存储在目标文件夹中,另一次作为 blob 存储在 .git
文件夹中)。
使用模型
从 Text Generation Inference (TGI) 服务模型
建议使用 TGI 版本 1.1.0 或更高版本,官方 Docker 容器为:ghcr.io/huggingface/text-generation-inference:1.1.0
。
示例 Docker 参数:
--model-id TheBloke/saiga_mistral_7b-GPTQ --port 3000 --quantize gptq --max-input-length 3696 --max-total-tokens 4096 --max-batch-prefill-tokens 4096
与 TGI 交互的示例 Python 代码(需要 huggingface-hub 0.17.0 或更高版本):
from huggingface_hub import InferenceClient
endpoint_url = "https://your-endpoint-url-here"
prompt = "Tell me about AI"
prompt_template=f'''<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
'''
client = InferenceClient(endpoint_url)
response = client.text_generation(prompt,
max_new_tokens=128,
do_sample=True,
temperature=0.7,
top_p=0.95,
top_k=40,
repetition_penalty=1.1)
print(f"Model output: {response}")
Python 代码示例:从该 GPTQ 模型进行推理
安装必要的包
需要:Transformers 4.33.0 或更高版本、Optimum 1.12.0 或更高版本以及 AutoGPTQ 0.4.2 或更高版本。
pip3 install --upgrade transformers optimum
# 如果使用 PyTorch 2.1 + CUDA 12.x:
pip3 install --upgrade auto-gptq
# 或者,如果使用 PyTorch 2.1 + CUDA 11.x:
pip3 install --upgrade auto-gptq --extra-index-url https://huggingface.github.io/autogptq-index/whl/cu118/
如果你使用的是 PyTorch 2.0,则需要从源代码安装 AutoGPTQ。同样,如果你在使用预构建的轮子时遇到问题,也应该尝试从源代码构建:
pip3 uninstall -y auto-gptq
git clone https://github.com/PanQiWei/AutoGPTQ
cd AutoGPTQ
git checkout v0.5.1
pip3 install .
示例 Python 代码
from transformers import AutoModelForCausalLM, AutoTokenizer, pipeline
model_name_or_path = "TheBloke/saiga_mistral_7b-GPTQ"
# 若要使用不同的分支,更改 revision
# 例如: revision="gptq-4bit-32g-actorder_True"
model = AutoModelForCausalLM.from_pretrained(model_name_or_path,
device_map="auto",
trust_remote_code=False,
revision="main")
tokenizer = AutoTokenizer.from_pretrained(model_name_or_path, use_fast=True)
prompt = "Tell me about AI"
prompt_template=f'''<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
'''
print("\n\n*** Generate:")
input_ids = tokenizer(prompt_template, return_tensors='pt').input_ids.cuda()
output = model.generate(inputs=input_ids, temperature=0.7, do_sample=True, top_p=0.95, top_k=40, max_new_tokens=512)
print(tokenizer.decode(output[0]))
# 也可以使用 transformers 的 pipeline 进行推理
print("*** Pipeline:")
pipe = pipeline(
"text-generation",
model=model,
tokenizer=tokenizer,
max_new_tokens=512,
do_sample=True,
temperature=0.7,
top_p=0.95,
top_k=40,
repetition_penalty=1.1
)
print(pipe(prompt_template)[0]['generated_text'])
✨ 主要特性
- 提供多种 GPTQ 参数组合,可根据硬件和需求选择最佳参数。
- 支持在多个推理服务器和 Web UI 中使用,方便用户进行文本生成任务。
- 经过量化处理,可减少显存使用。
📦 安装指南
安装依赖库
pip3 install huggingface-hub
pip3 install --upgrade transformers optimum
# 如果使用 PyTorch 2.1 + CUDA 12.x:
pip3 install --upgrade auto-gptq
# 或者,如果使用 PyTorch 2.1 + CUDA 11.x:
pip3 install --upgrade auto-gptq --extra-index-url https://huggingface.github.io/autogptq-index/whl/cu118/
若使用 PyTorch 2.0 或预构建轮子有问题,从源代码安装 AutoGPTQ:
pip3 uninstall -y auto-gptq
git clone https://github.com/PanQiWei/AutoGPTQ
cd AutoGPTQ
git checkout v0.5.1
pip3 install .
📚 详细文档
模型信息
属性 | 详情 |
---|---|
模型创建者 | Ilya Gusev |
原始模型 | Saiga Mistral 7B |
模型类型 | mistral |
量化者 | TheBloke |
可用的仓库
- 用于 GPU 推理的 AWQ 模型
- 用于 GPU 推理的 GPTQ 模型,有多种量化参数选项
- 用于 CPU+GPU 推理的 2、3、4、5、6 和 8 位 GGUF 模型
- Ilya Gusev 原始的未量化 fp16 模型(pytorch 格式),用于 GPU 推理和进一步转换
提示词模板:ChatML
<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
已知兼容的客户端/服务器
这些 GPTQ 模型已知可在以下推理服务器/Web UI 中工作:
这可能不是完整列表,如果你知道其他兼容的客户端/服务器,请告知!
提供的文件和 GPTQ 参数
提供了多种量化参数,以便你根据硬件和需求选择最佳参数。 每个单独的量化版本位于不同的分支中,有关从不同分支获取文件的说明,请参见下文。 大多数 GPTQ 文件使用 AutoGPTQ 制作,Mistral 模型目前使用 Transformers 制作。
GPTQ 参数说明
- 位:量化模型的位大小。
- GS:GPTQ 组大小。较高的数字使用较少的显存,但量化精度较低。“None” 是最低可能值。
- Act Order:真或假。也称为
desc_act
。真会导致更好的量化精度。一些 GPTQ 客户端在使用 Act Order 加组大小的模型时遇到过问题,但现在这个问题通常已解决。 - Damp %:一个影响量化样本处理方式的 GPTQ 参数。默认值为 0.01,但 0.1 会导致稍高的精度。
- GPTQ 数据集:量化期间使用的校准数据集。使用更适合模型训练的数据集可以提高量化精度。请注意,GPTQ 校准数据集与用于训练模型的数据集不同 - 请参考原始模型仓库获取训练数据集的详细信息。
- 序列长度:量化时使用的数据集序列长度。理想情况下,这与模型序列长度相同。对于一些非常长序列的模型(16K+),可能需要使用较低的序列长度。请注意,较低的序列长度不会限制量化模型的序列长度,它仅影响较长推理序列的量化精度。
- ExLlama 兼容性:该文件是否可以使用 ExLlama 加载,目前 ExLlama 仅支持 4 位的 Llama 和 Mistral 模型。
分支 | 位 | GS | Act Order | Damp % | GPTQ 数据集 | 序列长度 | 大小 | ExLlama | 描述 |
---|---|---|---|---|---|---|---|---|---|
main | 4 | 128 | 是 | 0.1 | Russian Instructions 2 | 4096 | 4.16 GB | 是 | 4 位,带有 Act Order 和组大小 128g。比 64g 使用更少的显存,但精度稍低。 |
gptq-4bit-32g-actorder_True | 4 | 32 | 是 | 0.1 | Russian Instructions 2 | 4096 | 4.57 GB | 是 | 4 位,带有 Act Order 和组大小 32g。提供最高的推理质量,但显存使用量最大。 |
gptq-8bit--1g-actorder_True | 8 | 无 | 是 | 0.1 | Russian Instructions 2 | 4096 | 7.52 GB | 否 | 8 位,带有 Act Order。无组大小,以降低显存需求。 |
gptq-8bit-128g-actorder_True | 8 | 128 | 是 | 0.1 | Russian Instructions 2 | 4096 | 7.68 GB | 否 | 8 位,组大小 128g 以提高推理质量,带有 Act Order 以获得更高的精度。 |
gptq-8bit-32g-actorder_True | 8 | 32 | 是 | 0.1 | Russian Instructions 2 | 4096 | 8.17 GB | 否 | 8 位,组大小 32g 和 Act Order 以获得最大的推理质量。 |
gptq-4bit-64g-actorder_True | 4 | 64 | 是 | 0.1 | Russian Instructions 2 | 4096 | 4.30 GB | 是 | 4 位,带有 Act Order 和组大小 64g。比 32g 使用更少的显存,但精度稍低。 |
兼容性
提供的文件经测试可与 Transformers 一起使用。对于非 Mistral 模型,也可以直接使用 AutoGPTQ。 ExLlama 与 4 位的 Llama 和 Mistral 模型兼容。请参阅上面的 提供的文件 表了解每个文件的兼容性。
🔧 技术细节
这些文件使用 Massed Compute 慷慨提供的硬件进行量化。
📄 许可证
文档中未提及相关许可证信息。
Discord
如需进一步支持,以及讨论这些模型和人工智能相关内容,请加入: TheBloke AI 的 Discord 服务器
感谢与贡献方式
感谢 chirper.ai 团队! 感谢 gpus.llm-utils.org 的 Clay!
很多人询问是否可以进行贡献。我喜欢提供模型并帮助他人,也希望能够花更多时间做这些事情,同时开展新的项目,如微调/训练。
如果你有能力且愿意贡献,我将非常感激,这将帮助我继续提供更多模型,并开展新的人工智能项目。
捐赠者将在任何与人工智能/大语言模型/模型相关的问题和请求上获得优先支持,还可访问私人 Discord 房间以及享受其他福利。
- Patreon: https://patreon.com/TheBlokeAI
- Ko-Fi: https://ko-fi.com/TheBlokeAI
特别感谢:Aemon Algiz。
Patreon 特别提及:Brandon Frisco, LangChain4j, Spiking Neurons AB, transmissions 11, Joseph William Delisle, Nitin Borwankar, Willem Michiel, Michael Dempsey, vamX, Jeffrey Morgan, zynix, jjj, Omer Bin Jawed, Sean Connelly, jinyuan sun, Jeromy Smith, Shadi, Pawan Osman, Chadd, Elijah Stavena, Illia Dulskyi, Sebastain Graf, Stephen Murray, terasurfer, Edmond Seymore, Celu Ramasamy, Mandus, Alex, biorpg, Ajan Kanaga, Clay Pascal, Raven Klaugh, 阿明, K, ya boyyy, usrbinkat, Alicia Loh, John Villwock, ReadyPlayerEmma, Chris Smitley, Cap'n Zoog, fincy, GodLy, S_X, sidney chen, Cory Kujawski, OG, Mano Prime, AzureBlack, Pieter, Kalila, Spencer Kim, Tom X Nguyen, Stanislav Ovsiannikov, Michael Levine, Andrey, Trailburnt, Vadim, Enrico Ros, Talal Aujan, Brandon Phillips, Jack West, Eugene Pentland, Michael Davis, Will Dee, webtim, Jonathan Leane, Alps Aficionado, Rooh Singh, Tiffany J. Kim, theTransient, Luke @flexchar, Elle, Caitlyn Gatomon, Ari Malik, subjectnull, Johann-Peter Hartmann, Trenton Dambrowitz, Imad Khwaja, Asp the Wyvern, Emad Mostaque, Rainer Wilmers, Alexandros Triantafyllidis, Nicholas, Pedro Madruga, SuperWojo, Harry Royden McLaughlin, James Bentley, Olakabola, David Ziegler, Ai Maven, Jeff Scroggin, Nikolai Manek, Deo Leter, Matthew Berman, Fen Risland, Ken Nordquist, Manuel Alberto Morcote, Luke Pendergrass, TL, Fred von Graf, Randy H, Dan Guido, NimbleBox.ai, Vitor Caleffi, Gabriel Tamborski, knownsqashed, Lone Striker, Erik Bjäreholt, John Detwiler, Leonard Tan, Iucharbius
感谢所有慷慨的赞助者和捐赠者! 再次感谢 a16z 的慷慨资助。



