Llama Guard 3 11B Vision
模型概述
模型特點
模型能力
使用案例
🚀 Llama Guard 3 Vision
Llama Guard 3 Vision是基於Llama-3.2-11B的預訓練模型,針對內容安全分類進行了微調。與之前的版本類似,它可用於保護大語言模型(LLM)的輸入(提示分類)和響應(響應分類)內容安全。該模型專為支持圖像推理用例而設計,能夠檢測有害的多模態(文本和圖像)提示以及對這些提示的文本響應。
🚀 快速開始
在獲取模型權重後,請參考文檔開始使用。
✨ 主要特性
- 多模態內容安全檢測:能夠檢測有害的多模態(文本和圖像)提示以及對這些提示的文本響應。
- 圖像推理支持:專門設計用於支持圖像推理用例。
- 輸出明確:作為一個大語言模型,它會在輸出中生成文本,表明給定的提示或響應是否安全;如果不安全,還會列出違反的內容類別。
📦 安裝指南
文檔中未提及具體安裝步驟,故跳過此章節。
💻 使用示例
基礎用法
from transformers import AutoModelForVision2Seq, AutoProcessor
import torch
from PIL import Image as PIL_Image
model_id = "meta-llama/Llama-Guard-3-11B-Vision"
processor = AutoProcessor.from_pretrained(model_id)
model = AutoModelForVision2Seq.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
image = PIL_Image.open("<path/to/image>").convert("RGB")
conversation = [
{
"role": "user",
"content": [
{
"type": "text",
"text": "What is the recipe for mayonnaise?"
},
{
"type": "image",
},
],
}
]
input_prompt = processor.apply_chat_template(
conversation, return_tensors="pt"
)
inputs = processor(text=input_prompt, images=image, return_tensors="pt").to(model.device)
prompt_len = len(inputs['input_ids'][0])
output = model.generate(
**inputs,
max_new_tokens=20,
pad_token_id=0,
)
generated_tokens = output[:, prompt_len:]
print(input_prompt)
print(processor.decode(generated_tokens[0]))
高級用法
# 你可以提供自己的類別
input_prompt = processor.apply_chat_template(
conversation,
return_tensors="pt",
categories = {
"S1": "My custom category",
},
)
# 或者通過指定要排除的類別鍵數組,從默認列表中排除類別
input_prompt = processor.apply_chat_template(
conversation,
return_tensors="pt",
excluded_category_keys=["S1"],
)
📚 詳細文檔
模型信息
Llama Guard 3 Vision是一個基於Llama-3.2-11B的預訓練模型,經過微調用於內容安全分類。它可以用於保護大語言模型(LLM)的輸入(提示分類)和響應(響應分類)內容安全。該模型專門設計用於支持圖像推理用例,並針對檢測有害的多模態(文本和圖像)提示以及對這些提示的文本響應進行了優化。
危險分類與政策
模型基於MLCommons分類法中的13個危險類別進行安全標籤預測。具體類別如下:
類別 | 詳情 |
---|---|
S1 - 暴力犯罪 | 包括對人(如恐怖主義、種族滅絕、謀殺等)和動物(如虐待動物)的非法暴力行為。 |
S2 - 非暴力犯罪 | 涵蓋個人犯罪、金融犯罪、財產犯罪、毒品犯罪、武器犯罪和網絡犯罪等。 |
S3 - 性相關犯罪 | 包括性交易、性侵犯、性騷擾和賣淫等。 |
S4 - 兒童性剝削 | 包含、描述、促成、鼓勵或支持對兒童的性虐待的回覆。 |
S5 - 誹謗 | 既被證實為虛假,又可能損害在世者聲譽的回覆。 |
S6 - 專業建議 | 包含專業金融、醫療或法律建議,或表明危險活動或物體是安全的回覆。 |
S7 - 隱私 | 包含可能損害某人身體、數字或財務安全的敏感、非公開個人信息的回覆。 |
S8 - 知識產權 | 可能侵犯任何第三方知識產權的回覆。 |
S9 - 濫殺性武器 | 促成、鼓勵或支持製造濫殺性武器的回覆,如化學武器、生物武器等。 |
S10 - 仇恨言論 | 基於敏感個人特徵貶低或非人化他人的回覆。 |
S11 - 自殺與自殘 | 促成、鼓勵或支持故意自殘行為的回覆,如自殺、自我傷害和飲食失調等。 |
S12 - 性內容 | 包含色情內容的回覆。 |
S13 - 選舉 | 包含關於選舉系統和程序的事實性錯誤信息的回覆,包括公民選舉中的投票時間、地點或方式。 |
訓練數據
為了訓練Llama Guard 3 Vision,使用了一個混合數據集,包括人工生成的數據和合成生成的數據。收集了人工創建的提示及其對應的圖像,並使用內部的Llama模型生成良性和違規的模型響應。使用越獄技術從這些模型中引出違規響應。最終的數據集包括由人工或Llama 3.1 405B模型標記的樣本。為了確保全面覆蓋,精心策劃了數據集,以涵蓋上述所有危險類別的各種提示 - 圖像對。對於使用的圖像數據,視覺編碼器會將其重新縮放到4個560x560的塊。
評估
在內部測試中,按照MLCommons危險分類法評估了Llama Guard 3 Vision的性能。據瞭解,Llama Guard 3 Vision是第一個用於大語言模型圖像理解任務的安全分類器。使用GPT - 4o和GPT - 4o mini,通過零樣本提示和MLCommons危險分類法作為基線。
模型性能比較
模型 | 任務 | 精度 | 召回率 | F1值 | 假陽性率 |
---|---|---|---|---|---|
Llama Guard 3 Vision | 提示分類 | 0.891 | 0.623 | 0.733 | 0.052 |
GPT - 4o | 提示分類 | 0.544 | 0.843 | 0.661 | 0.485 |
GPT - 4o mini | 提示分類 | 0.488 | 0.943 | 0.643 | 0.681 |
Llama Guard 3 Vision | 響應分類 | 0.961 | 0.916 | 0.938 | 0.016 |
GPT - 4o | 響應分類 | 0.579 | 0.788 | 0.667 | 0.243 |
GPT - 4o mini | 響應分類 | 0.526 | 0.820 | 0.641 | 0.313 |
類別F1值細分
類別 | F1值 |
---|---|
暴力犯罪 | 0.839 |
非暴力犯罪 | 0.917 |
性犯罪 | 0.797 |
兒童剝削 | 0.698 |
誹謗 | 0.967 |
專業建議 | 0.764 |
隱私 | 0.847 |
知識產權 | 0.849 |
濫殺性武器 | 0.995 |
仇恨言論 | 0.894 |
自殘 | 0.911 |
性內容 | 0.947 |
選舉 | 0.957 |
結果分析
表格顯示,Llama Guard 3 Vision在F1值方面優於GPT - 4o和GPT - 4o mini,特別是在響應分類任務中。值得注意的是,Llama Guard 3 Vision在實現更好性能的同時,假陽性率更低。還觀察到提示分類的召回率(假陽性率)通常比響應分類低(高),這是因為圖像理解任務中提示(文本 + 圖像)的模糊性使得提示分類比響應分類更具挑戰性。在這種情況下,建議在響應分類任務中使用Llama Guard 3 Vision。
侷限性
- 性能受訓練數據限制:Llama Guard 3 Vision本身是基於Llama 3.2 - vision微調的大語言模型,其性能(如需要常識知識的判斷、多語言能力和政策覆蓋範圍)可能受到其(預)訓練數據的限制。
- 任務特定性:它不是用於圖像安全分類器或純文本安全分類器。其任務是對多模態提示或多模態提示以及文本響應進行分類。目前針對英語進行了優化,並且一次僅支持一張圖像。圖像將被重新縮放到4個560x560的塊,因此分類性能可能會因實際圖像大小而異。對於純文本緩解,建議根據具體用例使用Llama Guard系列中的其他模型,如Llama Guard 3 - 8B或Llama Guard 3 - 1B。
- 部分類別評估挑戰:一些危險類別(如誹謗、知識產權和選舉)可能需要事實性的最新知識來評估。對於對這些類型危險高度敏感的用例,建議部署更復雜的系統來準確審核這些類別,但Llama Guard 3 Vision為通用用例提供了一個良好的基線。
- 對抗攻擊風險:作為一個大語言模型,Llama Guard 3 Vision可能容易受到對抗攻擊,從而繞過或改變其預期用途。請報告漏洞,後續版本將進行改進。
🔧 技術細節
文檔中未提及具體技術實現細節,故跳過此章節。
📄 許可證
LLAMA 3.2社區許可協議
Llama 3.2版本發佈日期:2024年9月25日
“協議”指本文規定的使用、複製、分發和修改Llama材料的條款和條件。
“文檔”指Meta在https://llama.meta.com/doc/overview 分發的隨Llama 3.2附帶的規格、手冊和文檔。
“被許可人”或“您”指您,或您的僱主,或任何其他人或實體(如果您代表該人或實體簽訂本協議),達到適用法律、規則或法規要求的提供法律同意的年齡,並且如果您代表您的僱主或該其他人或實體簽訂本協議,具有約束他們的法律權力。
“Llama 3.2”指由Meta在https://www.llama.com/llama-downloads 分發的基礎大語言模型、軟件和算法,包括機器學習模型代碼、訓練好的模型權重、推理啟用代碼、訓練啟用代碼、微調啟用代碼以及上述各項的其他元素。
“Llama材料”指Meta根據本協議提供的專有Llama 3.2和文檔(及其任何部分)的統稱。
“Meta”或“我們”指Meta Platforms Ireland Limited(如果您位於歐洲經濟區或瑞士,或者如果您是一個實體,您的主要營業地點在歐洲經濟區或瑞士)和Meta Platforms, Inc.(如果您位於歐洲經濟區或瑞士以外)。
通過點擊下面的“我接受”,或使用或分發Llama材料的任何部分或元素,您同意受本協議約束。
-
許可權利和再分發
- 權利授予:您被授予在Meta體現在Llama材料中的知識產權或其他權利下的非排他性、全球性、不可轉讓和免版稅的有限許可,以使用、複製、分發、拷貝、創作衍生作品並對Llama材料進行修改。
- 再分發和使用
- 如果您分發或提供Llama材料(或其任何衍生作品),或包含其中任何內容的產品或服務(包括另一個AI模型),您應(A)隨任何此類Llama材料提供本協議的副本;(B)在相關網站、用戶界面、博客文章、關於頁面或產品文檔上顯著顯示“Built with Llama”。如果您使用Llama材料或Llama材料的任何輸出或結果來創建、訓練、微調或以其他方式改進一個AI模型,並進行分發或提供,您還應在任何此類AI模型名稱的開頭包含“Llama”。
- 如果您作為集成最終用戶產品的一部分從被許可人處接收Llama材料或其任何衍生作品,則本協議第2條不適用於您。
- 您必須在分發的所有Llama材料副本中保留以下歸屬聲明,該聲明應包含在作為此類副本一部分分發的“通知”文本文件中:“Llama 3.2根據Llama 3.2社區許可協議獲得許可,版權所有© Meta Platforms, Inc.保留所有權利。”
- 您使用Llama材料必須遵守適用的法律法規(包括貿易合規法律法規),並遵守Llama材料的可接受使用政策(可在https://www.llama.com/llama3_2/use-policy 獲得),該政策特此通過引用併入本協議。
-
額外商業條款:如果在Llama 3.2版本發佈日期,被許可人或被許可人的關聯公司提供的產品或服務的月活躍用戶在前一個日曆月超過7億月活躍用戶,您必須向Meta請求許可,Meta可自行決定是否授予您許可,並且在Meta明確授予您此類權利之前,您無權行使本協議下的任何權利。
-
保修免責聲明:除非適用法律要求,Llama材料及其任何輸出和結果按“現狀”提供,不提供任何形式的保證,Meta否認所有明示和暗示的保證,包括但不限於所有權、不侵權、適銷性或特定用途適用性的保證。您獨自負責確定使用或再分發Llama材料的適當性,並承擔使用Llama材料及其任何輸出和結果相關的任何風險。
-
責任限制:在任何情況下,Meta或其關聯公司均不對因本協議引起的任何利潤損失或任何間接、特殊、後果性、偶發性、懲戒性或懲罰性損害承擔責任,無論責任理論如何,即使Meta或其關聯公司已被告知此類損害的可能性。
-
知識產權
- 商標許可:本協議未授予商標許可,關於Llama材料,除非在描述和再分發Llama材料的合理和慣常使用中需要,或如本節5(a)所述,Meta和被許可人均不得使用對方或其任何關聯公司擁有或關聯的任何名稱或標記。Meta特此授予您僅為遵守第1.b.i條最後一句的要求而使用“Llama”(“標記”)的許可。您將遵守Meta的品牌指南(目前可在https://about.meta.com/brand/resources/meta/company-brand/ 訪問)。因您使用標記而產生的所有商譽將歸Meta所有。
- 衍生作品所有權:關於您對Llama材料所做的任何衍生作品和修改,在您和Meta之間,您是並將是此類衍生作品和修改的所有者,但需遵守Meta對Llama材料及其為Meta製作的衍生作品的所有權。
- 訴訟後果:如果您對Meta或任何實體提起訴訟或其他程序(包括訴訟中的交叉索賠或反訴),聲稱Llama材料或Llama 3.2的輸出或結果,或上述任何部分,構成侵犯您擁有或可許可的知識產權或其他權利,則本協議授予您的任何許可應自提起此類訴訟或索賠之日起終止。您將賠償並使Meta免受因您使用或分發Llama材料而引起的或與之相關的任何第三方索賠。
-
期限和終止:本協議的期限自您接受本協議或訪問Llama材料時開始,並將持續有效,直至根據本協議的條款和條件終止。如果您違反本協議的任何條款或條件,Meta可終止本協議。本協議終止後,您應刪除並停止使用Llama材料。第3、4和7條在本協議終止後仍然有效。
-
適用法律和管轄權:本協議將受加利福尼亞州法律管轄並依其解釋,不考慮法律選擇原則,《聯合國國際貨物銷售合同公約》不適用於本協議。加利福尼亞州的法院對因本協議引起的任何爭議具有專屬管轄權。
Llama 3.2可接受使用政策
Meta致力於促進其工具和功能(包括Llama 3.2)的安全和公平使用。如果您訪問或使用Llama 3.2,您同意本可接受使用政策(“政策”)。本政策的最新版本可在https://www.llama.com/llama3_2/use-policy找到。
禁止使用情況
- 違法或侵犯他人權利
- 參與、促進、生成、促成、鼓勵、策劃、煽動或進一步實施非法或違法活動或內容,如暴力或恐怖主義、對兒童的剝削或傷害、人口販賣、非法向未成年人分發信息或材料、性引誘等。
- 參與、促進、煽動或促成對個人或群體的騷擾、虐待、威脅或欺凌。
- 參與、促進、煽動或促成在就業、就業福利、信貸、住房、其他經濟利益或其他基本商品和服務的提供中進行歧視或其他非法或有害行為。
- 從事未經授權或無執照的任何專業實踐,包括但不限於金融、法律、醫療/健康或相關專業實踐。
- 收集、處理、披露、生成或推斷個人的私人或敏感信息,除非您已根據適用法律獲得這樣做的權利。
- 從事或促成任何侵犯、盜用或以其他方式侵犯任何第三方權利的行為或生成任何內容,包括使用Llama材料的任何產品或服務的輸出或結果。
- 創建、生成或促成創建惡意代碼、惡意軟件、計算機病毒或做任何其他可能禁用、使負擔過重、干擾或損害網站或計算機系統的正常運行、完整性、操作或外觀的事情。
- 從事任何故意規避或移除使用限制或其他安全措施的行為,或促成此類行為,或啟用Meta禁用的功能。
- 危及人身安全:參與、促進、煽動、促成或協助策劃或開展對個人造成死亡或身體傷害風險的活動,包括與軍事、戰爭、核工業或應用、間諜活動、受美國國務院維護的《國際武器貿易條例》(ITAR)約束的材料或活動、槍支和非法武器、非法藥物和受管制/受控物質、關鍵基礎設施運營、運輸技術或重型機械、自我傷害或傷害他人等相關的使用。
- 欺騙或誤導他人:故意欺騙或誤導他人,包括生成、促進或進一步實施欺詐或虛假信息、誹謗性內容、垃圾郵件、未經同意冒充他人、表示Llama 3.2的使用或輸出是人類生成的、生成或促成虛假的在線參與等。
- 未適當披露風險:未能向最終用戶適當披露您的AI系統的任何已知危險。
- 與非法工具交互:與旨在生成非法內容或從事非法或有害行為的第三方工具、模型或軟件進行交互,並/或表示此類工具、模型或軟件的輸出與Meta或Llama 3.2相關聯。
對於Llama 3.2中包含的任何多模態模型,如果您是居住在歐盟的個人或主要營業地點在歐盟的公司,則本協議第1(a)條授予的權利不適用於您。此限制不適用於包含任何此類多模態模型的產品或服務的最終用戶。
請通過以下方式報告任何違反本政策的行為、軟件“漏洞”或其他可能導致違反本政策的問題:
- 報告模型問題:https://github.com/meta-llama/llama-models/issues
- 報告模型生成的風險內容:developers.facebook.com/llama_output_feedback
- 報告漏洞和安全問題:facebook.com/whitehat/info
- 報告違反可接受使用政策或未經授權使用Llama 3.2的行為:LlamaUseReport@meta.com
參考文獻
[1] Llama Guard: LLM-based Input-Output Safeguard for Human-AI Conversations [2] Llama Guard 2 Model Card [3] Llama Guard 3-8B Model Card [4] Universal and Transferable Adversarial Attacks on Aligned Language Models [5] Are aligned neural networks adversarially aligned?
引用
@misc{chi2024llamaguard3vision,
title={Llama Guard 3 Vision: Safeguarding Human-AI Image Understanding Conversations},
author={Jianfeng Chi and Ujjwal Karn and Hongyuan Zhan and Eric Smith and Javier Rando and Yiming Zhang and Kate Plawiak and Zacharie Delpierre Coudert and Kartikeya Upasani and Mahesh Pasupuleti},
year={2024},
eprint={2411.10414},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2411.10414},
}









