HuggingFace镜像/Nous-Hermes-Llama2-GGUF
模型介绍文件和版本分析
下载使用量0
TheBlokeAI

交流与支持:请访问TheBloke的Discord服务器

想要贡献一份力量?请访问TheBloke的Patreon页面

TheBloke的大型语言模型工作获得了安德森·霍洛维茨基金(a16z)的慷慨资助


Nous Hermes Llama 2 13B - GGUF

  • 模型创建者:NousResearch
  • 原始模型:Nous Hermes Llama 2 13B

模型说明

本仓库包含Nous Research的Nous Hermes Llama 2 13B的GGUF格式模型文件。

关于GGUF

GGUF是llama.cpp团队于2023年8月21日推出的新格式。它取代了已不再受llama.cpp支持的GGML格式。GGUF相比GGML具有诸多优势,例如更优化的分词处理、特殊令牌支持,还支持元数据功能,并采用可扩展设计。

以下是已知支持GGUF的客户端和库的不完全列表:

  • llama.cpp。GGUF的源项目,提供CLI和服务器两种运行方式。
  • text-generation-webui,最流行的Web UI,功能丰富且支持强大扩展,具备GPU加速能力。
  • KoboldCpp,全功能Web UI,支持全平台和GPU架构的加速,特别适合故事创作。
  • LM Studio,Windows和macOS(Silicon芯片)平台上易用且功能强大的本地GUI,支持GPU加速。
  • LoLLMS Web UI,特色Web UI,提供众多独特功能,包含完整的模型库便于模型选择。
  • Faraday.dev,Windows和macOS(Silicon与Intel芯片)平台上一款美观易用的角色聊天GUI,支持GPU加速。
  • ctransformers,支持GPU加速的Python库,兼容LangChain和OpenAI风格的AI服务器。
  • llama-cpp-python,具备GPU加速的Python库,支持LangChain和OpenAI兼容的API服务器。
  • candle,专注于性能的Rust机器学习框架,支持GPU加速且易于使用。

可用仓库

  • 支持 GPU 推理的 AWQ 模型
  • 支持 GPU 推理的 GPTQ 模型,提供多种量化参数选项
  • 适用于 CPU+GPU 推理的 2、3、4、5、6 和 8 位 GGUF 模型
  • NousResearch 原始的未量化 fp16 格式模型(pytorch 格式),适用于 GPU 推理及后续转换

提示词模板:Alpaca

Below is an instruction that describes a task. Write a response that appropriately completes the request.

### Instruction:
{prompt}

### Response:

许可协议

源模型的创建者将其许可证列为 ['mit'],因此本次量化处理采用了相同的许可证。

由于本模型基于 Llama 2,故同时需遵守 Meta Llama 2 的许可条款,相关许可证文件也已一并包含在内。因此应认为本模型声明同时受两种许可证约束。我们已就双重许可问题联系 Hugging Face 寻求澄清,但目前尚未获得官方立场。若此情况发生变化,或 Meta 对此提出任何反馈,我们将相应更新本节内容。

在此期间,任何关于许可的疑问,特别是这两种许可证如何相互作用的问询,请直接联系原始模型库:Nous Research 的 Nous Hermes Llama 2 13B。

兼容性

这些量化后的 GGUFv2 文件与 8 月 27 日及之后提交的 llama.cpp 兼容(具体提交为 d0cee0d36d5be95a0d9088b674dbb27354107221)。

它们也与许多第三方 UI 和库兼容——请参阅本文档顶部的兼容列表。

量化方法说明

点击查看详情

新提供的量化方法包括:

  • 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比特
  • GGML_TYPE_Q4_K - "type-1" 4比特量化,超级块包含8个区块,每个区块32个权重。缩放因子和最小值用6比特量化。最终使用每权重4.5比特
  • GGML_TYPE_Q5_K - "type-1" 5比特量化。采用与GGML_TYPE_Q4_K相同的超级块结构,实现每权重5.5比特
  • GGML_TYPE_Q6_K - "type-0" 6比特量化。超级块包含16个区块,每个区块16个权重。缩放因子用8比特量化。最终使用每权重6.5625比特

请参阅下文提供的文件表格,了解各文件所采用的量化方法及具体细节。

提供的文件

文件名量化方法位数文件大小最大内存需求使用场景
nous-hermes-llama2-13b.Q2_K.ggufQ2_K25.43 GB7.93 GB最小体积,显著质量损失 - 不推荐用于多数场景
nous-hermes-llama2-13b.Q3_K_S.ggufQ3_K_S35.66 GB8.16 GB极小体积,高质量损失
nous-hermes-llama2-13b.Q3_K_M.ggufQ3_K_M36.34 GB8.84 GB极小体积,高质量损失
nous-hermes-llama2-13b.Q3_K_L.ggufQ3_K_L36.93 GB9.43 GB小体积,明显质量损失
nous-hermes-llama2-13b.Q4_0.ggufQ4_047.37 GB9.87 GB旧版格式;小体积,极高质量损失 - 建议使用 Q3_K_M
nous-hermes-llama2-13b.Q4_K_S.ggufQ4_K_S47.41 GB9.91 GB小体积,较大质量损失
nous-hermes-llama2-13b.Q4_K_M.ggufQ4_K_M47.87 GB10.37 GB中等体积,平衡质量 - 推荐使用
nous-hermes-llama2-13b.Q5_0.ggufQ5_058.97 GB11.47 GB旧版格式;中等体积,平衡质量 - 建议使用 Q4_K_M
nous-hermes-llama2-13b.Q5_K_S.ggufQ5_K_S58.97 GB11.47 GB大体积,低质量损失 - 推荐使用
nous-hermes-llama2-13b.Q5_K_M.ggufQ5_K_M59.23 GB11.73 GB大体积,极低质量损失 - 推荐使用
nous-hermes-llama2-13b.Q6_K.ggufQ6_K610.68 GB13.18 GB超大体积,极低质量损失
nous-hermes-llama2-13b.Q8_0.ggufQ8_0813.83 GB16.33 GB超大体积,极低质量损失 - 不推荐使用

注意:上述内存数据基于未启用GPU卸载的情况。若将层级卸载至GPU,将会降低内存使用量并转而使用显存。

如何下载 GGUF 文件

手动下载用户须知: 通常您无需克隆整个代码库!我们提供了多种量化格式,大多数用户只需选择并下载单个文件即可。

以下客户端/库会自动为您下载模型,并提供可选的模型列表:

  • LM Studio
  • LoLLMS Web UI
  • Faraday.dev

在 text-generation-webui 中操作

在 Download Model 选项下,您可以输入模型仓库名称:TheBloke/Nous-Hermes-Llama2-GGUF,并在下方输入要下载的具体文件名,例如:nous-hermes-llama2-13b.q4_K_M.gguf。

然后点击 Download 即可。

通过命令行批量下载文件

建议使用 huggingface-hub Python 库:

pip3 install huggingface-hub>=0.17.1

然后您可以通过如下命令高速下载任意单个模型文件到当前目录:

huggingface-cli download TheBloke/Nous-Hermes-Llama2-GGUF nous-hermes-llama2-13b.q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
更高级的huggingface-cli下载用法

您还可以通过模式匹配一次性下载多个文件:

huggingface-cli download TheBloke/Nous-Hermes-Llama2-GGUF --local-dir . --local-dir-use-symlinks False --include='*Q4_K*gguf'

有关使用 huggingface-cli 下载的更多文档,请参阅:HF -> Hub Python 库 -> 下载文件 -> 从 CLI 下载。

若要在高速网络连接(1Gbit/s 或更高)环境下加速下载,请安装 hf_transfer:

pip3 install hf_transfer

并将环境变量 HF_HUB_ENABLE_HF_TRANSFER 设置为 1:

HUGGINGFACE_HUB_ENABLE_HF_TRANSFER=1 huggingface-cli download TheBloke/Nous-Hermes-Llama2-GGUF nous-hermes-llama2-13b.q4_K_M.gguf --local-dir . --local-dir-use-symlinks False

Windows CLI 用户:在执行下载命令前,请先使用 set HUGGINGFACE_HUB_ENABLE_HF_TRANSFER=1 命令。

示例 llama.cpp 命令

请确保您使用的 llama.cpp 版本基于 d0cee0d36d5be95a0d9088b674dbb27354107221 或更高版本提交。

./main -ngl 32 -m nous-hermes-llama2-13b.q4_K_M.gguf --color -c 4096 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "Below is an instruction that describes a task. Write a response that appropriately completes the request.\n\n### Instruction:\n{prompt}\n\n### Response:"

将 -ngl 32 中的数值更改为需要卸载到 GPU 的层数。若未启用 GPU 加速,请直接删除此参数。

将 -c 4096 调整为所需的序列长度。对于扩展序列模型(例如 8K、16K、32K),所需的 RoPE 缩放参数会从 GGUF 文件中自动读取,并由 llama.cpp 自动设置。

若希望进行对话式交互,请将 -p <PROMPT> 参数替换为 -i -ins。

关于其他参数及使用方法,请参阅 llama.cpp 文档

如何在 text-generation-webui 中运行

详细说明参见:text-generation-webui/docs/llama.cpp.md

如何通过 Python 代码运行

可通过 llama-cpp-python 或 ctransformers 库在 Python 中使用 GGUF 模型。

使用 ctransformers 从 Python 加载此模型

首先安装软件包

# 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

加载这些 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/Nous-Hermes-Llama2-GGUF", model_file="nous-hermes-llama2-13b.q4_K_M.gguf", model_type="llama", gpu_layers=50)

print(llm("AI is going to"))

如何使用 LangChain

以下是关于如何将 llama-cpp-python 或 ctransformers 与 LangChain 结合使用的指南:

  • LangChain + llama-cpp-python
  • LangChain + ctransformers

Discord

如需获取进一步支持,以及关于这些模型和人工智能的讨论,请加入我们的:

TheBloke AI 的 Discord 服务器

致谢与贡献方式

感谢 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, K, Ajan Kanaga, RoA, Magnesian, Deo Leter, Olakabola, Eugene Pentland, zynix, Deep Realms, Raymond Fosdick, Elijah Stavena, Iucharbius, Erik Bjäreholt, Luis Javier Navarrete Lozano, Nicholas, theTransient, John Detwiler, alfie_i, knownsqashed, Mano Prime, Willem Michiel, Enrico Ros, LangChain4j, OG, Michael Dempsey, Pierre Kircher, Pedro Madruga, James Bentley, Thomas Belote, Luke @flexchar, Leonard Tan, Johann-Peter Hartmann, Illia Dulskyi, Fen Risland, Chadd, S_X, Jeff Scroggin, Ken Nordquist, Sean Connelly, Artur Olbinski, Swaroop Kallakuri, Jack West, Ai Maven, David Ziegler, Russ Johnson, transmissions 11, John Villwock, Alps Aficionado, Clay Pascal, Viktor Bowallius, Subspace Studios, Rainer Wilmers, Trenton Dambrowitz, vamX, Michael Levine, 준교 김, Brandon Frisco, Kalila, Trailburnt, Randy H, Talal Aujan, Nathan Dryer, Vadim, 阿明, ReadyPlayerEmma, Tiffany J. Kim, George Stoitzev, Spencer Kim, Jerry Meng, Gabriel Tamborski, Cory Kujawski, Jeffrey Morgan, Spiking Neurons AB, Edmond Seymore, Alexandros Triantafyllidis, Lone Striker, Cap'n Zoog, Nikolai Manek, danny, ya boyyy, Derek Yates, usrbinkat, Mandus, TL, Nathan LeClaire, subjectnull, Imad Khwaja, webtim, Raven Klaugh, Asp the Wyvern, Gabriel Puliatti, Caitlyn Gatomon, Joseph William Delisle, Jonathan Leane, Luke Pendergrass, SuperWojo, Sebastain Graf, Will Dee, Fred von Graf, Andrey, Dan Guido, Daniel P. Andersen, Nitin Borwankar, Elle, Vitor Caleffi, biorpg, jjj, NimbleBox.ai, Pieter, Matthew Berman, terasurfer, Michael Davis, Alex, Stanislav Ovsiannikov

感谢我所有慷慨的赞助者和捐赠者!

再次感谢 a16z 提供的慷慨资助。

原始模型卡片:Nous Research 的 Nous Hermes Llama 2 13B

模型卡片:Nous-Hermes-Llama2-13b

计算资源由项目赞助商 Redmond AI 提供,特此致谢!请在 Twitter 上关注 @RedmondAI。

模型描述

Nous-Hermes-Llama2-13b 是基于超过 30 万条指令微调的前沿语言模型。该模型由 Nous Research 微调,其中 Teknium 和 Emozilla 主导微调过程与数据集策展,Redmond AI 提供计算资源赞助,另有数位贡献者参与。

此 Hermes 模型采用与 Llama-1 版 Hermes 完全一致的数据集,旨在确保新旧版本的一致性,满足希望保持 Hermes 特性一致仅提升能力的用户需求。

该模型以生成长文本响应、较低幻觉率及无 OpenAI 审查机制为突出特点。微调过程在 8 台 A100 80GB 的 DGX 机器上以 4096 序列长度完成。

示例输出:

示例4 示例1 示例2 示例3

模型训练

本模型几乎完全基于合成的 GPT-4 输出进行训练。通过精心策展高质量的 GPT-4 数据集,实现了知识广度、任务完成度和风格表现上的卓越品质。

训练数据涵盖多源内容,包括 GPTeacher、通用指令集、角色扮演 v1&2 版、代码指令数据集、Nous Instruct 及 PDACTL(未公开)等,具体细节如下所述。

合作贡献者

模型微调与数据集构建是 Teknium、Karan4D、Emozilla、Huemin Art 和 Redmond AI 多方协作的成果。

特别感谢 @winglian 在部分训练问题中提供的技术支持。

衷心感谢所有开源共享数据集创建者的慷慨贡献,其中包括:

  • GPTeacher 由 Teknium 提供
  • Wizard LM 由 nlpxucan 提供
  • Nous Research Instruct 数据集由 Karan4D 和 HueminArt 提供
  • GPT4-LLM 与 Unnatural Instructions 由微软提供
  • Airoboros 数据集由 jondurbin 提供
  • Camel-AI 领域专家数据集来自 Camel-AI
  • CodeAlpaca 数据集由 Sahil 2801 提供

若有遗漏,请于社区讨论区发起线程告知。

提示词格式

该模型遵循 Alpaca 提示词格式:

### Instruction:
<prompt>

### Response:
<leave a newline blank for model to respond>

或

### Instruction:
<prompt>

### Input:
<additional context>

### Response:
<leave a newline blank for model to respond>

基准测试结果

AGI-Eval

|             Task             |Version| Metric |Value |   |Stderr|
|agieval_aqua_rat              |      0|acc     |0.2362|±  |0.0267|
|                              |       |acc_norm|0.2480|±  |0.0272|
|agieval_logiqa_en             |      0|acc     |0.3425|±  |0.0186|
|                              |       |acc_norm|0.3472|±  |0.0187|
|agieval_lsat_ar               |      0|acc     |0.2522|±  |0.0287|
|                              |       |acc_norm|0.2087|±  |0.0269|
|agieval_lsat_lr               |      0|acc     |0.3510|±  |0.0212|
|                              |       |acc_norm|0.3627|±  |0.0213|
|agieval_lsat_rc               |      0|acc     |0.4647|±  |0.0305|
|                              |       |acc_norm|0.4424|±  |0.0303|
|agieval_sat_en                |      0|acc     |0.6602|±  |0.0331|
|                              |       |acc_norm|0.6165|±  |0.0340|
|agieval_sat_en_without_passage|      0|acc     |0.4320|±  |0.0346|
|                              |       |acc_norm|0.4272|±  |0.0345|
|agieval_sat_math              |      0|acc     |0.2909|±  |0.0307|
|                              |       |acc_norm|0.2727|±  |0.0301|

GPT-4All 基准测试集

|    Task     |Version| Metric |Value |   |Stderr|
|arc_challenge|      0|acc     |0.5102|±  |0.0146|
|             |       |acc_norm|0.5213|±  |0.0146|
|arc_easy     |      0|acc     |0.7959|±  |0.0083|
|             |       |acc_norm|0.7567|±  |0.0088|
|boolq        |      1|acc     |0.8394|±  |0.0064|
|hellaswag    |      0|acc     |0.6164|±  |0.0049|
|             |       |acc_norm|0.8009|±  |0.0040|
|openbookqa   |      0|acc     |0.3580|±  |0.0215|
|             |       |acc_norm|0.4620|±  |0.0223|
|piqa         |      0|acc     |0.7992|±  |0.0093|
|             |       |acc_norm|0.8069|±  |0.0092|
|winogrande   |      0|acc     |0.7127|±  |0.0127|

BigBench 推理测试

|                      Task                      |Version|       Metric        |Value |   |Stderr|

|bigbench_causal_judgement                       |      0|multiple_choice_grade|0.5526|±  |0.0362|
|bigbench_date_understanding                     |      0|multiple_choice_grade|0.7344|±  |0.0230|
|bigbench_disambiguation_qa                      |      0|multiple_choice_grade|0.2636|±  |0.0275|
|bigbench_geometric_shapes                       |      0|multiple_choice_grade|0.0195|±  |0.0073|
|                                                |       |exact_str_match      |0.0000|±  |0.0000|
|bigbench_logical_deduction_five_objects         |      0|multiple_choice_grade|0.2760|±  |0.0200|
|bigbench_logical_deduction_seven_objects        |      0|multiple_choice_grade|0.2100|±  |0.0154|
|bigbench_logical_deduction_three_objects        |      0|multiple_choice_grade|0.4400|±  |0.0287|
|bigbench_movie_recommendation                   |      0|multiple_choice_grade|0.2440|±  |0.0192|
|bigbench_navigate                               |      0|multiple_choice_grade|0.4950|±  |0.0158|
|bigbench_reasoning_about_colored_objects        |      0|multiple_choice_grade|0.5570|±  |0.0111|
|bigbench_ruin_names                             |      0|multiple_choice_grade|0.3728|±  |0.0229|
|bigbench_salient_translation_error_detection    |      0|multiple_choice_grade|0.1854|±  |0.0123|
|bigbench_snarks                                 |      0|multiple_choice_grade|0.6298|±  |0.0360|
|bigbench_sports_understanding                   |      0|multiple_choice_grade|0.6156|±  |0.0155|
|bigbench_temporal_sequences                     |      0|multiple_choice_grade|0.3140|±  |0.0147|
|bigbench_tracking_shuffled_objects_five_objects |      0|multiple_choice_grade|0.2032|±  |0.0114|
|bigbench_tracking_shuffled_objects_seven_objects|      0|multiple_choice_grade|0.1406|±  |0.0083|
|bigbench_tracking_shuffled_objects_three_objects|      0|multiple_choice_grade|0.4400|±  |0.0287|

以下是 Hermes 在各项指标上取得的最高基准测试成绩,平均分表现如下:

  • GPT4All 基准测试平均分现为 70.0(较 Hermes-Llama1 的 68.8 有所提升)
  • BigBench 得分 0.3657(高于 hermes-llama1 的 0.328)
  • AGIEval 得分 0.372(高于 Hermes-llama1 的 0.354)

根据当前基准测试结果,我们在 ARC-c、ARC-e、Hellaswag 和 OpenBookQA 四项指标中位列第一,在 Winogrande 上排名第二(参照 GPT4all 基准测试列表)。新一代模型已取代 Hermes 1 登顶榜首。

实际应用资源:

  • 体验类 ChatGPT 交互界面请访问 LM Studio:https://lmstudio.ai/
  • 基于 Hugging Face Transformers 与 Discord 的双向聊天机器人示例:https://github.com/teknium1/alpaca-discord
  • 角色扮演版 Discord 聊天机器人示例:https://github.com/teknium1/alpaca-roleplay-discordbot

未来计划

我们将持续迭代更高质量的数据集,并开发新的数据过滤技术以逐步淘汰低质量数据。

模型使用

本模型可通过 Hugging Face 平台下载,适用于多种语言任务场景——从创意文本生成到复杂指令的理解与执行。

Built with Axolotl