🚀 Llama 4模型
Llama 4是一系列原生多模態AI模型,支持文本和多模態交互體驗。這些模型採用混合專家架構,在文本和圖像理解方面表現卓越。
🚀 快速開始
線性化專家版本
這是該模型的4位量化版本,專家模塊被拆分併線性化,以便與PEFT/LoRA更好地配合使用。若要在Axolotl中使用,只需在YAML文件中添加以下內容:
llama4_linearized_experts: true
Axolotl示例YAML文件
使用transformers庫調用
請確保已安裝transformers v4.51.0
,或使用pip install -U transformers
進行升級。
from transformers import pipeline
import torch
model_id = "meta-llama/Llama-4-Scout-17B-16E"
pipe = pipeline(
"text-generation",
model=model_id,
device_map="auto",
torch_dtype=torch.bfloat16,
)
output = pipe("Roses are red,", max_new_tokens=200)
✨ 主要特性
- 多語言支持:支持阿拉伯語、英語、法語、德語、印地語、印尼語、意大利語、葡萄牙語、西班牙語、他加祿語、泰語和越南語等多種語言。
- 多模態能力:原生支持文本和圖像理解,可用於視覺識別、圖像推理、圖像描述等任務。
- 高性能表現:在多個基準測試中表現出色,如MMLU、MATH、MBPP等。
- 靈活部署:提供不同量化版本,可根據硬件資源選擇合適的版本進行部署。
📦 安裝指南
使用前請確保已安裝transformers v4.51.0
,可使用以下命令進行安裝或升級:
pip install -U transformers
💻 使用示例
基礎用法
from transformers import pipeline
import torch
model_id = "meta-llama/Llama-4-Scout-17B-16E"
pipe = pipeline(
"text-generation",
model=model_id,
device_map="auto",
torch_dtype=torch.bfloat16,
)
output = pipe("Roses are red,", max_new_tokens=200)
📚 詳細文檔
模型信息
屬性 |
詳情 |
模型開發者 |
Meta |
模型架構 |
自迴歸語言模型,採用混合專家(MoE)架構,並結合早期融合實現原生多模態能力 |
訓練數據 |
公開可用數據、授權數據以及Meta產品和服務中的信息,包括Instagram和Facebook上的公開帖子以及用戶與Meta AI的交互數據。更多信息請參考隱私中心 |
模型參數 |
Llama 4 Scout:170億(激活),1090億(總計);Llama 4 Maverick:170億(激活),4000億(總計) |
輸入模態 |
多語言文本和圖像 |
輸出模態 |
多語言文本和代碼 |
上下文長度 |
Llama 4 Scout:10M;Llama 4 Maverick:1M |
標記數量 |
Llama 4 Scout:~40T;Llama 4 Maverick:~22T |
知識截止日期 |
2024年8月 |
預期用途
- 預期用例:適用於商業和研究領域的多語言應用,如對話式助手、視覺推理、自然語言生成等。
- 超出範圍:違反適用法律法規(包括貿易合規法律)的使用;違反可接受使用政策和Llama 4社區許可協議的使用;使用不支持的語言或功能。
硬件和軟件
- 訓練因素:使用自定義訓練庫、Meta定製的GPU集群和生產基礎設施進行預訓練。微調、量化、標註和評估也在生產基礎設施上進行。
- 訓練能耗:模型預訓練累計使用了738萬個H100-80GB GPU小時的計算資源。
訓練數據
- 概述:Llama 4 Scout在約40萬億個標記的多模態數據上進行預訓練,Llama 4 Maverick在約22萬億個標記的多模態數據上進行預訓練。
- 數據新鮮度:預訓練數據的截止日期為2024年8月。
基準測試
模型類型 |
類別 |
基準測試 |
樣本數量 |
指標 |
Llama 3.1 70B |
Llama 3.1 405B |
Llama 4 Scout |
Llama 4 Maverick |
預訓練模型 |
推理與知識 |
MMLU |
5 |
macro_avg/acc_char |
79.3 |
85.2 |
79.6 |
85.5 |
|
|
MMLU-Pro |
5 |
macro_avg/em |
53.8 |
61.6 |
58.2 |
62.9 |
|
|
MATH |
4 |
em_maj1@1 |
41.6 |
53.5 |
50.3 |
61.2 |
|
代碼 |
MBPP |
3 |
pass@1 |
66.4 |
74.4 |
67.8 |
77.6 |
|
多語言 |
TydiQA |
1 |
average/f1 |
29.9 |
34.3 |
31.5 |
31.7 |
|
圖像 |
ChartQA |
0 |
relaxed_accuracy |
無多模態支持 |
|
83.4 |
85.3 |
|
|
DocVQA |
0 |
anls |
|
|
89.4 |
91.6 |
指令微調模型 |
圖像推理 |
MMMU |
0 |
accuracy |
無多模態支持 |
|
69.4 |
73.4 |
|
|
MMMU Pro^ |
0 |
accuracy |
|
|
52.2 |
59.6 |
|
|
MathVista |
0 |
accuracy |
|
|
70.7 |
73.7 |
|
圖像理解 |
ChartQA |
0 |
relaxed_accuracy |
|
|
88.8 |
90.0 |
|
|
DocVQA (test) |
0 |
anls |
|
|
94.4 |
94.4 |
|
編碼 |
LiveCodeBench (10/01/2024-02/01/2025) |
0 |
pass@1 |
33.3 |
27.7 |
32.8 |
43.4 |
|
推理與知識 |
MMLU Pro |
0 |
macro_avg/acc |
68.9 |
73.4 |
74.3 |
80.5 |
|
|
GPQA Diamond |
0 |
accuracy |
50.5 |
49.0 |
57.2 |
69.8 |
|
多語言 |
MGSM |
0 |
average/em |
91.1 |
91.6 |
90.6 |
92.3 |
|
長上下文 |
MTOB (half book) eng->kgv/kgv->eng |
- |
chrF |
上下文窗口為128K |
|
42.2/36.6 |
54.0/46.4 |
|
|
MTOB (full book) eng->kgv/kgv->eng |
- |
chrF |
|
|
39.7/36.3 |
50.8/46.7 |
^MMMU Pro報告的數字是標準任務和視覺任務的平均值
量化
Llama 4 Scout模型以BF16權重發布,但可通過即時int4量化適配單個H100 GPU;Llama 4 Maverick模型同時提供BF16和FP8量化權重。FP8量化權重可在單個H100 DGX主機上運行,同時保持模型質量。我們還提供了即時int4量化代碼,以減少性能損失。
安全保障
- 模型級微調:通過安全微調,為開發者提供安全、強大的模型,減少部署安全AI系統的工作量。
- Llama 4系統保護:提供系統級保護措施,如Llama Guard、Prompt Guard和Code Shield,幫助開發者降低安全和風險。
- 評估:對Llama模型進行常見用例和特定能力的評估,確保模型的安全性和可靠性。
社區
- 安全標準:積極參與開源聯盟,為安全標準化和透明度做出貢獻。
- 影響贈款:設立Llama影響贈款計劃,支持對社會有益的應用。
- 資源支持:提供輸出報告機制和漏洞賞金計劃,藉助社區力量不斷改進Llama技術。
🔧 技術細節
訓練因素
使用自定義訓練庫、Meta定製的GPU集群和生產基礎設施進行預訓練。微調、量化、標註和評估也在生產基礎設施上進行。
訓練能耗
模型預訓練累計使用了738萬個H100-80GB GPU小時的計算資源。
安全微調
- 微調數據:採用多方面的數據收集方法,結合人工生成數據和合成數據,降低安全風險。
- 拒絕率:降低模型對良性提示的拒絕率,提高模型的可用性。
- 語氣:改進拒絕語氣,使模型回答更自然。
- 系統提示:Llama 4更易於引導,系統提示可有效減少錯誤拒絕和模板化語言。
📄 許可證
Llama 4使用自定義商業許可證,即Llama 4社區許可協議,詳情請見:https://github.com/meta-llama/llama-models/blob/main/models/llama4/LICENSE
注意事項和侷限性
Llama 4是一項新技術,使用時可能存在風險。在部署應用前,開發者應進行安全測試和微調。同時,鼓勵開源社區使用Llama進行研究和開發,以應對新興風險。更多信息請參考開發者使用指南:AI保護、Llama保護解決方案和其他資源。
⚠️ 重要提示
使用Llama 4時,請遵守適用法律法規和Llama 4社區許可協議。同時,注意模型可能產生不準確或不當的回答。
💡 使用建議
在部署應用前,建議進行充分的安全測試和微調,以確保模型的安全性和可靠性。同時,可參考社區提供的資源和最佳實踐,提高模型的使用效果。