审核
使用 moderation 断言类型来确保LLM输出是安全的。
目前,这支持通过 OpenAI的审核模型 和 Meta的LlamaGuard 2模型 通过 Replicate。
总的来说,我们鼓励使用Meta的LlamaGuard,因为它在性能上显著优于OpenAI的审核API以及GPT-4。查看基准测试。
OpenAI审核
默认情况下,moderation 断言使用OpenAI。只需确保设置了 OPENAI_API_KEY 环境变量:
tests:
- vars:
foo: bar
assert:
# 确保通过OpenAI的审核过滤器
- type: moderation
OpenAI监控以下类别:
| 类别 | 描述 |
|---|---|
| 仇恨 | 基于种族、性别、民族、宗教、国籍、性取向、残疾或种姓的仇恨内容。针对非受保护群体的仇恨内容被视为骚扰。 |
| 仇恨/威胁 | 包含对目标群体的暴力或严重伤害的仇恨内容。 |
| 骚扰 | 对任何目标的骚扰语言内容。 |
| 骚扰/威胁 | 包含对任何目标的暴力或严重伤害的骚扰内容。 |
| 自残 | 促进或描述自残行为的内容,如自杀、割伤和饮食失调。 |
| 自残/意图 | 说话者表达自残意图的内容。 |
| 自残/指导 | 鼓励或指导如何进行自残行为的内容。 |
| 性 | 旨在引起性兴奋或推广性服务的内容(不包括性教育和健康)。 |
| 性/未成年人 | 涉及18岁以下个体的性内容。 |
| 暴力 | 描述死亡、暴力或身体伤害的内容。 |
| 暴力/图形 | 以详细细节描述死亡、暴力或身体伤害的内容。 |
检查特定类别
断言值允许您仅为特定类别启用审核:
tests:
- vars:
foo: bar
assert:
- type: moderation
value:
- 骚扰
- 骚扰/威胁
- 性
- 性/未成年人
Meta LlamaGuard审核
此示例使用托管在Replicate上的LlamaGuard模型。请确保设置了 REPLICATE_API_KEY 环境变量:
tests:
- vars:
foo: bar
assert:
- type: moderation
# 使用Replicate上的最新Llama Guard
provider: 'replicate:moderation:meta/meta-llama-guard-2-8b:b063023ee937f28e922982abdbf97b041ffe34ad3b35a53d33e1d74bb19b36c4'
LlamaGuard监控以下类别:
| 类别 | 描述 | 代码 |
|---|---|---|
| 暴力犯罪 | 内容中包含教唆、鼓励或宽恕暴力犯罪(如恐怖主义、谋杀、虐待儿童、虐待动物) | S1 |
| 非暴力犯罪 | 内容中包含教唆、鼓励或宽恕非暴力犯罪(如欺诈、入室盗窃、毒品交易) | S2 |
| 性犯罪 | 内容中包含教唆、鼓励或宽恕性犯罪(如人口贩卖、性侵犯、骚扰) | S3 |
| 儿童剥削 | 内容中包含儿童裸露或儿童性虐待的描绘 | S4 |
| 专业建议 | 内容中包含专业的金融、医疗或法律建议 | S5 |
| 隐私 | 内容中包含关于私人个体的敏感个人信息 | S6 |
| 知识产权 | 内容中侵犯第三方知识产权 | S7 |
| 大规模杀伤性武器 | 内容中包含制造大规模杀伤性武器(如化学、生物、核武器)的指导 | S8 |
| 仇恨 | 内容中基于受保护特征对人群产生仇恨或延续负面刻板印象 | S9 |
| 自残 | 内容中包含教唆、鼓励或宽恕故意自残行为(如自杀、自伤) | S10 |
| 性内容 | 成人裸露的描绘或包含色情描述或明确性行为的内容 | S11 |
检查特定类别
断言值允许您仅为特定类别启用审核:
tests:
- vars:
foo: bar
assert:
- type: moderation
provider: 'replicate:moderation:meta/meta-llama-guard-2-8b:b063023ee937f28e922982abdbf97b041ffe34ad3b35a53d33e1d74bb19b36c4'
value:
- S1
- S3
- S4