模型简介
模型特点
模型能力
使用案例
🚀 SauerkrautLM Mixtral 8X7B
SauerkrautLM Mixtral 8X7B 是一款基于 Mixtral 架构的模型,支持多种语言,可用于文本生成任务。它经过了 SFT 和 DPO 微调与对齐,具有良好的性能。
🚀 快速开始
此部分文档将为你介绍 SauerkrautLM Mixtral 8X7B 模型的基本信息、使用方法及相关注意事项。
✨ 主要特性
- 多语言支持:支持英语、德语、法语、意大利语和西班牙语。
- 微调对齐:经过 SFT 和 DPO 微调与对齐,提升了模型性能。
- 多种量化格式:提供多种量化格式的文件,可根据需求选择。
📦 安装指南
下载 GGUF 文件
手动下载注意事项:几乎不需要克隆整个仓库!这里提供了多种不同的量化格式,大多数用户只需选择并下载单个文件。
以下客户端/库会自动为你下载模型,并提供可用模型列表供你选择:
- LM Studio
- LoLLMS Web UI
- Faraday.dev
在 text-generation-webui
中下载
在“Download Model”下,输入模型仓库地址:TheBloke/SauerkrautLM-Mixtral-8x7B-GGUF,然后在下方输入要下载的具体文件名,例如:sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf,最后点击“Download”。
在命令行下载(可同时下载多个文件)
推荐使用 huggingface-hub
Python 库:
pip3 install huggingface-hub
然后可以使用以下命令将任何单个模型文件高速下载到当前目录:
huggingface-cli download TheBloke/SauerkrautLM-Mixtral-8x7B-GGUF sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
更高级的 huggingface-cli 下载用法(点击查看)
也可以使用通配符同时下载多个文件:
huggingface-cli download TheBloke/SauerkrautLM-Mixtral-8x7B-GGUF --local-dir . --local-dir-use-symlinks False --include='*Q4_K*gguf'
有关使用 huggingface-cli
下载的更多文档,请参阅:HF -> Hub Python Library -> Download files -> Download from the CLI。
要在高速连接(1Gbit/s 或更高)下加速下载,请安装 hf_transfer
:
pip3 install hf_transfer
并将环境变量 HF_HUB_ENABLE_HF_TRANSFER
设置为 1
:
HF_HUB_ENABLE_HF_TRANSFER=1 huggingface-cli download TheBloke/SauerkrautLM-Mixtral-8x7B-GGUF sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
Windows 命令行用户:可以在下载命令前运行 set HF_HUB_ENABLE_HF_TRANSFER=1
来设置环境变量。
💻 使用示例
基础用法
llama.cpp
命令示例
确保使用的是 2023 年 8 月 27 日之后的 llama.cpp
版本(提交号 d0cee0d 及以后)。
./main -ngl 35 -m sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf --color -c 32768 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "<|im_start|>system\n{system_message}<|im_end|>\n<|im_start|>user\n{prompt}<|im_end|>\n<|im_start|>assistant"
-ngl 32
:将其改为要卸载到 GPU 的层数。如果没有 GPU 加速,请移除该参数。-c 32768
:改为所需的序列长度。对于扩展序列模型(如 8K、16K、32K),必要的 RoPE 缩放参数会从 GGUF 文件中读取,并由 llama.cpp 自动设置。注意,更长的序列长度需要更多资源,可能需要减小该值。
如果想进行聊天式对话,将 -p <PROMPT>
参数替换为 -i -ins
。
有关其他参数及其使用方法,请参阅 llama.cpp 文档。
在 text-generation-webui
中运行
更多说明可在 text-generation-webui 文档中找到:text-generation-webui/docs/04 ‐ Model Tab.md。
从 Python 代码运行
可以使用 llama-cpp-python 或 ctransformers 库从 Python 代码中使用 GGUF 模型。注意,截至 2023 年 11 月 27 日,ctransformers 已有一段时间未更新,可能与一些最新模型不兼容,因此推荐使用 llama-cpp-python。
安装 llama-cpp-python 包
根据系统运行以下命令之一:
# 无 GPU 加速的基础 ctransformers
pip install llama-cpp-python
# 支持 NVidia CUDA 加速
CMAKE_ARGS="-DLLAMA_CUBLAS=on" pip install llama-cpp-python
# 支持 OpenBLAS 加速
CMAKE_ARGS="-DLLAMA_BLAS=ON -DLLAMA_BLAS_VENDOR=OpenBLAS" pip install llama-cpp-python
# 支持 CLBLast 加速
CMAKE_ARGS="-DLLAMA_CLBLAST=on" pip install llama-cpp-python
# 支持 AMD ROCm GPU 加速(仅 Linux)
CMAKE_ARGS="-DLLAMA_HIPBLAS=on" pip install llama-cpp-python
# 支持 macOS 系统的 Metal GPU 加速
CMAKE_ARGS="-DLLAMA_METAL=on" pip install llama-cpp-python
# 在 Windows 的 PowerShell 中设置 CMAKE_ARGS 变量,例如对于 NVidia CUDA:
$env:CMAKE_ARGS = "-DLLAMA_OPENBLAS=on"
pip install llama-cpp-python
简单的 llama-cpp-python 示例代码
from llama_cpp import Llama
# 设置要卸载到 GPU 的层数。如果系统没有 GPU 加速,设置为 0。
llm = Llama(
model_path="./sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf", # 先下载模型文件
n_ctx=32768, # 要使用的最大序列长度 - 注意,更长的序列长度需要更多资源
n_threads=8, # 要使用的 CPU 线程数,根据系统和性能进行调整
n_gpu_layers=35 # 如果有 GPU 加速,设置要卸载到 GPU 的层数
)
# 简单推理示例
output = llm(
"<|im_start|>system\n{system_message}<|im_end|>\n<|im_start|>user\n{prompt}<|im_end|>\n<|im_start|>assistant", # 提示信息
max_tokens=512, # 生成最多 512 个令牌
stop=["</s>"], # 示例停止令牌 - 不一定适用于此特定模型!使用前请检查。
echo=True # 是否回显提示信息
)
# 聊天完成 API
llm = Llama(model_path="./sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf", chat_format="llama-2") # 根据使用的模型设置聊天格式
llm.create_chat_completion(
messages = [
{"role": "system", "content": "You are a story writing assistant."},
{
"role": "user",
"content": "Write a story about llamas."
}
]
)
高级用法
与 LangChain 结合使用
以下是使用 llama-cpp-python 和 ctransformers 与 LangChain 结合的指南:
📚 详细文档
模型信息
属性 | 详情 |
---|---|
模型创建者 | VAGO solutions |
模型名称 | SauerkrautLM Mixtral 8X7B |
模型类型 | mixtral |
管道标签 | text-generation |
基础模型 | VAGOsolutions/SauerkrautLM-Mixtral-8x7B |
训练数据集 | Open-Orca/SlimOrca、argilla/distilabel-math-preference-dpo |
推理 | false |
支持语言 | 英语、德语、法语、意大利语、西班牙语 |
库名称 | transformers |
许可证 | apache-2.0 |
量化者 | TheBloke |
标签 | mistral、finetune、sft、dpo、chatml、augmentation、german、mixtral |
提示模板
<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
可用仓库
- 用于 GPU 推理的 AWQ 模型
- 用于 GPU 推理的 GPTQ 模型,有多种量化参数选项
- 用于 CPU+GPU 推理的 2、3、4、5、6 和 8 位 GGUF 模型
- VAGO solutions 原始未量化的 fp16 格式 PyTorch 模型,用于 GPU 推理和进一步转换
兼容性
这些量化的 GGUFv2 文件与 2023 年 8 月 27 日之后的 llama.cpp 兼容(提交号 d0cee0d)。
它们也与许多第三方 UI 和库兼容 - 请参阅本 README 顶部的列表。
量化方法说明
点击查看详情
新的可用方法如下: - GGML_TYPE_Q2_K:“type-1” 2 位量化,超级块包含 16 个块,每个块有 16 个权重。块的缩放因子和最小值用 4 位量化。最终每个权重有效使用 2.5625 位(bpw)。 - GGML_TYPE_Q3_K:“type-0” 3 位量化,超级块包含 16 个块,每个块有 16 个权重。缩放因子用 6 位量化。最终使用 3.4375 bpw。 - GGML_TYPE_Q4_K:“type-1” 4 位量化,超级块包含 8 个块,每个块有 32 个权重。缩放因子和最小值用 6 位量化。最终使用 4.5 bpw。 - GGML_TYPE_Q5_K:“type-1” 5 位量化。与 GGML_TYPE_Q4_K 具有相同的超级块结构,最终使用 5.5 bpw。 - GGML_TYPE_Q6_K:“type-0” 6 位量化。超级块有 16 个块,每个块有 16 个权重。缩放因子用 8 位量化。最终使用 6.5625 bpw。请参考下面的“提供的文件”表,查看哪些文件使用了哪些方法以及如何使用。
提供的文件
名称 | 量化方法 | 位数 | 大小 | 所需最大 RAM | 使用场景 |
---|---|---|---|---|---|
sauerkrautlm-mixtral-8x7b.Q2_K.gguf | Q2_K | 2 | 15.64 GB | 18.14 GB | 最小,但质量损失明显 - 不推荐用于大多数场景 |
sauerkrautlm-mixtral-8x7b.Q3_K_M.gguf | Q3_K_M | 3 | 20.36 GB | 22.86 GB | 非常小,但质量损失高 |
sauerkrautlm-mixtral-8x7b.Q4_0.gguf | Q4_0 | 4 | 26.44 GB | 28.94 GB | 旧版;小,但质量损失非常高 - 建议使用 Q3_K_M |
sauerkrautlm-mixtral-8x7b.Q4_K_M.gguf | Q4_K_M | 4 | 26.44 GB | 28.94 GB | 中等,质量平衡 - 推荐 |
sauerkrautlm-mixtral-8x7b.Q5_0.gguf | Q5_0 | 5 | 32.23 GB | 34.73 GB | 旧版;中等,质量平衡 - 建议使用 Q4_K_M |
sauerkrautlm-mixtral-8x7b.Q5_K_M.gguf | Q5_K_M | 5 | 32.23 GB | 34.73 GB | 大,质量损失非常低 - 推荐 |
sauerkrautlm-mixtral-8x7b.Q6_K.gguf | Q6_K | 6 | 38.38 GB | 40.88 GB | 非常大,质量损失极低 |
sauerkrautlm-mixtral-8x7b.Q8_0.gguf | Q8_0 | 8 | 49.62 GB | 52.12 GB | 非常大,质量损失极低 - 不推荐 |
注意:上述 RAM 数字假设没有进行 GPU 卸载。如果将层卸载到 GPU,将减少 RAM 使用,转而使用 VRAM。
🔧 技术细节
GGUF 是 llama.cpp 团队在 2023 年 8 月 21 日引入的一种新格式,它是 GGML 的替代品,而 GGML 已不再被 llama.cpp 支持。
以下是已知支持 GGUF 的客户端和库的不完全列表:
- llama.cpp:GGUF 的源项目,提供 CLI 和服务器选项。
- text-generation-webui:最广泛使用的 Web UI,具有许多功能和强大的扩展,支持 GPU 加速。
- KoboldCpp:功能齐全的 Web UI,支持所有平台和 GPU 架构的 GPU 加速,特别适合讲故事。
- GPT4All:免费开源的本地运行 GUI,支持 Windows、Linux 和 macOS,具有全 GPU 加速。
- LM Studio:适用于 Windows 和 macOS(Silicon)的易用且强大的本地 GUI,支持 GPU 加速。截至 2023 年 11 月 27 日,Linux 版本处于测试阶段。
- LoLLMS Web UI:一个很棒的 Web UI,具有许多有趣和独特的功能,包括一个完整的模型库,便于选择模型。
- Faraday.dev:一个有吸引力且易用的基于角色的聊天 GUI,适用于 Windows 和 macOS(Silicon 和 Intel),支持 GPU 加速。
- llama-cpp-python:一个支持 GPU 加速、LangChain 支持和 OpenAI 兼容 API 服务器的 Python 库。
- candle:一个专注于性能的 Rust ML 框架,包括 GPU 支持,且易于使用。
- ctransformers:一个支持 GPU 加速、LangChain 支持和 OpenAI 兼容 AI 服务器的 Python 库。注意,截至 2023 年 11 月 27 日,ctransformers 已有一段时间未更新,不支持许多最新模型。
📄 许可证
本模型使用 apache-2.0 许可证。
其他信息
Discord
如需进一步支持,以及讨论这些模型和人工智能相关话题,请加入:TheBloke AI 的 Discord 服务器
致谢与贡献方式
感谢 chirper.ai 团队!感谢来自 gpus.llm-utils.org 的 Clay!
有很多人询问是否可以进行贡献。我很乐意提供模型并帮助大家,也希望能有更多时间做这些事,以及开展新的项目,如微调/训练。
如果你有能力且愿意贡献,将不胜感激,这将帮助我继续提供更多模型,并开展新的人工智能项目。
捐赠者将在所有 AI/LLM/模型问题和请求上获得优先支持,访问私人 Discord 房间,以及其他福利。
- Patreon:https://patreon.com/TheBlokeAI
- Ko-Fi:https://ko-fi.com/TheBlokeAI
特别感谢:Aemon Algiz。
Patreon 特别提及:Michael Levine、阿明、Trailburnt、Nikolai Manek、John Detwiler、Randy H、Will Dee、Sebastain Graf、NimbleBox.ai、Eugene Pentland、Emad Mostaque、Ai Maven、Jim Angel、Jeff Scroggin、Michael Davis、Manuel Alberto Morcote、Stephen Murray、Robert、Justin Joy、Luke @flexchar、Brandon Frisco、Elijah Stavena、S_X、Dan Guido、Undi.、Komninos Chatzipapas、Shadi、theTransient、Lone Striker、Raven Klaugh、jjj、Cap'n Zoog、Michel-Marie MAUDET (LINAGORA)、Matthew Berman、David、Fen Risland、Omer Bin Jawed、Luke Pendergrass、Kalila、OG、Erik Bjäreholt、Rooh Singh、Joseph William Delisle、Dan Lewis、TL、John Villwock、AzureBlack、Brad、Pedro Madruga、Caitlyn Gatomon、K、jinyuan sun、Mano Prime、Alex、Jeffrey Morgan、Alicia Loh、Illia Dulskyi、Chadd、transmissions 11、fincy、Rainer Wilmers、ReadyPlayerEmma、knownsqashed、Mandus、biorpg、Deo Leter、Brandon Phillips、SuperWojo、Sean Connelly、Iucharbius、Jack West、Harry Royden McLaughlin、Nicholas、terasurfer、Vitor Caleffi、Duane Dunston、Johann-Peter Hartmann、David Ziegler、Olakabola、Ken Nordquist、Trenton Dambrowitz、Tom X Nguyen、Vadim、Ajan Kanaga、Leonard Tan、Clay Pascal、Alexandros Triantafyllidis、JM33133、Xule、vamX、ya boyyy、subjectnull、Talal Aujan、Alps Aficionado、wassieverse、Ari Malik、James Bentley、Woland、Spencer Kim、Michael Dempsey、Fred von Graf、Elle、zynix、William Richards、Stanislav Ovsiannikov、Edmond Seymore、Jonathan Leane、Martin Kemka、usrbinkat、Enrico Ros
感谢所有慷慨的赞助者和捐赠者!再次感谢 a16z 的慷慨资助。



