使用 moderations 接口检查文本或图像是否可能有害。如果识别出有害内容,您可以采取纠正措施,例如过滤内容或对创建违规内容的用户账户进行干预。Moderation 接口可免费使用。图像文件上限为 20 MB。
此接口有两个可用模型
omni-moderation-latest:该模型及其所有快照支持更多的分类选项和多模态输入。text-moderation-latest(旧版):较旧的模型,仅支持文本输入,分类选项较少。对于新应用程序,较新的 omni-moderation 模型是最佳选择。
快速入门
使用下方的选项卡,了解如何利用我们的官方 SDK 和 omni-moderation-latest 模型来审核文本或图像输入。
1
2
3
4
5
6
7
8
9
from openai import OpenAI
client = OpenAI()
response = client.moderations.create(
model="omni-moderation-latest",
input="...text to classify goes here...",
)
print(response)1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
from openai import OpenAI
client = OpenAI()
response = client.moderations.create(
model="omni-moderation-latest",
input=[
{"type": "text", "text": "...text to classify goes here..."},
{
"type": "image_url",
"image_url": {
"url": "https://example.com/image.png",
# can also use base64 encoded image URLs
# "url": "data:image/jpeg;base64,abcdefg..."
}
},
],
)
print(response)这是一个完整的输出示例,其中的输入是战争电影单帧图像。模型正确预测了图像中存在的暴力指标,violence(暴力)类别得分大于 0.8。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
{
"id": "modr-970d409ef3bef3b70c73d8232df86e7d",
"model": "omni-moderation-latest",
"results": [
{
"flagged": true,
"categories": {
"sexual": false,
"sexual/minors": false,
"harassment": false,
"harassment/threatening": false,
"hate": false,
"hate/threatening": false,
"illicit": false,
"illicit/violent": false,
"self-harm": false,
"self-harm/intent": false,
"self-harm/instructions": false,
"violence": true,
"violence/graphic": false
},
"category_scores": {
"sexual": 2.34135824776394e-7,
"sexual/minors": 1.6346470245419304e-7,
"harassment": 0.0011643905680426018,
"harassment/threatening": 0.0022121340080906377,
"hate": 3.1999824407395835e-7,
"hate/threatening": 2.4923252458203563e-7,
"illicit": 0.0005227032493135171,
"illicit/violent": 3.682979260160596e-7,
"self-harm": 0.0011175734280627694,
"self-harm/intent": 0.0006264858507989037,
"self-harm/instructions": 7.368592981140821e-8,
"violence": 0.8599265510337075,
"violence/graphic": 0.37701736389561064
},
"category_applied_input_types": {
"sexual": ["image"],
"sexual/minors": [],
"harassment": [],
"harassment/threatening": [],
"hate": [],
"hate/threatening": [],
"illicit": [],
"illicit/violent": [],
"self-harm": ["image"],
"self-harm/intent": ["image"],
"self-harm/instructions": ["image"],
"violence": ["image"],
"violence/graphic": ["image"]
}
}
]
}JSON 响应中包含多个类别,这些类别会告知您输入内容中是否存在(如果有的话)哪些类别的内容,以及模型认为其存在的程度。
| 输出类别 | 描述 |
|---|---|
flagged(已标记) | 如果模型将内容分类为潜在有害,则设为 |
分类 | 包含一个按类别划分的违规标志字典。对于每个类别,如果模型将相应类别标记为违规,则值为 |
category_scores(类别分数) | 包含一个模型输出的按类别划分的得分字典,表示模型对输入违反 OpenAI 该类别政策的置信度。值在 0 到 1 之间,数值越高表示置信度越高。 |
category_applied_input_types(类别适用的输入类型) | 此属性包含响应中针对每个类别被标记的输入类型信息。例如,如果模型的图像和文本输入均被标记为“violence/graphic”(暴力/血腥),则 |
我们计划持续升级 Moderation 接口的基础模型。因此,依赖 category_scores 的自定义策略可能需要随时间推移进行重新校准。
内容分类
下表描述了 Moderation API 可检测的内容类型,以及每个类别支持的模型和输入类型。
标记为“仅限文本”的类别不支持图像输入。如果您仅向 omni-moderation-latest 模型发送图像(且不附带文本),则这些不支持的类别将返回 0 分。图像文件上限为 20 MB。
| 类别 | 描述 | 模型 | 输入 |
|---|---|---|---|
harassment(骚扰) | 表达、煽动或促进针对任何目标的骚扰性语言的内容。 | 全部 | 仅限文本 |
harassment/threatening | 包含针对任何目标的暴力或严重伤害的骚扰性内容。 | 全部 | 仅限文本 |
hate | 基于种族、性别、民族、宗教、国籍、性取向、残疾状态或种姓表达、煽动或促进仇恨的内容。针对非受保护群体(例如国际象棋棋手)的仇恨内容属于骚扰。 | 全部 | 仅限文本 |
hate/threatening | 基于种族、性别、民族、宗教、国籍、性取向、残疾状态或种姓,对目标群体包含暴力或严重伤害的仇恨内容。 | 全部 | 仅限文本 |
illicit | 提供关于如何实施非法行为的建议或指导的内容。例如“如何商店行窃”这类短语属于此类。 | 仅限 Omni 模型 | 仅限文本 |
illicit/violent(非法/暴力) | 与 | 仅限 Omni 模型 | 仅限文本 |
self-harm(自残) | 促进、鼓励或描绘自残行为(如自杀、割伤和进食障碍)的内容。 | 全部 | 文本和图像 |
self-harm/intent | 说话者表达其正在参与或打算参与自残行为(如自杀、割伤和进食障碍)的内容。 | 全部 | 文本和图像 |
self-harm/instructions | 鼓励执行自残行为(如自杀、割伤和进食障碍)的内容,或提供如何实施此类行为的说明或建议的内容。 | 全部 | 文本和图像 |
sexual | 旨在引起性冲动的内容,例如对性活动的描述,或推广性服务的内容(不包括性教育和健康内容)。 | 全部 | 文本和图像 |
sexual/minors | 涉及 18 岁以下个人的性内容。 | 全部 | 仅限文本 |
violence | 描绘死亡、暴力或身体伤害的内容。 | 全部 | 文本和图像 |
violence/graphic(暴力/血腥) | 以图形细节描绘死亡、暴力或身体伤害的内容。 | 全部 | 文本和图像 |