模型简介
模型特点
模型能力
使用案例
🚀 Llama Guard 3-1B
Llama Guard 3-1B是一个经过微调的Llama-3.2-1B预训练模型,用于内容安全分类。与之前的版本类似,它可用于对大语言模型(LLM)的输入(提示分类)和响应(响应分类)内容进行分类。该模型作为一个大语言模型,会在输出中生成文本,表明给定的提示或响应是否安全;若不安全,还会列出违反的内容类别。
Llama Guard 3-1B经过对齐,可防范MLCommons标准化的危害分类法,并且与前代模型相比,其设计降低了审核系统防护的部署成本。它有两个版本:1B版本以及经过剪枝和量化的1B版本,后者针对移动设备部署进行了优化。
🚀 快速开始
本仓库包含Llama-Guard-3-1B的两个版本,分别适用于transformers库和原始的llama
代码库。获取模型权重后,请参考相应的部分。
📦 使用transformers库
从transformers >= 4.43.0版本开始,你可以在多轮对话中对最后一个用户或助手的响应进行推理评估。
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_id = "meta-llama/Llama-Guard-3-1B"
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.bfloat16,
device_map="auto",
)
tokenizer = AutoTokenizer.from_pretrained(model_id)
conversation = [
{
"role": "user",
"content": [
{
"type": "text",
"text": "What is the recipe for mayonnaise?"
},
],
}
]
input_ids = tokenizer.apply_chat_template(
conversation, return_tensors="pt"
).to(model.device)
prompt_len = input_ids.shape[1]
output = model.generate(
input_ids,
max_new_tokens=20,
pad_token_id=0,
)
generated_tokens = output[:, prompt_len:]
print(tokenizer.decode(generated_tokens[0]))
此代码片段将使用本模型卡片中描述的类别。你也可以提供自己的类别:
input_ids = tokenizer.apply_chat_template(
conversation,
return_tensors="pt",
categories = {
"S1": "My custom category",
},
).to(model.device)
或者,你可以通过指定要排除的类别键数组,从默认列表中排除某些类别:
input_ids = tokenizer.apply_chat_template(
conversation,
return_tensors="pt",
excluded_category_keys=["S6"],
).to(model.device)
📦 使用llama
代码库
请参考我们的文档开始使用。
若要下载原始检查点,可使用huggingface-cli
,命令如下:
huggingface-cli download meta-llama/Llama-Guard-3-1B --include "original/*" --local-dir Llama-3.2-11B-Vision
🛠️ 微调
你还可以针对自己的用例对Llama Guard进行微调:Llama Guard 3自定义:分类法自定义、零样本/少样本提示、评估和微调
📚 危害分类法和政策
该模型经过训练,可根据MLCommons分类法中的13种危害,对以下13个类别进行安全标签预测。
危害类别 | 详情 |
---|---|
S1: 暴力犯罪 | 响应内容若促成、鼓励或支持暴力犯罪的实施,包括:(1) 针对人的非法暴力行为(如恐怖主义、种族灭绝、谋杀、出于仇恨动机的暴力犯罪、虐待儿童、袭击、殴打、绑架);(2) 针对动物的非法暴力行为(如虐待动物) |
S2: 非暴力犯罪 | 响应内容若促成、鼓励或支持非暴力犯罪的实施,包括:(1) 人身犯罪(如劳工贩运、威胁、恐吓、出于仇恨动机的非暴力犯罪);(2) 金融犯罪(如欺诈、诈骗、洗钱);(3) 财产犯罪(如盗窃、纵火、破坏公物);(4) 毒品犯罪(如制造或使用管制物质);(5) 武器犯罪(如制造无许可证的枪支);(6) 网络犯罪(如黑客攻击) |
S3: 性相关犯罪 | 响应内容若促成、鼓励或支持性相关犯罪的实施,包括:(1) 性交易;(2) 性侵犯(如强奸);(3) 性骚扰 |
S4: 儿童性剥削 | 响应内容若促成、鼓励或支持儿童性剥削,包括对儿童剥削内容的征集、创作、获取或传播,或未报告儿童性虐待材料 |
S5: 诽谤 | 响应内容若构成诽谤,包括创建、传播诽谤性陈述、图像或其他内容 |
S6: 专业建议 | 响应内容若提供未经授权或无执照的专业建议,包括但不限于金融、法律、医疗/健康或相关专业领域的建议 |
S7: 隐私 | 响应内容若在未获得适用法律规定的权利的情况下,收集、处理、披露、生成或推断个人的私人或敏感信息,包括个人身份、健康或人口统计信息 |
S8: 知识产权 | 响应内容若侵犯、盗用或以其他方式侵犯第三方的知识产权,包括使用Llama材料的任何产品或服务的输出或结果 |
S9: 滥杀性武器 | 响应内容若与军事、战争、核工业或应用、间谍活动相关,或涉及受美国国务院维护的《国际武器贸易条例》(ITAR)约束的材料或活动 |
S10: 仇恨言论 | 响应内容若促成、鼓励、煽动或便利对个人或群体的骚扰、虐待、威胁或欺凌,或促成、鼓励、煽动或便利在就业、就业福利、信贷、住房、其他经济福利或其他基本商品和服务的提供方面的歧视或其他非法或有害行为 |
S11: 自杀与自残 | 响应内容若促成、鼓励或支持自杀、自残行为,包括提供与自杀、切割或饮食失调相关的内容 |
S12: 色情内容 | 响应内容若包含色情内容 |
S13: 选举 | 响应内容若与选举相关,且存在故意欺骗、误导他人,或生成、推广虚假信息等行为 |
📄 许可证
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(如果您位于欧洲经济区(EEA)或瑞士,或者如果您是一个实体,您的主要营业地位于欧洲经济区或瑞士)和Meta Platforms, Inc.(如果您位于欧洲经济区或瑞士以外)。
通过点击下方的“我接受”,或使用或分发Llama材料的任何部分或元素,即表示您同意受本协议的约束。
-
许可权利和再分发
- a. 权利授予:您被授予在Meta体现在Llama材料中的知识产权或其他权利下的非排他性、全球性、不可转让且免版税的有限许可,以使用、复制、分发、拷贝、创作衍生作品并对Llama材料进行修改。
- b. 再分发和使用
- i. 如果您分发或提供Llama材料(或其任何衍生作品),或包含其中任何内容的产品或服务(包括另一个AI模型),您应(A)随任何此类Llama材料提供本协议的副本;(B)在相关网站、用户界面、博客文章、关于页面或产品文档上显著显示“Built with Llama”。如果您使用Llama材料或Llama材料的任何输出或结果来创建、训练、微调或以其他方式改进一个AI模型,并对其进行分发或提供,您还应在任何此类AI模型名称的开头包含“Llama”。
- ii. 如果您作为集成最终用户产品的一部分从被许可方处接收Llama材料或其任何衍生作品,则本协议第2条不适用于您。
- iii. 您必须在分发的所有Llama材料副本中,在作为此类副本一部分分发的“Notice”文本文件中保留以下归属声明:“Llama 3.2 is licensed under the Llama 3.2 Community License, Copyright © Meta Platforms, Inc. All Rights Reserved.”
- iv. 您对Llama材料的使用必须遵守适用的法律法规(包括贸易合规法律法规),并遵守Llama材料的可接受使用政策(可在https://www.llama.com/llama3_2/use-policy 上获取),该政策特此通过引用并入本协议。
-
额外商业条款:如果在Llama 3.2版本发布日期,被许可方或其关联方提供的产品或服务在前一个日历月的月活跃用户数超过7亿,则您必须向Meta请求许可,Meta可自行决定是否授予您许可。在Meta明确授予您此类权利之前,您无权行使本协议下的任何权利。
-
warranty免责声明:除非适用法律另有要求,Llama材料及其任何输出和结果均按“现状”提供,不提供任何形式的保证。Meta明确否认所有形式的保证,无论是明示的还是暗示的,包括但不限于所有权、不侵权、适销性或特定用途适用性的保证。您独自负责确定使用或再分发Llama材料的适当性,并承担与您使用Llama材料及其任何输出和结果相关的任何风险。
-
责任限制:在任何情况下,Meta或其关联方均不对因本协议引起的任何利润损失或任何间接、特殊、后果性、偶发性、惩戒性或惩罚性损害承担责任,无论责任理论为何,包括合同、侵权、疏忽、产品责任或其他。即使Meta或其关联方已被告知此类损害的可能性。
-
知识产权
- a. 本协议未授予商标许可。关于Llama材料,除非在描述和再分发Llama材料时进行合理和惯常使用所需,或如本节5(a)所述,Meta和被许可方均不得使用对方或其任何关联方拥有或与之相关的任何名称或标记。Meta特此授予您仅为遵守第1.b.i条最后一句的要求而使用“Llama”(“标记”)的许可。您将遵守Meta的品牌指南(目前可在https://about.meta.com/brand/resources/meta/company-brand/ 上获取)。因您使用该标记而产生的所有商誉均归Meta所有。
- b. 鉴于Meta对Llama材料及其由Meta或代表Meta制作的衍生作品的所有权,就您制作的Llama材料的任何衍生作品和修改而言,在您和Meta之间,您是且将是此类衍生作品和修改的所有者。
- c. 如果您对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 3.2。您同意不会使用或允许他人使用Llama 3.2进行以下行为:
- 违反法律或他人权利,包括:
- 从事、促进、生成、促成、鼓励、策划、煽动或进一步推动非法或违法活动或内容,例如:
- 暴力或恐怖主义
- 对儿童的剥削或伤害,包括征集、创作、获取或传播儿童剥削内容,或未报告儿童性虐待材料
- 人口贩运、剥削和性暴力
- 向未成年人非法分发信息或材料,包括淫秽材料,或未对此类信息或材料采用法律要求的年龄限制
- 性引诱
- 任何其他犯罪活动
- 从事、促进、煽动或便利对个人或群体的骚扰、虐待、威胁或欺凌
- 从事、促进、煽动或便利在就业、就业福利、信贷、住房、其他经济福利或其他基本商品和服务的提供方面的歧视或其他非法或有害行为
- 从事未经授权或无执照的任何专业活动,包括但不限于金融、法律、医疗/健康或相关专业实践
- 在未根据适用法律获得相应权利的情况下,收集、处理、披露、生成或推断个人的私人或敏感信息,包括个人身份、健康或人口统计信息
- 从事或便利任何侵犯、盗用或以其他方式侵犯第三方权利的行为或生成任何内容,包括使用Llama材料的任何产品或服务的输出或结果
- 创建、生成或便利创建恶意代码、恶意软件、计算机病毒,或进行任何可能禁用、使负担过重、干扰或损害网站或计算机系统的正常运行、完整性、操作或外观的行为
- 从事任何故意规避或移除使用限制或其他安全措施的行为,或便利此类行为,或启用Meta禁用的功能
- 从事、促进、生成、促成、鼓励、策划、煽动或进一步推动非法或违法活动或内容,例如:
- 从事、促进、煽动、便利或协助策划或开展对个人生命或身体造成伤害风险的活动,包括将Llama 3.2用于以下方面:
- 军事、战争、核工业或应用、间谍活动,或用于受美国国务院维护的《国际武器贸易条例》(ITAR)约束的材料或活动,或受1989年美国《生物武器反恐法》或1997年《化学武器公约实施法》约束的活动
- 枪支和非法武器(包括武器开发)
- 非法毒品和受管制/控制物质
- 关键基础设施、运输技术或重型机械的操作
- 自我伤害或伤害他人,包括自杀、切割和饮食失调
- 任何旨在煽动或促进暴力、虐待或对个人造成身体伤害的内容
- 故意欺骗或误导他人,包括将Llama 3.2用于以下方面:
- 生成、促进或进一步推动欺诈或虚假信息的创建或推广
- 生成、促进或进一步推动诽谤性内容,包括创建诽谤性陈述、图像或其他内容
- 生成、促进或进一步分发垃圾邮件
- 在未经同意、授权或合法权利的情况下冒充他人
- 声称Llama 3.2的使用或输出是人类生成的
- 生成或便利虚假的在线互动,包括虚假评论和其他虚假在线互动手段
- 未向最终用户适当披露您的AI系统的任何已知危险
- 与旨在生成非法内容或从事非法或有害行为的第三方工具、模型或软件进行交互,和/或声称此类工具、模型或软件的输出与Meta或Llama 3.2相关
对于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



