模型概述
模型特點
模型能力
使用案例
🚀 SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF
SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF 是一個包含特定格式模型文件的項目,用於文本生成任務。它基於 Mistral 模型,支持多種量化方式,可在不同環境中運行,為文本生成提供了高效且靈活的解決方案。
🚀 快速開始
模型信息
- 模型創建者:MaziyarPanahi
- 原始模型:MaziyarPanahi/SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1
- 模型鏈接:MaziyarPanahi/SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF
模型描述
MaziyarPanahi/SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF 包含了 MaziyarPanahi/SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1 的 GGUF 格式模型文件。
✨ 主要特性
- 多量化支持:支持 2 - 8 位的量化方式,如 GGML_TYPE_Q2_K、GGML_TYPE_Q3_K 等,可根據需求選擇合適的量化級別。
- 多工具兼容:與多種客戶端和庫兼容,如 llama.cpp、text-generation-webui、KoboldCpp 等,方便在不同環境中使用。
- 多語言支持:支持英語和德語等語言,適用於不同語言場景。
📦 安裝指南
安裝依賴庫
推薦使用 huggingface-hub
Python 庫來下載模型文件:
pip3 install huggingface-hub
若要加速下載(網絡速度 1Gbit/s 或更高),可安裝 hf_transfer
:
pip3 install hf_transfer
下載模型文件
單個文件下載
使用以下命令將單個模型文件下載到當前目錄:
huggingface-cli download MaziyarPanahi/SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF.Q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
多個文件下載
使用模式匹配下載多個文件:
huggingface-cli download [MaziyarPanahi/SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF](https://huggingface.co/MaziyarPanahi/SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF) --local-dir . --local-dir-use-symlinks False --include='*Q4_K*gguf'
加速下載
設置環境變量 HF_HUB_ENABLE_HF_TRANSFER
為 1
以加速下載:
HF_HUB_ENABLE_HF_TRANSFER=1 huggingface-cli download MaziyarPanahi/SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF.Q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
Windows 命令行用戶可在下載命令前運行 set HF_HUB_ENABLE_HF_TRANSFER=1
來設置環境變量。
💻 使用示例
在 llama.cpp
中運行
確保使用的 llama.cpp
版本為 d0cee0d 或更高版本。
./main -ngl 35 -m SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF.Q4_K_M.gguf --color -c 32768 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant"
- GPU 加速設置:將
-ngl 32
更改為要卸載到 GPU 的層數。如果沒有 GPU 加速,可移除該參數。 - 序列長度設置:將
-c 32768
更改為所需的序列長度。對於擴展序列模型(如 8K、16K、32K),必要的 RoPE 縮放參數會從 GGUF 文件中讀取並由 llama.cpp 自動設置。注意,更長的序列長度需要更多資源,可能需要減小該值。 - 聊天式對話:若要進行聊天式對話,將
-p <PROMPT>
參數替換為-i -ins
。 其他參數的使用請參考 the llama.cpp documentation。
在 text-generation-webui
中運行
更多說明可在 text-generation-webui 文檔中找到:text-generation-webui/docs/04 ‐ Model Tab.md。
在 Python 代碼中運行
推薦使用 llama-cpp-python 庫來使用 GGUF 模型。
安裝包
根據系統運行以下命令之一:
# 無 GPU 加速的基礎安裝
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 中設置變量,以 NVidia CUDA 為例
$env:CMAKE_ARGS = "-DLLAMA_OPENBLAS=on"
pip install llama-cpp-python
簡單示例代碼
from llama_cpp import Llama
# 設置要卸載到 GPU 的層數。如果系統沒有 GPU 加速,設置為 0。
llm = Llama(
model_path="./SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF.Q4_K_M.gguf", # 先下載模型文件
n_ctx=32768, # 最大序列長度 - 注意,更長的序列長度需要更多資源
n_threads=8, # CPU 線程數,根據系統和性能調整
n_gpu_layers=35 # 要卸載到 GPU 的層數,如果有 GPU 加速
)
# 簡單推理示例
output = llm(
"<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant", # 提示信息
max_tokens=512, # 生成最多 512 個令牌
stop=["</s>"], # 示例停止令牌 - 不一定適用於此特定模型!使用前請檢查。
echo=True # 是否回顯提示信息
)
# 聊天完成 API
llm = Llama(model_path="./SauerkrautLM-7b-HerO-Mistral-7B-Instruct-v0.1-GGUF.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 結合的指南:
📚 詳細文檔
關於 GGUF
GGUF 是 llama.cpp 團隊在 2023 年 8 月 21 日推出的新格式,它替代了不再受 llama.cpp 支持的 GGML 格式。以下是已知支持 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:適用於 Windows 和 macOS(Silicon 和 Intel)的有吸引力且易用的基於角色的聊天 GUI,支持 GPU 加速。
- llama-cpp-python:一個支持 GPU 加速、LangChain 支持和 OpenAI 兼容 API 服務器的 Python 庫。
- candle:一個注重性能的 Rust ML 框架,包括 GPU 支持和易用性。
- ctransformers:一個支持 GPU 加速、LangChain 支持和 OpenAI 兼容 AI 服務器的 Python 庫。截至 2023 年 11 月 27 日,ctransformers 已有很長時間未更新,不支持許多最新模型。
量化方法說明
新的量化方法如下:
- 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。
📄 許可證
該模型使用 Apache-2.0 許可證。



