模型简介
模型特点
模型能力
使用案例
🚀 qCammel 70 - GGUF
qCammel 70 - GGUF 是基于augtoma的qCammel 70模型转换为GGUF格式的模型文件,支持多种量化方法,适用于不同的使用场景,可在多种客户端和库中使用。
🚀 快速开始
下载GGUF文件
- 自动下载:LM Studio、LoLLMS Web UI、Faraday.dev 等客户端/库会自动提供可用模型列表供你选择下载。
- 在
text-generation-webui
中下载:在“Download Model”下输入模型仓库地址TheBloke/qCammel-70-x-GGUF
,并指定要下载的文件名,如qcammel-70-x.q4_K_M.gguf
,然后点击“Download”。 - 命令行下载:推荐使用
huggingface-hub
Python 库。pip3 install huggingface-hub>=0.17.1 huggingface-cli download TheBloke/qCammel-70-x-GGUF qcammel-70-x.q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
运行模型
llama.cpp
命令示例
确保使用的是 d0cee0d36d5be95a0d9088b674dbb27354107221 或更新版本的 llama.cpp
。
./main -ngl 32 -m qcammel-70-x.q4_K_M.gguf --color -c 4096 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions. USER: {prompt} ASSISTANT:"
-ngl 32
:指定要卸载到 GPU 的层数,若没有 GPU 加速可移除该参数。-c 4096
:指定所需的序列长度。
在 text-generation-webui
中运行
更多说明请参考 text-generation-webui/docs/llama.cpp.md。
从 Python 代码运行
可以使用 llama-cpp-python 或 ctransformers 库从 Python 中使用 GGUF 模型。
from ctransformers import AutoModelForCausalLM
# Set gpu_layers to the number of layers to offload to GPU. Set to 0 if no GPU acceleration is available on your system.
llm = AutoModelForCausalLM.from_pretrained("TheBloke/qCammel-70-x-GGUF", model_file="qcammel-70-x.q4_K_M.gguf", model_type="llama", gpu_layers=50)
print(llm("AI is going to"))
✨ 主要特性
- 支持多种量化方法:提供了 Q2_K、Q3_K_S、Q3_K_M 等多种量化方法的文件,可根据不同的使用场景和需求进行选择。
- 广泛的兼容性:与 llama.cpp 及众多第三方 UI 和库兼容,如 text-generation-webui、KoboldCpp 等。
- 易于使用:可通过多种方式下载和运行,支持从 Python 代码调用。
📦 安装指南
安装依赖库
下载 GGUF 文件所需依赖
pip3 install huggingface-hub>=0.17.1
使用 ctransformers 库所需依赖
# Base ctransformers with no GPU acceleration
pip install ctransformers>=0.2.24
# Or with CUDA GPU acceleration
pip install ctransformers[cuda]>=0.2.24
# Or with ROCm GPU acceleration
CT_HIPBLAS=1 pip install ctransformers>=0.2.24 --no-binary ctransformers
# Or with Metal GPU acceleration for macOS systems
CT_METAL=1 pip install ctransformers>=0.2.24 --no-binary ctransformers
💻 使用示例
从 Python 代码加载模型
from ctransformers import AutoModelForCausalLM
# Set gpu_layers to the number of layers to offload to GPU. Set to 0 if no GPU acceleration is available on your system.
llm = AutoModelForCausalLM.from_pretrained("TheBloke/qCammel-70-x-GGUF", model_file="qcammel-70-x.q4_K_M.gguf", model_type="llama", gpu_layers=50)
print(llm("AI is going to"))
📚 详细文档
关于 GGUF
GGUF 是 llama.cpp 团队在 2023 年 8 月 21 日引入的一种新格式,它取代了不再受 llama.cpp 支持的 GGML 格式。GGUF 具有诸多优势,如更好的分词功能、对特殊标记的支持、支持元数据,并且设计为可扩展的。
已知支持 GGUF 的客户端和库包括:
- llama.cpp:GGUF 的源项目,提供 CLI 和服务器选项。
- text-generation-webui:最广泛使用的 Web UI,具有许多功能和强大的扩展,支持 GPU 加速。
- KoboldCpp:功能齐全的 Web UI,支持跨所有平台和 GPU 架构的 GPU 加速,特别适合讲故事。
- LM Studio:适用于 Windows 和 macOS(Silicon)的易于使用且功能强大的本地 GUI,支持 GPU 加速。
- LoLLMS Web UI:一个很棒的 Web UI,具有许多有趣和独特的功能,包括一个完整的模型库,便于模型选择。
- Faraday.dev:一个有吸引力且易于使用的基于角色的聊天 GUI,适用于 Windows 和 macOS(Silicon 和 Intel),支持 GPU 加速。
- ctransformers:一个支持 GPU 加速、LangChain 支持和 OpenAI 兼容 AI 服务器的 Python 库。
- llama-cpp-python:一个支持 GPU 加速、LangChain 支持和 OpenAI 兼容 API 服务器的 Python 库。
- candle:一个专注于性能的 Rust ML 框架,包括 GPU 支持和易于使用。
可用的仓库
- 用于 GPU 推理的 AWQ 模型
- 用于 GPU 推理的 GPTQ 模型,具有多种量化参数选项
- 用于 CPU+GPU 推理的 2、3、4、5、6 和 8 位 GGUF 模型
- augtoma 原始未量化的 fp16 格式的 PyTorch 模型,用于 GPU 推理和进一步转换
提示模板:Vicuna
A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions. USER: {prompt} ASSISTANT:
提供的文件
名称 | 量化方法 | 位数 | 大小 | 所需最大 RAM | 使用场景 |
---|---|---|---|---|---|
qcammel-70-x.Q2_K.gguf | Q2_K | 2 | 29.28 GB | 31.78 GB | 最小,但有显著的质量损失,不建议用于大多数场景 |
qcammel-70-x.Q3_K_S.gguf | Q3_K_S | 3 | 29.92 GB | 32.42 GB | 非常小,但有较高的质量损失 |
qcammel-70-x.Q3_K_M.gguf | Q3_K_M | 3 | 33.19 GB | 35.69 GB | 非常小,但有较高的质量损失 |
qcammel-70-x.Q3_K_L.gguf | Q3_K_L | 3 | 36.15 GB | 38.65 GB | 小,但有较大的质量损失 |
qcammel-70-x.Q4_0.gguf | Q4_0 | 4 | 38.87 GB | 41.37 GB | 旧版本;小,但有非常高的质量损失,建议使用 Q3_K_M |
qcammel-70-x.Q4_K_S.gguf | Q4_K_S | 4 | 39.07 GB | 41.57 GB | 小,但有较大的质量损失 |
qcammel-70-x.Q4_K_M.gguf | Q4_K_M | 4 | 41.42 GB | 43.92 GB | 中等,质量平衡,推荐使用 |
qcammel-70-x.Q5_0.gguf | Q5_0 | 5 | 47.46 GB | 49.96 GB | 旧版本;中等,质量平衡,建议使用 Q4_K_M |
qcammel-70-x.Q5_K_S.gguf | Q5_K_S | 5 | 47.46 GB | 49.96 GB | 大,质量损失低,推荐使用 |
qcammel-70-x.Q5_K_M.gguf | Q5_K_M | 5 | 48.75 GB | 51.25 GB | 大,质量损失非常低,推荐使用 |
qcammel-70-x.Q6_K.gguf | Q6_K | 6 | 56.59 GB | 59.09 GB | 非常大,质量损失极低 |
qcammel-70-x.Q8_0.gguf | Q8_0 | 8 | 73.29 GB | 75.79 GB | 非常大,质量损失极低,但不建议使用 |
注意:上述 RAM 数字假设没有进行 GPU 卸载。如果将层卸载到 GPU,将减少 RAM 使用并使用 VRAM。
Q6_K 和 Q8_0 文件的拆分与合并
由于 Hugging Face 不支持上传大于 50GB 的文件,因此 Q6_K 和 Q8_0 文件以拆分文件的形式上传。
下载拆分文件
- Q6_K:
qcammel-70-x.Q6_K.gguf-split-a
qcammel-70-x.Q6_K.gguf-split-b
- Q8_0:
qcammel-70-x.Q8_0.gguf-split-a
qcammel-70-x.Q8_0.gguf-split-b
合并文件
- Linux 和 macOS:
cat qcammel-70-x.Q6_K.gguf-split-* > qcammel-70-x.Q6_K.gguf && rm qcammel-70-x.Q6_K.gguf-split-*
cat qcammel-70-x.Q8_0.gguf-split-* > qcammel-70-x.Q8_0.gguf && rm qcammel-70-x.Q8_0.gguf-split-*
- Windows 命令行:
COPY /B qcammel-70-x.Q6_K.gguf-split-a + qcammel-70-x.Q6_K.gguf-split-b qcammel-70-x.Q6_K.gguf
del qcammel-70-x.Q6_K.gguf-split-a qcammel-70-x.Q6_K.gguf-split-b
COPY /B qcammel-70-x.Q8_0.gguf-split-a + qcammel-70-x.Q8_0.gguf-split-b qcammel-70-x.Q8_0.gguf
del qcammel-70-x.Q8_0.gguf-split-a qcammel-70-x.Q8_0.gguf-split-b
量化方法说明
点击查看详情
新的可用方法包括:
- GGML_TYPE_Q2_K - “类型 1” 2 位量化,超级块包含 16 个块,每个块有 16 个权重。块的缩放和最小值用 4 位量化。最终每个权重有效使用 2.5625 位(bpw)。
- GGML_TYPE_Q3_K - “类型 0” 3 位量化,超级块包含 16 个块,每个块有 16 个权重。缩放用 6 位量化。最终使用 3.4375 bpw。
- GGML_TYPE_Q4_K - “类型 1” 4 位量化,超级块包含 8 个块,每个块有 32 个权重。缩放和最小值用 6 位量化。最终使用 4.5 bpw。
- GGML_TYPE_Q5_K - “类型 1” 5 位量化。与 GGML_TYPE_Q4_K 具有相同的超级块结构,最终使用 5.5 bpw。
- GGML_TYPE_Q6_K - “类型 0” 6 位量化。超级块有 16 个块,每个块有 16 个权重。缩放用 8 位量化。最终使用 6.5625 bpw。
请参考下面的“提供的文件”表,了解哪些文件使用了哪些方法以及如何使用。
如何使用 LangChain
以下是使用 llama-cpp-python 或 ctransformers 与 LangChain 的指南:
🔧 技术细节
qCammel 70 - GGUF 基于 augtoma 的 qCammel 70 模型,该模型是基于 Llama 2 架构的微调模型。Llama 2 是一种自回归语言模型,使用仅解码器的 Transformer 架构。
模型信息
属性 | 详情 |
---|---|
模型类型 | llama |
基础模型 | augtoma/qCammel-70-x |
模型创建者 | augtoma |
量化者 | TheBloke |
管道标签 | text-generation |
提示模板 | A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions. USER: {prompt} ASSISTANT: |
研究论文
- Clinical Camel: An Open-Source Expert-Level Medical Language Model with Dialogue-Based Knowledge Encoding
- QLoRA: Efficient Finetuning of Quantized LLMs
- LLaMA: Open and Efficient Foundation Language Models
📄 许可证
源模型的创建者将其许可证列为 other
,因此此量化版本也使用相同的许可证。
由于该模型基于 Llama 2,它也受 Meta Llama 2 许可证条款的约束,并且额外包含了该许可证文件。因此,应认为该模型声称同时受这两种许可证的约束。我已联系 Hugging Face 以澄清双重许可问题,但他们尚未有官方立场。如果情况发生变化,或者 Meta 对此情况提供任何反馈,我将相应更新此部分。
在此期间,有关许可证的任何问题,特别是这两种许可证如何相互作用的问题,应咨询原始模型仓库:augtoma's qCammel 70。
其他信息
Discord
如需进一步支持,以及讨论这些模型和人工智能相关话题,请加入:TheBloke AI's Discord server
感谢与贡献
感谢 chirper.ai 团队和 gpus.llm-utils.org 的 Clay!
如果您愿意贡献,这将非常感激,有助于提供更多模型并开展新的 AI 项目。捐赠者将在任何 AI/LLM/模型问题和请求上获得优先支持,访问私人 Discord 房间以及其他福利。
- Patreon: https://patreon.com/TheBlokeAI
- Ko-Fi: https://ko-fi.com/TheBlokeAI
特别感谢:Aemon Algiz。
Patreon 特别提及:Alicia Loh、Stephen Murray 等众多支持者。
感谢所有慷慨的赞助者和捐赠者!也再次感谢 a16z 的慷慨资助。



