模型概述
模型特點
模型能力
使用案例
🚀 Meta-Llama-3-8B-Instruct GGUF模型
Meta-Llama-3-8B-Instruct GGUF模型是Meta推出的大語言模型,具有多種量化版本,可根據不同的硬件條件和使用場景進行選擇。該模型在多個基準測試中表現出色,適用於商業和研究用途。
🚀 快速開始
模型選擇
根據你的硬件能力和內存限制,選擇合適的模型格式:
- BF16:適用於支持BF16加速的硬件,具有較高的計算速度和精度。
- F16:更廣泛支持的16位浮點格式,在大多數支持FP16加速的設備上可用。
- 量化模型:如Q4_K、Q6_K、Q8等,可減少模型大小和內存使用,同時保持一定的準確性。
- 極低比特量化模型:如IQ3_XS、IQ3_S等,優化了極端內存效率,適用於低功耗設備或大規模部署。
使用示例
使用Transformers庫
import transformers
import torch
model_id = "meta-llama/Meta-Llama-3-8B-Instruct"
pipeline = transformers.pipeline(
"text-generation",
model=model_id,
model_kwargs={"torch_dtype": torch.bfloat16},
device_map="auto",
)
messages = [
{"role": "system", "content": "You are a pirate chatbot who always responds in pirate speak!"},
{"role": "user", "content": "Who are you?"},
]
terminators = [
pipeline.tokenizer.eos_token_id,
pipeline.tokenizer.convert_tokens_to_ids("<|eot_id|>")
]
outputs = pipeline(
messages,
max_new_tokens=256,
eos_token_id=terminators,
do_sample=True,
temperature=0.6,
top_p=0.9,
)
print(outputs[0]["generated_text"][-1])
使用Transformers AutoModelForCausalLM
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
model_id = "meta-llama/Meta-Llama-3-8B-Instruct"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
messages = [
{"role": "system", "content": "You are a pirate chatbot who always responds in pirate speak!"},
{"role": "user", "content": "Who are you?"},
]
input_ids = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(model.device)
terminators = [
tokenizer.eos_token_id,
tokenizer.convert_tokens_to_ids("<|eot_id|>")
]
outputs = model.generate(
input_ids,
max_new_tokens=256,
eos_token_id=terminators,
do_sample=True,
temperature=0.6,
top_p=0.9,
)
response = outputs[0][input_ids.shape[-1]:]
print(tokenizer.decode(response, skip_special_tokens=True))
✨ 主要特性
超低比特量化
引入了精確自適應量化方法,用於超低比特模型(1 - 2比特),在Llama-3-8B上有顯著的性能提升。通過層特定策略,在保持極端內存效率的同時保留準確性。
多種模型格式
提供BF16、F16、量化模型等多種格式,滿足不同硬件和內存需求。
良好的性能表現
在多個基準測試中表現出色,優於許多開源聊天模型。
安全性和可靠性
進行了廣泛的紅隊測試和對抗性評估,實施了安全緩解技術,降低了殘留風險。同時,改進了微調過程,減少了模型錯誤拒絕回答提示的可能性。
📦 安裝指南
本倉庫包含Meta-Llama-3-8B-Instruct的兩個版本,可用於transformers庫和原始llama3
代碼庫。
使用transformers庫
確保你已經安裝了transformers
和torch
庫:
pip install transformers torch
使用原始llama3
代碼庫
請按照倉庫中的說明進行操作。
💻 使用示例
基礎用法
上述快速開始部分的代碼示例展示瞭如何使用transformers
庫進行對話推理。
高級用法
你可以根據自己的需求調整模型的參數,如max_new_tokens
、temperature
、top_p
等,以獲得不同的生成效果。
📚 詳細文檔
模型詳情
- 開發者:Meta
- 變體:Llama 3有8B和70B參數兩種大小,包括預訓練和指令微調版本。
- 輸入:僅接受文本輸入。
- 輸出:生成文本和代碼。
- 模型架構:自迴歸語言模型,使用優化的Transformer架構。微調版本使用監督微調(SFT)和基於人類反饋的強化學習(RLHF)來與人類偏好對齊。
預期用途
- 預期用例:用於英語的商業和研究用途。指令微調模型適用於類似助手的聊天,預訓練模型可用於各種自然語言生成任務。
- 超出範圍:違反適用法律法規(包括貿易合規法律)的使用;違反可接受使用政策和Llama 3社區許可證的使用;非英語語言的使用。
硬件和軟件
- 訓練因素:使用自定義訓練庫、Meta的研究超級集群和生產集群進行預訓練。微調、註釋和評估也在第三方雲計算上進行。
- 碳足跡:預訓練使用了770萬個GPU小時的H100 - 80GB硬件計算,估計總排放量為2290 tCO2eq,全部由Meta的可持續發展計劃抵消。
訓練數據
- 概述:Llama 3在超過15萬億個公開可用的令牌數據上進行預訓練。微調數據包括公開可用的指令數據集以及超過1000萬個手動註釋的示例。
- 數據新鮮度:8B模型的預訓練數據截止到2023年3月,70B模型截止到2023年12月。
基準測試
在標準自動基準測試中,Llama 3模型表現出色,優於許多Llama 2模型。具體結果請參考文檔中的表格。
責任與安全
- 負責任的AI開發:致力於負責任的AI開發,採取了一系列措施來限制濫用和危害,並支持開源社區。
- 安全工具:提供了Meta Llama Guard 2和Code Shield等安全工具,幫助開發者實現模型和系統級別的安全。
- 安全評估:對模型在CBRNE、網絡安全、兒童安全等方面進行了評估,並採取了相應的安全措施。
倫理考慮和限制
雖然Llama 3的核心價值觀是開放、包容和有用,但作為一種新技術,它仍然存在一些風險。開發者在部署應用之前,應進行針對特定應用的安全測試和調整,並參考負責任使用指南。
🔧 技術細節
量化方法
- 動態精度分配:前/後25%的層使用IQ4_XS(選定層),中間50%使用IQ2_XXS/IQ3_S(提高效率)。
- 關鍵組件保護:嵌入層/輸出層使用Q5_K,與標準1 - 2比特量化相比,減少了38%的誤差傳播。
量化性能比較
量化方式 | 標準PPL | DynamicGate PPL | Δ PPL | 標準大小 | DG大小 | Δ大小 | 標準速度 | DG速度 |
---|---|---|---|---|---|---|---|---|
IQ2_XXS | 11.30 | 9.84 | -12.9% | 2.5G | 2.6G | +0.1G | 234s | 246s |
IQ2_XS | 11.72 | 11.63 | -0.8% | 2.7G | 2.8G | +0.1G | 242s | 246s |
IQ2_S | 14.31 | 9.02 | -36.9% | 2.7G | 2.9G | +0.2G | 238s | 244s |
IQ1_M | 27.46 | 15.41 | -43.9% | 2.2G | 2.5G | +0.3G | 206s | 212s |
IQ1_S | 53.07 | 32.00 | -39.7% | 2.1G | 2.4G | +0.3G | 184s | 209s |
📄 許可證
本模型使用Llama 3社區許可證,具體條款請參考https://llama.meta.com/llama3/license。
引用說明
@article{llama3modelcard,
title={Llama 3 Model Card},
author={AI@Meta},
year={2024},
url = {https://github.com/meta-llama/llama3/blob/main/MODEL_CARD.md}
}
貢獻者
Aaditya Singh; Aaron Grattafiori; Abhimanyu Dubey; Abhinav Jauhri; Abhinav Pandey; Abhishek Kadian; Adam Kelsey; Adi Gangidi; Ahmad Al-Dahle; Ahuva Goldstand; Aiesha Letman; Ajay Menon; Akhil Mathur; Alan Schelten; Alex Vaughan; Amy Yang; Andrei Lupu; Andres Alvarado; Andrew Gallagher; Andrew Gu; Andrew Ho; Andrew Poulton; Andrew Ryan; Angela Fan; Ankit Ramchandani; Anthony Hartshorn; Archi Mitra; Archie Sravankumar; Artem Korenev; Arun Rao; Ashley Gabriel; Ashwin Bharambe; Assaf Eisenman; Aston Zhang; Aurelien Rodriguez; Austen Gregerson; Ava Spataru; Baptiste Roziere; Ben Maurer; Benjamin Leonhardi; Bernie Huang; Bhargavi Paranjape; Bing Liu; Binh Tang; Bobbie Chern; Brani Stojkovic; Brian Fuller; Catalina Mejia Arenas; Chao Zhou; Charlotte Caucheteux; Chaya Nayak; Ching-Hsiang Chu; Chloe Bi; Chris Cai; Chris Cox; Chris Marra; Chris McConnell; Christian Keller; Christoph Feichtenhofer; Christophe Touret; Chunyang Wu; Corinne Wong; Cristian Canton Ferrer; Damien Allonsius; Daniel Kreymer; Daniel Haziza; Daniel Li; Danielle Pintz; Danny Livshits; Danny Wyatt; David Adkins; David Esiobu; David Xu; Davide Testuggine; Delia David; Devi Parikh; Dhruv Choudhary; Dhruv Mahajan; Diana Liskovich; Diego Garcia-Olano; Diego Perino; Dieuwke Hupkes; Dingkang Wang; Dustin Holland; Egor Lakomkin; Elina Lobanova; Xiaoqing Ellen Tan; Emily Dinan; Eric Smith; Erik Brinkman; Esteban Arcaute; Filip Radenovic; Firat Ozgenel; Francesco Caggioni; Frank Seide; Frank Zhang; Gabriel Synnaeve; Gabriella Schwarz; Gabrielle Lee; Gada Badeer; Georgia Anderson; Graeme Nail; Gregoire Mialon; Guan Pang; Guillem Cucurell; Hailey Nguyen; Hannah Korevaar; Hannah Wang; Haroun Habeeb; Harrison Rudolph; Henry Aspegren; Hu Xu; Hugo Touvron; Iga Kozlowska; Igor Molybog; Igor Tufanov; Iliyan Zarov; Imanol Arrieta Ibarra; Irina-Elena Veliche; Isabel Kloumann; Ishan Misra; Ivan Evtimov; Jacob Xu; Jade Copet; Jake Weissman; Jan Geffert; Jana Vranes; Japhet Asher; Jason Park; Jay Mahadeokar; Jean-Baptiste Gaya; Jeet Shah; Jelmer van der Linde; Jennifer Chan; Jenny Hong; Jenya Lee; Jeremy Fu; Jeremy Teboul; Jianfeng Chi; Jianyu Huang; Jie Wang; Jiecao Yu; Joanna Bitton; Joe Spisak; Joelle Pineau; Jon Carvill; Jongsoo Park; Joseph Rocca; Joshua Johnstun; Junteng Jia; Kalyan Vasuden Alwala; Kam Hou U; Kate Plawiak; Kartikeya Upasani; Kaushik Veeraraghavan; Ke Li; Kenneth Heafield; Kevin Stone; Khalid El-Arini; Krithika Iyer; Kshitiz Malik; Kuenley Chiu; Kunal Bhalla; Kyle Huang; Lakshya Garg; Lauren Rantala-Yeary; Laurens van der Maaten; Lawrence Chen; Leandro Silva; Lee Bell; Lei Zhang; Liang Tan; Louis Martin; Lovish Madaan; Luca Wehrstedt; Lukas Blecher; Luke de Oliveira; Madeline Muzzi; Madian Khabsa; Manav Avlani; Mannat Singh; Manohar Paluri; Mark Zuckerberg; Marcin Kardas; Martynas Mankus; Mathew Oldham; Mathieu Rita; Matthew Lennie; Maya Pavlova; Meghan Keneally; Melanie Kambadur; Mihir Patel; Mikayel Samvelyan; Mike Clark; Mike Lewis; Min Si; Mitesh Kumar Singh; Mo Metanat; Mona Hassan; Naman Goyal; Narjes Torabi; Nicolas Usunier; Nikolay Bashlykov; Nikolay Bogoychev; Niladri Chatterji; Ning Dong; Oliver Aobo Yang; Olivier Duchenne; Onur Celebi; Parth Parekh; Patrick Alrassy; Paul Saab; Pavan Balaji; Pedro Rittner; Pengchuan Zhang; Pengwei Li; Petar Vasic; Peter Weng; Polina Zvyagina; Prajjwal Bhargava; Pratik Dubal; Praveen Krishnan; Punit Singh Koura; Qing He; Rachel Rodriguez; Ragavan Srinivasan; Rahul Mitra; Ramon Calderer; Raymond Li; Robert Stojnic; Roberta Raileanu; Robin Battey; Rocky Wang; Rohit Girdhar; Rohit Patel; Romain Sauvestre; Ronnie Polidoro; Roshan Sumbaly; Ross Taylor; Ruan Silva; Rui Hou; Rui Wang; Russ Howes; Ruty Rinott; Saghar Hosseini; Sai Jayesh Bondu; Samyak Datta; Sanjay Singh; Sara Chugh; Sargun Dhillon; Satadru Pan; Sean Bell; Sergey Edunov; Shaoliang Nie; Sharan Narang; Sharath Raparthy; Shaun Lindsay; Sheng Feng; Sheng Shen; Shenghao Lin; Shiva Shankar; Shruti Bhosale; Shun Zhang; Simon Vandenhende; Sinong Wang; Seohyun Sonia Kim; Soumya Batra; Sten Sootla; Steve Kehoe; Suchin Gururangan; Sumit Gupta; Sunny Virk; Sydney Borodinsky; Tamar Glaser; Tamar Herman; Tamara Best; Tara Fowler; Thomas Georgiou; Thomas Scialom; Tianhe Li; Todor Mihaylov; Tong Xiao; Ujjwal Karn; Vedanuj Goswami; Vibhor Gupta; Vignesh Ramanathan; Viktor Kerkez; Vinay Satish Kumar; Vincent Gonguet; Vish Vogeti; Vlad Poenaru; Vlad Tiberiu Mihailescu; Vladan Petrovic; Vladimir Ivanov; Wei Li; Weiwei Chu; Wenhan Xiong; Wenyin Fu; Wes Bouaziz; Whitney Meers; Will Constable; Xavier Martinet; Xiaojian Wu; Xinbo Gao; Xinfeng Xie; Xuchao Jia; Yaelle Goldschlag; Yann LeCun; Yashesh Gaur; Yasmine Babaei; Ye Qi; Yenda Li; Yi Wen; Yiwen Song; Youngjin Nam; Yuchen Hao; Yuchen Zhang; Yun Wang; Yuning Mao; Yuzi He; Zacharie Delpierre Coudert; Zachary DeVito; Zahra Hankir; Zhaoduo Wen; Zheng Yan; Zhengxing Chen; Zhenyu Yang; Zoe Papakipos
注意事項
⚠️ 重要提示
使用本模型時,請遵守適用法律法規和可接受使用政策。同時,由於模型可能存在一定的侷限性,在部署應用之前,請進行充分的安全測試和調整。
💡 使用建議
根據自己的硬件和內存情況選擇合適的模型格式。在使用過程中,可以根據需要調整模型的參數,以獲得更好的生成效果。



