模型概述
模型特點
模型能力
使用案例
🚀 Meta Llama 3 - 8B Instruct 大語言模型
Meta Llama 3 - 8B Instruct 是一款強大的大語言模型,經過量化處理後,能在有限計算資源的設備上高效運行。它在對話任務中表現出色,適用於商業和研究場景。
🚀 快速開始
本倉庫包含兩個版本的 Meta-Llama-3-70B-Instruct,可分別與 transformers
庫和原始的 llama3
代碼庫配合使用。
使用 transformers 庫
以下是使用 transformers
庫的代碼示例:
import transformers
import torch
model_id = "meta-llama/Meta-Llama-3-70B-Instruct"
pipeline = transformers.pipeline(
"text-generation",
model=model_id,
model_kwargs={"torch_dtype": torch.bfloat16},
device="cuda",
)
messages = [
{"role": "system", "content": "You are a pirate chatbot who always responds in pirate speak!"},
{"role": "user", "content": "Who are you?"},
]
prompt = pipeline.tokenizer.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True
)
terminators = [
tokenizer.eos_token_id,
tokenizer.convert_tokens_to_ids("<|eot_id|>")
]
outputs = pipeline(
prompt,
max_new_tokens=256,
eos_token_id=terminators,
do_sample=True,
temperature=0.6,
top_p=0.9,
)
print(outputs[0]["generated_text"][len(prompt):])
使用原始的 llama3
代碼庫
請遵循 倉庫 中的說明進行操作。
若要下載原始檢查點,請參考以下使用 huggingface-cli
的示例命令:
huggingface-cli download meta-llama/Meta-Llama-3-70B-Instruct --include "original/*" --local-dir Meta-Llama-3-70B-Instruct
對於 Hugging Face 的支持,我們建議使用 transformers
或 TGI,但類似的命令也適用。
✨ 主要特性
- 量化版本:該模型是 Meta Llama 3 - 8B Instruct 大語言模型的 8 位量化版本,量化處理可減小模型大小並提高推理速度,適合在計算資源有限的設備上部署。
- 優化對話:Llama 3 指令調優模型針對對話用例進行了優化,在常見行業基準測試中表現優於許多現有的開源聊天模型。
- 多尺寸選擇:Llama 3 有 8B 和 70B 參數兩種尺寸,提供預訓練和指令調優兩種變體。
- 多用途輸出:模型輸入僅為文本,輸出包括文本和代碼。
📦 安裝指南
文檔未提及具體安裝步驟,可參考上述使用 transformers
庫和原始 llama3
代碼庫的使用說明進行操作。
📚 詳細文檔
模型詳情
Meta 開發併發布了 Meta Llama 3 系列大語言模型,這是一組預訓練和指令調優的生成式文本模型,有 8B 和 70B 兩種參數規模。
屬性 | 詳情 |
---|---|
模型開發者 | Meta |
模型變體 | Llama 3 有 8B 和 70B 參數兩種規模,提供預訓練和指令調優兩種變體 |
輸入 | 僅接受文本輸入 |
輸出 | 生成文本和代碼 |
模型架構 | Llama 3 是一種自迴歸語言模型,採用優化的 Transformer 架構。調優版本使用監督微調(SFT)和基於人類反饋的強化學習(RLHF)來符合人類對有用性和安全性的偏好 |
訓練數據 | 新的公開在線數據組合 |
上下文長度 | 8k |
GQA | 是 |
令牌數量 | 超過 15T |
知識截止日期 | 8B 模型為 2023 年 3 月,70B 模型為 2023 年 12 月 |
模型發佈日期 | 2024 年 4 月 18 日 |
狀態 | 這是一個基於離線數據集訓練的靜態模型。隨著我們根據社區反饋改進模型安全性,未來將發佈調優模型的新版本 |
許可證 | 可在 https://llama.meta.com/llama3/license 獲取自定義商業許可證 |
預期用途
- 預期用例:Llama 3 旨在用於英語的商業和研究用途。指令調優模型適用於類似助手的聊天場景,而預訓練模型可用於各種自然語言生成任務。
- 超出範圍的使用:禁止以任何違反適用法律法規(包括貿易合規法律)的方式使用。禁止以違反可接受使用政策和 Llama 3 社區許可證的任何其他方式使用。禁止使用英語以外的語言。
⚠️ 重要提示
開發者可以在遵守 Llama 3 社區許可證和可接受使用政策的前提下,對 Llama 3 模型進行微調以支持英語以外的語言。
硬件和軟件
- 訓練因素:我們使用自定義訓練庫、Meta 的研究超級集群和生產集群進行預訓練。微調、註釋和評估也在第三方雲計算機上進行。 | 模型 | 時間(GPU 小時) | 功耗(W) | 碳排放(tCO2eq) | |------|------|------|------| | Llama 3 8B | 130 萬 | 700 | 390 | | Llama 3 70B | 640 萬 | 700 | 1900 | | 總計 | 770 萬 | - | 2290 |
預訓練期間的二氧化碳排放:時間指每個模型訓練所需的總 GPU 時間。功耗指所用 GPU 設備的峰值功率容量,並根據功率使用效率進行調整。Meta 的可持續發展計劃直接抵消了 100% 的排放,由於我們公開發布了這些模型,其他人無需承擔預訓練成本。
訓練數據
- 概述:Llama 3 在超過 15 萬億個公開可用數據源的令牌上進行了預訓練。微調數據包括公開可用的指令數據集以及超過 1000 萬個手動註釋的示例。預訓練和微調數據集均不包含 Meta 用戶數據。
- 數據新鮮度:預訓練數據的截止日期分別為 7B 模型的 2023 年 3 月和 70B 模型的 2023 年 12 月。
基準測試
在本節中,我們報告了 Llama 3 模型在標準自動基準測試中的結果。所有評估均使用我們的內部評估庫。有關方法的詳細信息,請參閱 此處。
基礎預訓練模型
類別 | 基準測試 | Llama 3 8B | Llama2 7B | Llama2 13B | Llama 3 70B | Llama2 70B |
---|---|---|---|---|---|---|
通用 | MMLU (5-shot) | 66.6 | 45.7 | 53.8 | 79.5 | 69.7 |
通用 | AGIEval English (3 - 5 shot) | 45.9 | 28.8 | 38.7 | 63.0 | 54.8 |
通用 | CommonSenseQA (7-shot) | 72.6 | 57.6 | 67.6 | 83.8 | 78.7 |
通用 | Winogrande (5-shot) | 76.1 | 73.3 | 75.4 | 83.1 | 81.8 |
通用 | BIG-Bench Hard (3-shot, CoT) | 61.1 | 38.1 | 47.0 | 81.3 | 65.7 |
通用 | ARC-Challenge (25-shot) | 78.6 | 53.7 | 67.6 | 93.0 | 85.3 |
知識推理 | TriviaQA-Wiki (5-shot) | 78.5 | 72.1 | 79.6 | 89.7 | 87.5 |
閱讀理解 | SQuAD (1-shot) | 76.4 | 72.2 | 72.1 | 85.6 | 82.6 |
閱讀理解 | QuAC (1-shot, F1) | 44.4 | 39.6 | 44.9 | 51.1 | 49.4 |
閱讀理解 | BoolQ (0-shot) | 75.7 | 65.5 | 66.9 | 79.0 | 73.1 |
閱讀理解 | DROP (3-shot, F1) | 58.4 | 37.9 | 49.8 | 79.7 | 70.2 |
指令調優模型
基準測試 | Llama 3 8B | Llama 2 7B | Llama 2 13B | Llama 3 70B | Llama 2 70B |
---|---|---|---|---|---|
MMLU (5-shot) | 68.4 | 34.1 | 47.8 | 82.0 | 52.9 |
GPQA (0-shot) | 34.2 | 21.7 | 22.3 | 39.5 | 21.0 |
HumanEval (0-shot) | 62.2 | 7.9 | 14.0 | 81.7 | 25.6 |
GSM-8K (8-shot, CoT) | 79.6 | 25.7 | 77.4 | 93.0 | 57.5 |
MATH (4-shot, CoT) | 30.0 | 3.8 | 6.7 | 50.4 | 11.6 |
責任與安全
我們認為開放的人工智能方法能夠帶來更好、更安全的產品,加速創新,並擴大整體市場。我們致力於負責任的人工智能開發,並採取了一系列措施來限制濫用和危害,支持開源社區。 基礎模型是一種功能廣泛的技術,旨在用於各種應用。它們並非為滿足所有開發者在所有用例中的安全級別偏好而設計,因為這些偏好本質上會因不同應用而異。 負責任的大語言模型應用部署需要在應用開發的整個過程中實施一系列安全最佳實踐,從模型預訓練、微調,到部署包含保障措施的系統,以根據具體用例和受眾的需求定製安全級別。
作為 Llama 3 發佈的一部分,我們更新了 負責任使用指南,概述了開發者為其應用實施模型和系統級安全的步驟和最佳實踐。我們還提供了一系列資源,包括 Meta Llama Guard 2 和 Code Shield 保障措施。這些工具已被證明能顯著降低大語言模型系統的殘餘風險,同時保持較高的實用性。我們鼓勵開發者根據自身需求調整和部署這些保障措施,並提供了一個 參考實現 供您參考。
Llama 3-Instruct
正如《負責任使用指南》中所述,模型的有用性和對齊性之間可能存在一定的權衡。開發者應根據具體用例和受眾,謹慎權衡對齊性和有用性的益處。在使用 Llama 模型時,開發者應注意殘餘風險,並根據需要利用額外的安全工具,以達到適合其用例的安全標準。
安全性
對於我們的指令調優模型,我們進行了廣泛的紅隊測試、對抗性評估,並實施了安全緩解技術,以降低殘餘風險。與任何大語言模型一樣,殘餘風險可能仍然存在,我們建議開發者在其用例的背景下評估這些風險。同時,我們正在與社區合作,使人工智能安全基準標準更加透明、嚴格和可解釋。
拒絕回答
除了殘餘風險,我們還非常重視模型對良性提示的拒絕回答問題。過度拒絕不僅會影響用戶體驗,在某些情況下甚至可能有害。我們聽取了開發者社區的反饋,並改進了微調過程,確保 Llama 3 比 Llama 2 更不可能錯誤地拒絕回答提示。 我們建立了內部基準測試,並開發了緩解措施,以限制錯誤拒絕回答的情況,使 Llama 3 成為我們迄今為止最有用的模型。
負責任的發佈
除了上述負責任使用的考慮因素外,我們遵循了嚴格的流程,在做出發佈決定之前,採取了額外的措施來防止濫用和應對關鍵風險。
濫用
如果您訪問或使用 Llama 3,即表示您同意《可接受使用政策》。該政策的最新版本可在 https://llama.meta.com/llama3/use-policy/ 查看。
關鍵風險
- CBRNE(化學、生物、放射、核和高當量爆炸物):我們對模型在這一領域的安全性進行了雙重評估:
- 在模型訓練期間進行迭代測試,評估與 CBRNE 威脅和其他對抗性風險相關的響應安全性。
- 邀請外部 CBRNE 專家進行提升測試,評估模型準確提供專家知識並減少潛在 CBRNE 濫用障礙的能力,參考不使用模型時通過網絡搜索所能達到的效果。
- 網絡安全:我們使用 Meta 的網絡安全評估套件 CyberSecEval 對 Llama 3 進行了評估,測量了 Llama 3 在作為編碼助手時建議不安全代碼的傾向,以及在執行網絡攻擊請求時的合規性,其中攻擊定義遵循行業標準 MITRE ATT&CK 網絡攻擊本體。在不安全編碼和網絡攻擊有用性測試中,Llama 3 的表現與 具有同等編碼能力的模型 相當或更安全。
- 兒童安全:我們組建了專家團隊進行兒童安全風險評估,以評估模型產生可能導致兒童安全風險輸出的能力,並通過微調提供必要和適當的風險緩解建議。我們利用這些專家紅隊測試擴展了評估基準的覆蓋範圍,貫穿 Llama 3 模型的開發過程。對於 Llama 3,我們採用基於目標的方法進行了新的深入測試,以評估模型在多個攻擊向量下的風險。我們還與內容專家合作進行紅隊測試,評估潛在違規內容,同時考慮特定市場的細微差別和經驗。
社區
生成式人工智能安全需要專業知識和工具,我們相信開放社區的力量能夠加速其發展。我們是開放聯盟的積極成員,包括 AI Alliance、Partnership in AI 和 MLCommons,積極為安全標準化和透明度做出貢獻。我們鼓勵社區採用 MLCommons 概念驗證評估等分類法,以促進安全和內容評估的合作與透明度。我們的 Purple Llama 工具已開源供社區使用,並廣泛分發至包括雲服務提供商在內的生態系統合作伙伴。我們鼓勵社區為我們的 GitHub 倉庫 做出貢獻。 最後,我們提供了一系列資源,包括 輸出報告機制 和 漏洞賞金計劃,以在社區的幫助下不斷改進 Llama 技術。
🔧 技術細節
Llama 3 是一種自迴歸語言模型,採用優化的 Transformer 架構。調優版本使用監督微調(SFT)和基於人類反饋的強化學習(RLHF)來符合人類對有用性和安全性的偏好。模型在超過 15 萬億個公開可用數據源的令牌上進行了預訓練,微調數據包括公開可用的指令數據集以及超過 1000 萬個手動註釋的示例。
📄 許可證
本模型採用 MIT 許可證,可在 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}
}



