模型概述
模型特點
模型能力
使用案例
🚀 Llama 2 13B Chat - GGUF
本項目提供了 Meta的Llama 2 13B-chat 模型的GGUF格式文件,方便用戶在不同環境下進行推理和使用。
🚀 快速開始
本倉庫包含了Meta的Llama 2 13B-chat模型的GGUF格式文件。GGUF是一種新的模型格式,具有諸多優勢,支持多種客戶端和庫。下面將為你介紹該模型的相關信息、下載方式以及使用方法。
✨ 主要特性
- 新格式優勢:GGUF格式是llama.cpp團隊於2023年8月21日推出的新格式,替代了不再被支持的GGML格式。它具有更好的分詞效果、支持特殊令牌、支持元數據,並且設計為可擴展的。
- 多平臺支持:眾多客戶端和庫都支持GGUF格式,包括llama.cpp、text-generation-webui、KoboldCpp等,方便在不同環境下使用。
- 多種量化選項:提供了多種量化方法和比特數的模型文件,用戶可以根據自己的需求選擇合適的模型,以平衡模型大小和質量。
📦 安裝指南
下載GGUF文件
手動下載注意事項
幾乎不需要克隆整個倉庫,因為提供了多種不同的量化格式,大多數用戶只需要選擇並下載單個文件。
自動下載方式
以下客戶端/庫會自動為你下載模型,並提供可用模型列表供你選擇:
- LM Studio
- LoLLMS Web UI
- Faraday.dev
在text-generation-webui
中下載
在“Download Model”下,輸入模型倉庫地址:TheBloke/Llama-2-13B-chat-GGUF,然後在下方輸入具體的文件名進行下載,例如:llama-2-13b-chat.q4_K_M.gguf,最後點擊“Download”。
命令行下載(包括同時下載多個文件)
推薦使用huggingface-hub
Python庫:
pip3 install huggingface-hub>=0.17.1
然後可以使用以下命令將任何單個模型文件高速下載到當前目錄:
huggingface-cli download TheBloke/Llama-2-13B-chat-GGUF llama-2-13b-chat.q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
如果你想同時下載多個文件,可以使用模式匹配:
huggingface-cli download TheBloke/Llama-2-13B-chat-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
:
HUGGINGFACE_HUB_ENABLE_HF_TRANSFER=1 huggingface-cli download TheBloke/Llama-2-13B-chat-GGUF llama-2-13b-chat.q4_K_M.gguf --local-dir . --local-dir-use-symlinks False
Windows命令行用戶在運行下載命令前使用set HUGGINGFACE_HUB_ENABLE_HF_TRANSFER=1
。
💻 使用示例
在llama.cpp
中運行
確保你使用的是2023年8月27日之後的llama.cpp版本(提交號為 d0cee0d36d5be95a0d9088b674dbb27354107221)。
./main -ngl 32 -m llama-2-13b-chat.q4_K_M.gguf --color -c 4096 --temp 0.7 --repeat_penalty 1.1 -n -1 -p "[INST] <<SYS>>
You are a helpful, respectful and honest assistant. Always answer as helpfully as possible, while being safe. Your answers should not include any harmful, unethical, racist, sexist, toxic, dangerous, or illegal content. Please ensure that your responses are socially unbiased and positive in nature. If a question does not make any sense, or is not factually coherent, explain why instead of answering something not correct. If you don't know the answer to a question, please don't share false information.
<</SYS>>
{prompt}[/INST]"
-ngl 32
:將其更改為要卸載到GPU的層數。如果沒有GPU加速,可以刪除該參數。-c 4096
:將其更改為所需的序列長度。對於擴展序列模型(如8K、16K、32K),必要的RoPE縮放參數會從GGUF文件中讀取並由llama.cpp自動設置。- 如果你想進行聊天式對話,將
-p <PROMPT>
參數替換為-i -ins
。
更多參數和使用方法,請參考 the llama.cpp documentation。
在text-generation-webui
中運行
更多說明請參考:text-generation-webui/docs/llama.cpp.md。
從Python代碼運行
可以使用 llama-cpp-python 或 ctransformers 庫從Python中使用GGUF模型。
使用ctransformers加載模型
首先安裝包:
# 無GPU加速的基礎ctransformers
pip install ctransformers>=0.2.24
# 或使用CUDA GPU加速
pip install ctransformers[cuda]>=0.2.24
# 或使用ROCm GPU加速
CT_HIPBLAS=1 pip install ctransformers>=0.2.24 --no-binary ctransformers
# 或使用Metal GPU加速(適用於macOS系統)
CT_METAL=1 pip install ctransformers>=0.2.24 --no-binary ctransformers
簡單的示例代碼來加載其中一個GGUF模型:
from ctransformers import AutoModelForCausalLM
# 將gpu_layers設置為要卸載到GPU的層數。如果你的系統沒有GPU加速,請將其設置為0。
llm = AutoModelForCausalLM.from_pretrained("TheBloke/Llama-2-13B-chat-GGUF", model_file="llama-2-13b-chat.q4_K_M.gguf", model_type="llama", gpu_layers=50)
print(llm("AI is going to"))
與LangChain一起使用
以下是使用llama-cpp-python或ctransformers與LangChain的指南:
📚 詳細文檔
關於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架構的GPU加速,特別適合講故事。
- LM Studio:適用於Windows和macOS(Silicon)的易於使用且功能強大的本地GUI,支持GPU加速。
- LoLLMS Web UI:一個很棒的Web UI,具有許多有趣和獨特的功能,包括一個完整的模型庫,方便模型選擇。
- Faraday.dev:一個有吸引力且易於使用的基於角色的聊天GUI,適用於Windows和macOS(Silicon和Intel),支持GPU加速。
- ctransformers:一個Python庫,支持GPU加速、LangChain集成和OpenAI兼容的AI服務器。
- llama-cpp-python:一個Python庫,支持GPU加速、LangChain集成和OpenAI兼容的API服務器。
- candle:一個Rust機器學習框架,注重性能,包括GPU支持和易用性。
可用的倉庫
- 用於GPU推理的AWQ模型
- 用於GPU推理的GPTQ模型,具有多個量化參數選項
- 用於CPU+GPU推理的2、3、4、5、6和8位GGUF模型
- Meta Llama 2的原始未量化fp16模型(pytorch格式),用於GPU推理和進一步轉換
提示模板:Llama-2-Chat
[INST] <<SYS>>
You are a helpful, respectful and honest assistant. Always answer as helpfully as possible, while being safe. Your answers should not include any harmful, unethical, racist, sexist, toxic, dangerous, or illegal content. Please ensure that your responses are socially unbiased and positive in nature. If a question does not make any sense, or is not factually coherent, explain why instead of answering something not correct. If you don't know the answer to a question, please don't share false information.
<</SYS>>
{prompt}[/INST]
兼容性
這些量化的GGUFv2文件與2023年8月27日之後的llama.cpp版本兼容(提交號為 d0cee0d36d5be95a0d9088b674dbb27354107221)。
它們也與許多第三方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 | 使用場景 |
---|---|---|---|---|---|
llama-2-13b-chat.Q2_K.gguf | Q2_K | 2 | 5.43 GB | 7.93 GB | 最小,但質量損失顯著,不建議用於大多數情況 |
llama-2-13b-chat.Q3_K_S.gguf | Q3_K_S | 3 | 5.66 GB | 8.16 GB | 非常小,但質量損失高 |
llama-2-13b-chat.Q3_K_M.gguf | Q3_K_M | 3 | 6.34 GB | 8.84 GB | 非常小,但質量損失高 |
llama-2-13b-chat.Q3_K_L.gguf | Q3_K_L | 3 | 6.93 GB | 9.43 GB | 小,但質量損失較大 |
llama-2-13b-chat.Q4_0.gguf | Q4_0 | 4 | 7.37 GB | 9.87 GB | 舊版本;小,但質量損失非常高,建議使用Q3_K_M |
llama-2-13b-chat.Q4_K_S.gguf | Q4_K_S | 4 | 7.41 GB | 9.91 GB | 小,但質量損失更大 |
llama-2-13b-chat.Q4_K_M.gguf | Q4_K_M | 4 | 7.87 GB | 10.37 GB | 中等,質量平衡,推薦使用 |
llama-2-13b-chat.Q5_0.gguf | Q5_0 | 5 | 8.97 GB | 11.47 GB | 舊版本;中等,質量平衡,建議使用Q4_K_M |
llama-2-13b-chat.Q5_K_S.gguf | Q5_K_S | 5 | 8.97 GB | 11.47 GB | 大,質量損失低,推薦使用 |
llama-2-13b-chat.Q5_K_M.gguf | Q5_K_M | 5 | 9.23 GB | 11.73 GB | 大,質量損失非常低,推薦使用 |
llama-2-13b-chat.Q6_K.gguf | Q6_K | 6 | 10.68 GB | 13.18 GB | 非常大,質量損失極低 |
llama-2-13b-chat.Q8_0.gguf | Q8_0 | 8 | 13.83 GB | 16.33 GB | 非常大,質量損失極低,不建議使用 |
注意:上述RAM數字假設沒有進行GPU卸載。如果將層卸載到GPU,將減少RAM使用並使用VRAM。
🔧 技術細節
模型信息
屬性 | 詳情 |
---|---|
模型類型 | Llama |
訓練數據 | Llama 2在2萬億個公開可用來源的令牌數據上進行了預訓練。微調數據包括公開可用的指令數據集,以及超過一百萬個新的人工標註示例。預訓練和微調數據集均不包含Meta用戶數據。 |
訓練相關
- 訓練因素:使用自定義訓練庫、Meta的研究超級集群和生產集群進行預訓練。微調、標註和評估也在第三方雲計算上進行。
- 碳足跡:預訓練在A100 - 80GB類型的硬件上累計使用了330萬個GPU小時的計算資源(TDP為350 - 400W)。估計總排放量為539 tCO2eq,其中100%由Meta的可持續發展計劃進行了抵消。
評估結果
在標準學術基準測試中,Llama 2模型在多個方面表現優於Llama 1模型。具體評估結果如下:
標準學術基準測試
模型 | 大小 | 代碼 | 常識推理 | 世界知識 | 閱讀理解 | 數學 | MMLU | BBH | AGI評估 |
---|---|---|---|---|---|---|---|---|---|
Llama 1 | 7B | 14.1 | 60.8 | 46.2 | 58.5 | 6.95 | 35.1 | 30.3 | 23.9 |
Llama 1 | 13B | 18.9 | 66.1 | 52.6 | 62.3 | 10.9 | 46.9 | 37.0 | 33.9 |
Llama 1 | 33B | 26.0 | 70.0 | 58.4 | 67.6 | 21.4 | 57.8 | 39.8 | 41.7 |
Llama 1 | 65B | 30.7 | 70.7 | 60.5 | 68.6 | 30.8 | 63.4 | 43.5 | 47.6 |
Llama 2 | 7B | 16.8 | 63.9 | 48.9 | 61.3 | 14.6 | 45.3 | 32.6 | 29.3 |
Llama 2 | 13B | 24.5 | 66.9 | 55.4 | 65.8 | 28.7 | 54.8 | 39.4 | 39.1 |
Llama 2 | 70B | 37.5 | 71.9 | 63.6 | 69.4 | 35.2 | 68.9 | 51.2 | 54.2 |
自動安全基準測試
模型 | 大小 | TruthfulQA | Toxigen |
---|---|---|---|
Llama 1 | 7B | 27.42 | 23.00 |
Llama 1 | 13B | 41.74 | 23.08 |
Llama 1 | 33B | 44.19 | 22.57 |
Llama 1 | 65B | 48.71 | 21.77 |
Llama 2 | 7B | 33.29 | 21.25 |
Llama 2 | 13B | 41.86 | 26.10 |
Llama 2 | 70B | 50.18 | 24.60 |
微調模型的安全數據集評估
模型 | 大小 | TruthfulQA | Toxigen |
---|---|---|---|
Llama - 2 - Chat | 7B | 57.04 | 0.00 |
Llama - 2 - Chat | 13B | 62.18 | 0.00 |
Llama - 2 - Chat | 70B | 64.14 | 0.01 |
📄 許可證
本項目使用Llama2許可證,具體商業許可證可在 https://ai.meta.com/resources/models-and-libraries/llama-downloads/ 查看。
Discord
如需進一步支持,以及參與這些模型和AI相關的討論,請加入: 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的慷慨資助。



