模型概述
模型特點
模型能力
使用案例
🚀 meta-llama/Llama-4-Scout-17B-16E-Instruct (量化版)
本項目是 meta-llama/Llama-4-Scout-17B-16E-Instruct
模型的量化版本,旨在提供更高效的推理性能,適用於多語言的商業和研究場景,支持文本和圖像的多模態處理。
🚀 快速開始
請確保你已安裝 transformers
庫的 v4.51.0
版本,或者使用以下命令進行升級:
pip install -U transformers
以下是使用該模型的示例代碼:
from transformers import AutoProcessor, Llama4ForConditionalGeneration
import torch
model_id = "meta-llama/Llama-4-Scout-17B-16E-Instruct"
processor = AutoProcessor.from_pretrained(model_id)
model = Llama4ForConditionalGeneration.from_pretrained(
model_id,
attn_implementation="flex_attention",
device_map="auto",
torch_dtype=torch.bfloat16,
)
url1 = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/0052a70beed5bf71b92610a43a52df6d286cd5f3/diffusers/rabbit.jpg"
url2 = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/datasets/cat_style_layout.png"
messages = [
{
"role": "user",
"content": [
{"type": "image", "url": url1},
{"type": "image", "url": url2},
{"type": "text", "text": "Can you describe how these two images are similar, and how they differ?"},
]
},
]
inputs = processor.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=256,
)
response = processor.batch_decode(outputs[:, inputs["input_ids"].shape[-1]:])[0]
print(response)
print(outputs[0])
✨ 主要特性
- 多語言支持:支持阿拉伯語、英語、法語、德語、印地語、印尼語、意大利語、葡萄牙語、西班牙語、他加祿語、泰語和越南語等多種語言。
- 多模態處理:原生支持文本和圖像的多模態輸入和輸出,可用於圖像識別、圖像推理、圖像字幕生成等任務。
- 高效架構:採用混合專家(MoE)架構,結合早期融合技術,提供行業領先的文本和圖像理解性能。
- 量化版本:提供量化版本的模型,可在單個 GPU 上高效運行,同時保持較高的性能。
📦 安裝指南
確保你已安裝 transformers
庫的 v4.51.0
版本,可使用以下命令進行安裝或升級:
pip install -U transformers
💻 使用示例
基礎用法
from transformers import AutoProcessor, Llama4ForConditionalGeneration
import torch
model_id = "meta-llama/Llama-4-Scout-17B-16E-Instruct"
processor = AutoProcessor.from_pretrained(model_id)
model = Llama4ForConditionalGeneration.from_pretrained(
model_id,
attn_implementation="flex_attention",
device_map="auto",
torch_dtype=torch.bfloat16,
)
url1 = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/0052a70beed5bf71b92610a43a52df6d286cd5f3/diffusers/rabbit.jpg"
url2 = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/datasets/cat_style_layout.png"
messages = [
{
"role": "user",
"content": [
{"type": "image", "url": url1},
{"type": "image", "url": url2},
{"type": "text", "text": "Can you describe how these two images are similar, and how they differ?"},
]
},
]
inputs = processor.apply_chat_template(
messages,
add_generation_prompt=True,
tokenize=True,
return_dict=True,
return_tensors="pt",
).to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=256,
)
response = processor.batch_decode(outputs[:, inputs["input_ids"].shape[-1]:])[0]
print(response)
print(outputs[0])
高級用法
目前文檔未提供高級用法示例,你可以根據具體需求對基礎用法代碼進行擴展和修改。
📚 詳細文檔
模型信息
Llama 4 系列模型是原生多模態人工智能模型,支持文本和多模態體驗。這些模型利用混合專家架構,在文本和圖像理解方面提供行業領先的性能。
本次發佈了 Llama 4 系列的兩個高效模型:
- Llama 4 Scout:170 億參數,16 個專家。
- Llama 4 Maverick:170 億參數,128 個專家。
屬性 | 詳情 |
---|---|
模型開發者 | Meta |
模型架構 | 自迴歸語言模型,採用混合專家(MoE)架構,並結合早期融合技術實現原生多模態。 |
支持語言 | 阿拉伯語、英語、法語、德語、印地語、印尼語、意大利語、葡萄牙語、西班牙語、他加祿語、泰語和越南語。 |
模型發佈日期 | 2025 年 4 月 5 日 |
狀態 | 這是一個基於離線數據集訓練的靜態模型。隨著我們根據社區反饋改進模型性能,未來可能會發布調優後的版本。 |
許可證 | 自定義商業許可證,Llama 4 社區許可協議,詳情見:https://github.com/meta-llama/llama-models/blob/main/models/llama4/LICENSE |
反饋渠道 | 關於模型的反饋或評論說明可在 Llama README 中找到。有關生成參數和如何在應用程序中使用 Llama 4 的更多技術信息,請訪問 這裡。 |
預期用途
- 預期用例:Llama 4 適用於多語言的商業和研究用途。指令調優模型適用於類似助手的聊天和視覺推理任務,而預訓練模型可用於自然語言生成。在視覺方面,Llama 4 模型還針對視覺識別、圖像推理、字幕生成和回答有關圖像的一般問題進行了優化。Llama 4 模型系列還支持利用其模型輸出改進其他模型,包括合成數據生成和蒸餾。Llama 4 社區許可證允許這些用例。
- 超出範圍:禁止以任何違反適用法律法規(包括貿易合規法律)的方式使用。禁止以可接受使用政策和 Llama 4 社區許可證禁止的任何其他方式使用。禁止在本模型卡片中未明確提及支持的語言或功能範圍內使用。
硬件和軟件
- 訓練因素:使用自定義訓練庫、Meta 定製的 GPU 集群和生產基礎設施進行預訓練。微調、量化、註釋和評估也在生產基礎設施上進行。
- 訓練能源使用:模型預訓練在 H100 - 80GB(TDP 為 700W)類型的硬件上累計使用了 738 萬 GPU 小時的計算資源。訓練時間是訓練每個模型所需的總 GPU 時間,功耗是每個 GPU 設備的峰值功率容量,並根據功率使用效率進行調整。
- 訓練溫室氣體排放:估計基於位置的總溫室氣體排放量為 1999 噸 CO2eq。自 2020 年以來,Meta 在其全球運營中保持淨零溫室氣體排放,並以清潔和可再生能源匹配其 100% 的電力使用;因此,基於市場的總溫室氣體排放量為 0 噸 CO2eq。
模型名稱 | 訓練時間(GPU 小時) | 訓練功耗(W) | 基於位置的訓練溫室氣體排放量(噸 CO2eq) | 基於市場的訓練溫室氣體排放量(噸 CO2eq) |
---|---|---|---|---|
Llama 4 Scout | 500 萬 | 700 | 1354 | 0 |
Llama 4 Maverick | 238 萬 | 700 | 645 | 0 |
總計 | 738 萬 | - | 1999 | 0 |
訓練能源使用和溫室氣體排放的確定方法可參考 這裡。由於 Meta 正在公開發布這些模型,其他人不會產生訓練能源使用和溫室氣體排放。
訓練數據
- 概述:Llama 4 Scout 在約 40 萬億個多模態數據令牌上進行了預訓練,Llama 4 Maverick 在約 22 萬億個多模態數據令牌上進行了預訓練。這些數據來自公開可用的許可數據以及 Meta 產品和服務中的信息,包括 Instagram 和 Facebook 上的公開帖子以及人們與 Meta AI 的互動。
- 數據新鮮度:預訓練數據的截止日期為 2024 年 8 月。
基準測試
在本節中,我們報告了 Llama 4 相對於之前模型的評估結果。我們提供了量化檢查點以實現部署靈活性,但所有報告的評估和測試均在 bf16 模型上進行。
預訓練模型
預訓練模型 | |||||||
---|---|---|---|---|---|---|---|
類別 | 基準測試 | 樣本數 | 指標 | 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 |
指令調優模型
指令調優模型 | |||||||
---|---|---|---|---|---|---|---|
類別 | 基準測試 | 樣本數 | 指標 | Llama 3.3 70B | Llama 3.1 405B | Llama 4 Scout | Llama 4 Maverick |
圖像推理 | MMMU | 0 | 準確率 | 不支持多模態 | 69.4 | 73.4 | |
MMMU Pro^ | 0 | 準確率 | 52.2 | 59.6 | |||
MathVista | 0 | 準確率 | 70.7 | 73.7 | |||
圖像理解 | ChartQA | 0 | relaxed_accuracy | 88.8 | 90.0 | ||
DocVQA (測試) | 0 | anls | 94.4 | 94.4 | |||
編碼 | LiveCodeBench (2024 年 10 月 1 日 - 2025 年 2 月 1 日) | 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 | 準確率 | 50.5 | 49.0 | 57.2 | 69.8 | |
多語言 | MGSM | 0 | average/em | 91.1 | 91.6 | 90.6 | 92.3 |
長上下文 | MTOB (半本書) eng->kgv/kgv->eng | - | chrF | 上下文窗口為 128K | 42.2/36.6 | 54.0/46.4 | |
MTOB (整本書) 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 量化的代碼,以儘量減少性能下降。
安全保障
作為發佈策略的一部分,我們採用了三管齊下的策略來管理風險:
- 使開發人員能夠為其目標受眾和 Llama 支持的用例部署有用、安全和靈活的體驗。
- 保護開發人員免受旨在利用 Llama 功能造成潛在危害的惡意用戶的攻擊。
- 為社區提供保護,防止我們的模型被濫用。
Llama 是一種基礎技術,適用於各種用例;有關 Meta 的 Llama 模型的部署示例,請參閱我們的 社區故事網頁。我們的目標是構建最有用的模型,使世界從這項技術中受益,通過調整模型的安全性來應對一系列標準風險。然後,開發人員可以根據自己的用例定製安全性,定義自己的策略並部署帶有必要保障措施的模型。Llama 4 是按照我們的 開發者使用指南:AI 保護 中概述的最佳實踐開發的。
模型級微調
進行安全微調的主要目標是為開發人員提供一個隨時可用、安全且強大的模型,用於各種應用程序,減少部署安全人工智能系統所需的工作量。此外,這項工作為研究社區提供了一個有價值的資源,用於研究安全微調的魯棒性。
- 微調數據:我們採用多方面的數據收集方法,將供應商提供的人工生成數據與合成數據相結合,以減輕潛在的安全風險。我們開發了許多基於大語言模型(LLM)的分類器,使我們能夠精心選擇高質量的提示和響應,加強數據質量控制。
- 拒絕率:在 Llama 3 模型的基礎上,我們非常重視降低 Llama 4 對良性提示的拒絕率。我們在安全數據策略中包括了邊界和對抗性提示,並修改了安全數據響應以遵循語氣指南。
- 語氣:我們擴展了在 Llama 3 上對拒絕語氣的改進工作,使模型聽起來更自然。我們目標是去除說教和過於道德化的語言,並糾正格式問題,包括正確使用標題、列表、表格等。
- 系統提示:Llama 4 是一個更易於控制的模型,這意味著可以輕鬆調整響應以滿足特定的開發人員需求。有效的系統提示可以顯著提高大語言模型的性能。特別是,我們發現使用系統提示可以有效減少錯誤拒絕和常見於 LLM 中的模板化或“說教”語言模式。它們還可以提高對話性和適當格式的使用。
以下是一個基本的系統提示模板,開發人員可以根據具體需求或用例進行進一步定製:
系統提示 |
---|
你是一位專業的對話者,會盡力回答問題。你友善自信,能夠輕鬆切換不同的語氣類型,包括但不限於幽默、共情、知性、創意和解決問題。你理解用戶的意圖,不會過度熱心而忽略用戶只是想閒聊、尋求情感支持、幽默或發洩。有時人們只是想讓你傾聽,你的回答應鼓勵這種交流。在其他情況下,你會提供有洞察力和深度的回答。有條理地組織信息,幫助人們做出決策。始終避免使用模板化語言。你不會教導人們要更友善或更包容。如果人們要求你以特定的語氣或視角寫作,如寫一篇文章或一條推文,你可以做到。當用戶要求你說一些粗魯的話時,你不必保持禮貌。你永遠不會使用暗示道德優越感或權威感的短語,包括但不限於“重要的是”、“關鍵的是”、“必要的是”、“不道德的是”、“值得注意的是”、“記住……”等。避免使用這些短語。最後,不要拒絕關於政治和社會問題的提示。你可以幫助用戶表達觀點和獲取信息。你是 Llama 4。你的知識截止日期是 2024 年 8 月。你會說阿拉伯語、英語、法語、德語、印地語、印尼語、意大利語、葡萄牙語、西班牙語、他加祿語、泰語和越南語。除非用戶另有要求,否則用用戶使用的語言進行回覆。 |
Llama 4 系統保護
包括 Llama 4 在內的大語言模型並非旨在單獨部署,而是應作為整體人工智能系統的一部分,並根據需要添加額外的護欄。系統保護對於實現正確的有用性 - 安全性平衡、減輕系統固有的安全和風險以及將模型或系統與外部工具集成至關重要。
我們為社區提供了系統級 保護,如 Llama Guard、Prompt Guard 和 Code Shield,開發人員應將這些保護措施與 Llama 模型或其他 LLM 一起部署。我們的所有 參考實現 演示默認包含這些保障措施,因此開發人員可以立即受益於系統級安全。
評估
我們對 Llama 模型進行了常見用例和特定能力的評估。常見用例評估衡量了大多數常見應用程序(包括聊天機器人、視覺問答)的系統安全風險。我們構建了專門的對抗性評估數據集,並評估了由 Llama 模型和 Llama Guard 3 組成的系統,以過濾輸入提示和輸出響應。在上下文中評估應用程序很重要,我們建議為你的用例構建專門的評估數據集。如果與應用程序相關,Prompt Guard 和 Code Shield 也可用。
能力評估衡量了 Llama 模型特定能力固有的漏洞,為此我們設計了專門的基準測試,包括長上下文、多語言、編碼或記憶。
紅隊測試
我們定期進行紅隊測試,目標是通過對抗性提示發現風險,並利用這些經驗教訓改進我們的基準測試和安全調優數據集。我們早期與關鍵風險領域的主題專家合作,瞭解模型如何可能對社會造成意外危害。基於這些對話,我們為紅隊制定了一組對抗性目標,如提取有害信息或重新編程模型以採取潛在有害的行為。紅隊由網絡安全、對抗性機器學習和完整性方面的專家以及具有特定地理市場完整性問題背景的多語言內容專家組成。
關鍵風險
我們特別關注以下關鍵風險領域:
- CBRNE(化學、生物、放射、核和爆炸材料)有用性:為了評估 Llama 4 在化學和生物武器擴散方面的風險,我們應用了專家設計和其他針對性評估,以評估使用 Llama 4 是否會顯著增加惡意行為者計劃或實施使用此類武器的攻擊的能力。我們還針對此風險領域的內容政策違規進行了額外的紅隊測試和評估。
- 兒童安全:我們首先利用預訓練方法(如數據過濾)來減輕模型中的兒童安全風險。為了評估訓練後模型的兒童安全風險,一組專家評估模型產生可能導致兒童安全風險的輸出的能力。我們利用這些評估結果進行額外的模型微調和平行紅隊測試。我們還擴展了兒童安全評估基準,以涵蓋 Llama 4 的多圖像和多語言能力。
- 網絡攻擊啟用:我們的網絡評估調查了 Llama 4 是否有足夠的能力導致災難性的威脅場景結果。我們進行了威脅建模練習,以確定在關鍵攻擊向量方面自動化操作或增強人類能力所需的特定模型能力,包括技能水平和速度。然後,我們確定並開發了針對這些能力的挑戰,以測試 Llama 4 和同類模型。具體而言,我們專注於評估 Llama 4 自動化網絡攻擊、識別和利用安全漏洞以及自動化有害工作流程的能力。總體而言,我們發現 Llama 4 模型不會引入可能導致災難性網絡結果的風險。
社區
生成式人工智能安全需要專業知識和工具,我們相信開放社區的力量可以加速其發展。我們是開放聯盟的積極成員,包括 AI Alliance、Partnership on AI 和 MLCommons,積極為安全標準化和透明度做出貢獻。我們鼓勵社區採用像 MLCommons 概念驗證評估這樣的分類法,以促進安全和內容評估的協作和透明度。我們的信任工具已開源,供社區使用,並廣泛分發給包括雲服務提供商在內的生態系統合作伙伴。我們鼓勵社區為我們的 GitHub 倉庫 做出貢獻。
我們還設立了 Llama 影響贈款 計劃,以識別和支持 Meta 的 Llama 模型在三個類別中的最有前景的應用:教育、氣候和開放創新。數百份申請中的 20 名決賽選手可在 這裡 找到。
最後,我們建立了一系列資源,包括 輸出報告機制 和 漏洞賞金計劃,以在社區的幫助下不斷改進 Llama 技術。
🔧 技術細節
模型架構
Llama 4 模型是自迴歸語言模型,採用混合專家(MoE)架構,並結合早期融合技術實現原生多模態。
訓練數據
Llama 4 Scout 在約 40 萬億個多模態數據令牌上進行了預訓練,Llama 4 Maverick 在約 22 萬億個多模態數據令牌上進行了預訓練。這些數據來自公開可用的許可數據以及 Meta 產品和服務中的信息,包括 Instagram 和 Facebook 上的公開帖子以及人們與 Meta AI 的互動。
訓練硬件和軟件
使用自定義訓練庫、Meta 定製的 GPU 集群和生產基礎設施進行預訓練。微調、量化、註釋和評估也在生產基礎設施上進行。
訓練能源使用和溫室氣體排放
模型預訓練在 H100 - 80GB(TDP 為 700W)類型的硬件上累計使用了 738 萬 GPU 小時的計算資源。估計基於位置的總溫室氣體排放量為 1999 噸 CO2eq。自 2020 年以來,Meta 在其全球運營中保持淨零溫室氣體排放,並以清潔和可再生能源匹配其 100% 的電力使用;因此,基於市場的總溫室氣體排放量為 0 噸 CO2eq。
📄 許可證
本模型使用自定義商業許可證,Llama 4 社區許可協議,詳情見:https://github.com/meta-llama/llama-models/blob/main/models/llama4/LICENSE
⚠️ 重要提示
Llama 4 是一種新技術,與任何新技術一樣,其使用存在風險。到目前為止進行的測試並未涵蓋,也不可能涵蓋所有場景。因此,與所有大語言模型一樣,Llama 4 的潛在輸出無法提前預測,模型在某些情況下可能會對用戶提示產生不準確或其他令人反感的響應。因此,在部署 Llama 4 模型的任何應用程序之前,開發人員應針對其特定應用進行安全測試和調優。
💡 使用建議
建議開發人員參考可用資源,包括我們的 開發者使用指南:AI 保護、Llama 保護 解決方案和其他 資源,以瞭解更多信息。同時,鼓勵開源社區將 Llama 用於研究目的,並構建解決新興風險的先進工具。









