模型简介
模型特点
模型能力
使用案例
🚀 Orca 2 13B - GGUF
Orca 2 13B - GGUF 项目提供了微软 Orca 2 13B 模型的 GGUF 格式文件,方便用户进行推理和研究。该项目支持多种量化方法和文件,适用于不同的硬件环境和使用场景。
🚀 快速开始
下载 GGUF 文件
- 自动下载:LM Studio、LoLLMS Web UI、Faraday.dev 等客户端/库会自动下载模型,并提供可用模型列表供用户选择。
- text - generation - webui 下载:在 Download Model 中输入模型仓库地址 TheBloke/Orca - 2 - 13B - GGUF,然后输入具体文件名(如 orca - 2 - 13b.Q4_K_M.gguf),点击 Download。
- 命令行下载:推荐使用
huggingface - hub
Python 库。
pip3 install huggingface - hub
huggingface - cli download TheBloke/Orca - 2 - 13B - GGUF orca - 2 - 13b.Q4_K_M.gguf --local - dir. --local - dir - use - symlinks False
运行示例
llama.cpp 命令示例
确保使用的是 2023 年 8 月 27 日之后的 llama.cpp 版本(提交号 d0cee0d 及以后)。
./main -ngl 32 -m orca - 2 - 13b.Q4_K_M.gguf --color -c 4096 --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 4096
:设置所需的序列长度。对于扩展序列模型(如 8K、16K、32K),必要的 RoPE 缩放参数会从 GGUF 文件中读取并由 llama.cpp 自动设置。- 若要进行聊天式对话,将
-p <PROMPT>
参数替换为-i -ins
。
在 text - generation - webui 中运行
更多说明可参考 text - generation - webui 文档:[text - generation - webui/docs/04 ‐ Model Tab.md](https://github.com/oobabooga/text - generation - webui/blob/main/docs/04%20%E2%80%90%20Model%20Tab.md#llamacpp)。
从 Python 代码运行
可使用 [llama - cpp - python](https://github.com/abetlen/llama - cpp - python) 或 ctransformers 库从 Python 中使用 GGUF 模型。
from ctransformers import AutoModelForCausalLM
# 设置 gpu_layers 为要卸载到 GPU 的层数。若系统无 GPU 加速,设置为 0。
llm = AutoModelForCausalLM.from_pretrained("TheBloke/Orca - 2 - 13B - GGUF", model_file="orca - 2 - 13b.Q4_K_M.gguf", model_type="llama", gpu_layers=50)
print(llm("AI is going to"))
与 LangChain 一起使用
✨ 主要特性
- 多种量化方法:支持 GGML_TYPE_Q2_K、GGML_TYPE_Q3_K、GGML_TYPE_Q4_K 等多种量化方法,满足不同的精度和性能需求。
- 广泛的兼容性:与 llama.cpp 及许多第三方 UI 和库兼容,方便用户在不同环境中使用。
- 多平台支持:可在 CPU + GPU 环境下运行,支持多种操作系统和硬件架构。
📦 安装指南
安装依赖库
pip3 install huggingface - hub
若要加速下载(高速连接,1Gbit/s 或更高),可安装 hf_transfer
:
pip3 install hf_transfer
并设置环境变量:
HF_HUB_ENABLE_HF_TRANSFER = 1
Windows 命令行用户可在下载命令前运行 set HF_HUB_ENABLE_HF_TRANSFER = 1
。
安装 ctransformers
根据系统选择以下命令之一:
# 无 GPU 加速的基础 ctransformers
pip install ctransformers
# 带 CUDA GPU 加速
pip install ctransformers[cuda]
# 带 AMD ROCm GPU 加速(仅 Linux)
CT_HIPBLAS = 1 pip install ctransformers --no - binary ctransformers
# 带 Metal GPU 加速(仅 macOS 系统)
CT_METAL = 1 pip install ctransformers --no - binary ctransformers
💻 使用示例
基础用法
from ctransformers import AutoModelForCausalLM
llm = AutoModelForCausalLM.from_pretrained("TheBloke/Orca - 2 - 13B - GGUF", model_file="orca - 2 - 13b.Q4_K_M.gguf", model_type="llama", gpu_layers=50)
print(llm("AI is going to"))
高级用法
在更复杂的场景中,可结合 LangChain 等工具,实现更强大的功能。具体使用方法可参考 LangChain + llama - cpp - python 和 LangChain + ctransformers。
📚 详细文档
模型信息
属性 | 详情 |
---|---|
模型创建者 | Microsoft |
原始模型 | [Orca 2 13B](https://huggingface.co/microsoft/Orca - 2 - 13b) |
模型类型 | llama |
管道标签 | text - generation |
提示模板 | `< |
量化者 | TheBloke |
标签 | orca, orca2, microsoft |
关于 GGUF
GGUF 是 llama.cpp 团队在 2023 年 8 月 21 日引入的新格式,用于替代不再受 llama.cpp 支持的 GGML。以下是已知支持 GGUF 的客户端和库:
- llama.cpp:GGUF 的源项目,提供 CLI 和服务器选项。
- [text - generation - webui](https://github.com/oobabooga/text - generation - webui):最广泛使用的 Web UI,具有许多功能和强大的扩展,支持 GPU 加速。
- KoboldCpp:功能齐全的 Web UI,支持跨所有平台和 GPU 架构的 GPU 加速,尤其适合讲故事。
- LM Studio:适用于 Windows 和 macOS(Silicon)的易于使用且功能强大的本地 GUI,支持 GPU 加速。
- [LoLLMS Web UI](https://github.com/ParisNeo/lollms - webui):一个很棒的 Web UI,具有许多有趣和独特的功能,包括一个完整的模型库,便于模型选择。
- Faraday.dev:一个有吸引力且易于使用的基于角色的聊天 GUI,适用于 Windows 和 macOS(Silicon 和 Intel),支持 GPU 加速。
- ctransformers:一个支持 GPU 加速、LangChain 支持和 OpenAI 兼容 AI 服务器的 Python 库。
- [llama - cpp - python](https://github.com/abetlen/llama - cpp - python):一个支持 GPU 加速、LangChain 支持和 OpenAI 兼容 API 服务器的 Python 库。
- candle:一个专注于性能的 Rust ML 框架,包括 GPU 支持和易用性。
可用仓库
- [用于 GPU 推理的 AWQ 模型](https://huggingface.co/TheBloke/Orca - 2 - 13B - AWQ)
- [用于 GPU 推理的 GPTQ 模型,具有多个量化参数选项](https://huggingface.co/TheBloke/Orca - 2 - 13B - GPTQ)
- [用于 CPU + GPU 推理的 2、3、4、5、6 和 8 位 GGUF 模型](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF)
- [微软原始未量化的 fp16 模型(pytorch 格式),用于 GPU 推理和进一步转换](https://huggingface.co/microsoft/Orca - 2 - 13b)
提示模板:ChatML
<|im_start|>system
{system_message}<|im_end|>
<|im_start|>user
{prompt}<|im_end|>
<|im_start|>assistant
兼容性
这些量化的 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 | 使用场景 |
---|---|---|---|---|---|
[orca - 2 - 13b.Q2_K.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q2_K.gguf) | Q2_K | 2 | 5.43 GB | 7.93 GB | 最小,但质量损失显著,不建议用于大多数场景 |
[orca - 2 - 13b.Q3_K_S.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q3_K_S.gguf) | Q3_K_S | 3 | 5.66 GB | 8.16 GB | 非常小,但质量损失高 |
[orca - 2 - 13b.Q3_K_M.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q3_K_M.gguf) | Q3_K_M | 3 | 6.34 GB | 8.84 GB | 非常小,但质量损失高 |
[orca - 2 - 13b.Q3_K_L.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q3_K_L.gguf) | Q3_K_L | 3 | 6.93 GB | 9.43 GB | 小,但质量损失较大 |
[orca - 2 - 13b.Q4_0.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q4_0.gguf) | Q4_0 | 4 | 7.37 GB | 9.87 GB | 旧版;小,但质量损失非常高,建议使用 Q3_K_M |
[orca - 2 - 13b.Q4_K_S.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q4_K_S.gguf) | Q4_K_S | 4 | 7.41 GB | 9.91 GB | 小,但质量损失更大 |
[orca - 2 - 13b.Q4_K_M.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q4_K_M.gguf) | Q4_K_M | 4 | 7.87 GB | 10.37 GB | 中等,质量平衡,推荐使用 |
[orca - 2 - 13b.Q5_0.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q5_0.gguf) | Q5_0 | 5 | 8.97 GB | 11.47 GB | 旧版;中等,质量平衡,建议使用 Q4_K_M |
[orca - 2 - 13b.Q5_K_S.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q5_K_S.gguf) | Q5_K_S | 5 | 8.97 GB | 11.47 GB | 大,质量损失低,推荐使用 |
[orca - 2 - 13b.Q5_K_M.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q5_K_M.gguf) | Q5_K_M | 5 | 9.23 GB | 11.73 GB | 大,质量损失非常低,推荐使用 |
[orca - 2 - 13b.Q6_K.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q6_K.gguf) | Q6_K | 6 | 10.68 GB | 13.18 GB | 非常大,质量损失极低 |
[orca - 2 - 13b.Q8_0.gguf](https://huggingface.co/TheBloke/Orca - 2 - 13B - GGUF/blob/main/orca - 2 - 13b.Q8_0.gguf) | Q8_0 | 8 | 13.83 GB | 16.33 GB | 非常大,质量损失极低,但不建议使用 |
注意:上述 RAM 数字假设没有 GPU 卸载。如果将层卸载到 GPU,将减少 RAM 使用并使用 VRAM。
🔧 技术细节
模型架构
Orca 2 是基于 LLAMA - 2 微调的版本。其训练数据是一个合成数据集,旨在增强小模型的推理能力。所有合成训练数据都使用微软 Azure 内容过滤器进行了审核。更多关于模型的详细信息可参考 Orca 2 论文。
量化原理
不同的量化方法通过对模型权重进行不同程度的压缩,在精度和性能之间进行权衡。例如,GGML_TYPE_Q2_K 方法通过将权重量化为 2 位,减少了模型的存储空间和计算量,但同时也会带来一定的质量损失。
📄 许可证
- Orca 2 遵循 Microsoft Research License。
- Llama 2 遵循 LLAMA 2 Community License,版权所有 © Meta Platforms, Inc. 保留所有权利。
⚠️ 重要提示
使用该模型时,需要注意以下潜在风险:
- 数据偏差:大语言模型在大量数据上训练,可能会携带源数据中的偏差,导致生成的输出可能存在潜在的偏差或不公平性。
- 缺乏上下文理解:尽管这些模型在语言理解和生成方面表现出色,但它们对现实世界的理解有限,可能导致输出不准确或无意义。
- 缺乏透明度:由于模型的复杂性和规模,大语言模型可能像“黑匣子”一样,难以理解特定输出或决策的背后原因。
- 内容危害:大语言模型可能会造成各种类型的内容危害,使用时需要注意并采取措施预防。建议利用不同公司和机构提供的各种内容审核服务。
- 幻觉:在关键决策或可能产生重大影响的信息方面,不要完全依赖语言模型,因为难以防止这些模型编造内容。此外,由于小模型的规模较小和记忆能力有限,在无根据的生成用例中可能更容易出现幻觉。
💡 使用建议
- 根据自己的硬件环境和使用场景选择合适的量化文件,如对精度要求较高,可选择 Q5_K_M 或 Q6_K 等量化方法的文件;若对存储空间和性能要求较高,可选择 Q4_K_M 等文件。
- 在使用过程中,可结合 LangChain 等工具,实现更强大的功能和更灵活的应用。
- 及时关注项目的更新和社区讨论,获取最新的使用技巧和问题解决方案。
Discord
如需进一步支持,或讨论这些模型和人工智能相关话题,请加入:TheBloke AI's Discord server
感谢与贡献
感谢 chirper.ai 团队和 [gpus.llm - utils.org](llm - utils) 的 Clay!
如果您愿意为项目做出贡献,捐赠将非常感激,这将帮助项目作者提供更多模型并开展新的 AI 项目。捐赠者将获得优先支持、访问私人 Discord 房间等福利。
- Patreon: https://patreon.com/TheBlokeAI
- Ko - Fi: https://ko - fi.com/TheBlokeAI
特别感谢:Aemon Algiz。
Patreon 特别提及:Brandon Frisco、LangChain4j 等众多支持者。
再次感谢 a16z 的慷慨资助!



