本文档介绍了调用AI安全护栏接口审核文本内容的方法。
步骤一:开通服务
前往AI安全护栏产品开通服务页面,开通AI安全护栏产品服务。
步骤二:为RAM用户授权
在接入SDK或者API之前,您需要为RAM用户授权。您可以为阿里云账号和RAM用户创建一个访问密钥(AccessKey)。在调用阿里云API时您需要使用AccessKey完成身份验证。获取方式,请参见获取AccessKey。
使用RAM管理员登录RAM控制台。
- 创建RAM用户。
具体操作,请参见创建RAM用户。
- 向RAM用户授权系统策略权限:
AliyunYundunGreenWebFullAccess
。具体操作,请参见为RAM用户授权。
完成以上配置后,您可以使用RAM用户调用内容安全API。
步骤三:安装并接入SDK
AI安全护栏产品服务SDK请参考SDK参考
API说明
使用说明
您可以调用该接口创建文本内容检测任务。
业务接口:TextModerationPlus
支持的地域及接入地址:
地域 | 外网接入地址 | 内网接入地址 |
华东2(上海) | https://green-cip.cn-shanghai.aliyuncs.com | https://green-cip-vpc.cn-shanghai.aliyuncs.com |
华北2(北京) | https://green-cip.cn-beijing.aliyuncs.com | https://green-cip-vpc.cn-beijing.aliyuncs.com |
华东1(杭州) | https://green-cip.cn-hangzhou.aliyuncs.com | https://green-cip-vpc.cn-hangzhou.aliyuncs.com |
华南1(深圳) | https://green-cip.cn-shenzhen.aliyuncs.com | https://green-cip-vpc.cn-shenzhen.aliyuncs.com |
西南1(成都) | https://green-cip.cn-chengdu.aliyuncs.com | 暂无 |
新加坡 | green-cip.ap-southeast-1.aliyuncs.com | green-cip-vpc.ap-southeast-1.aliyuncs.com |
计费信息:该接口为收费接口。仅对HTTP状态码为200的请求进行计量计费,产生其他错误码时不会计费。关于计费方式,请参见开通与计费概述部分。
QPS限制
本接口的单用户QPS限制为100次/秒。超过限制,API调用会被限流,这可能会影响您的业务,请合理调用。
请求参数
名称 | 类型 | 是否必须 | 示例值 | 描述 |
Service | String | 是 | query_security_check |
|
ServiceParameters | JSONString | 是 | 审核服务需要的参数集。JSON字符串格式,关于每个字符串的描述,请参见ServiceParameters。 |
表 1. ServiceParameters
名称 | 类型 | 是否必须 | 示例值 | 描述 |
content | String | 是 | 检测内容 | 审核的文本内容 |
chatId | String | 否 | ABC123 | 用于唯一标识一轮“用户输入 + 大模型输出”的交互记录 |
返回参数
名称 | 类型 | 示例值 | 描述 |
Code | Integer | 200 | 状态码。更多信息,请参见Code说明。 |
Data | JSONObject | {"Result":[...]} | 审核结果数据,具体请参见Data。 |
Message | String | OK | 请求消息的响应消息。 |
RequestId | String | AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE**** | 请求ID。 |
表 2. Data
名称 | 类型 | 示例值 | 描述 |
Result | JSONArray | 检测的内容合规风险标签、置信分等结果,具体请参见Result。 | |
RiskLevel | String | high | 风险等级,根据设置的高低风险分返回,返回值包括:
说明 高风险内容建议直接处置;中风险内容建议人工复查;低风险内容建议在高召回需求时再做处理,日常建议和未检测到风险做相同处理。风险分值可以在登录AI安全护栏产品控制台配置。 |
SensitiveResult | JSONArray | 检测的敏感内容风险标签、敏感样本等结果,具体请参见SensitiveResult | |
SensitiveLevel | String | S4 | 敏感等级,返回值包括: S0、S1、S2、S3、S4
|
AttackResult | JSONArray | 检测的攻击内容风险标签、置信分等结果,具体请参见AttackResult | |
AttackLevel | String | high | 攻击等级,返回值包括:
|
表 3. Result
名称 | 类型 | 示例值 | 描述 |
Label | String | political_xxx | 文字内容检测运算后返回的标签,可能会检出多个标签和分值。 |
Confidence | Float | 81.22 | 置信分值,0到100分,保留到小数点后2位。部分标签无置信分。 |
Riskwords | String | AA,BB,CC | 检测到的敏感词,多个词用逗号分隔,部分标签不会返回敏感词。 |
CustomizedHit | JSONArray | [{"LibName":"...","Keywords":"..."}] | 当命中自定义库时,Label为customized,返回自定义库名称和自定义词。 |
Description | String | 疑似政治实体 | 对Labal字段的说明。 重要 该字段为Label字段的解释说明,可能会变更调整,实际处理结果时建议处理Label字段,不要基于该字段进行结果处置。 |
表 4. CustomizedHit
名称 | 类型 | 示例值 | 描述 |
LibName | String | 自定义库1 | 自定义库名称 |
Keywords | String | 自定义词1,自定义词2 | 自定义词,多个词用逗号分隔。 |
表 5. SensitiveResult
名称 | 类型 | 示例值 | 描述 |
Label | String | 1780 | 文字内容检测运算后返回的标签,可能会检出多个标签和分值。 |
SensitiveLevel | String | S4 | 敏感等级,返回值包括: S0、S1、S2、S3、S4
|
SensitiveData | JSONArray | ["6201112223455"] | 检出敏感样本(0-5个) |
Description | String | 信用卡号 | 对Labal字段的说明。 重要 该字段为Label字段的解释说明,可能会变更调整,实际处理结果时建议处理Label字段,不要基于该字段进行结果处置。 |
表 6. AttackResult
名称 | 类型 | 示例值 | 描述 |
Label | String | Indirect Prompt Injection | 文字内容检测运算后返回的标签,可能会检出多个标签和分值。 |
AttackLevel | String | high | 攻击等级,返回值包括:
|
Confidence | Float | 100.0 | 置信分值,0到100分 |
Description | String | 间接提示词注入 | 对Labal字段的说明。 重要 该字段为Label字段的解释说明,可能会变更调整,实际处理结果时建议处理Label字段,不要基于该字段进行结果处置。 |
示例
请求示例
{
"Service": "query_security_check",
"ServiceParameters": {
"content": "testing content",
"chatId":"ABC123"
}
}
返回示例:
命中系统策略:
{
"Code": 200,
"Data": {
"Result": [
{
"Label": "political_entity",
"Description":"疑似政治实体",
"Confidence": 100.0,
"RiskWords": "词A,词B,词C"
},
{
"Label": "political_figure",
"Description":"疑似政治人物",
"Confidence": 100.0,
"RiskWords": "词A,词B,词C"
}
{
"Label": "customized",
"Description": "命中自定义库",
"Confidence": 100.0,
"CustomizedHit": [
{
"LibName": "自定义词库名称1",
"KeyWords": "自定义关键词"
}
]
}
],
"SensitiveResult": [
{
"Label": "1780",
"SensitiveLevel": "S4",
"Description":"信用卡号",
"SensitiveData": ["6201112223455"]
}
],
"AttackResult": [
{
"Label": "Indirect Prompt Injection",
"AttackLevel": "high",
"Description":"间接提示词注入",
"Confidence": 100.0
}
],
"RiskLevel": "high",
"SensitiveLevel": "S4",
"AttackLevel": "high",
},
"Message": "OK",
"RequestId": "AAAAAA-BBBB-CCCCC-DDDD-EEEEEEEE****"
}
Code说明
Code | 状态代码 | 说明 |
200 | OK | 请求成功。 |
400 | BAD_REQUEST | 请求有误。可能是请求参数不正确导致,请仔细检查请求参数。 |
408 | PERMISSION_DENY | 可能是您的账号未授权、账号欠费、账号未开通、账号被禁等。 |
500 | GENERAL_ERROR | 错误。可能是服务端临时出错。建议重试,若持续返回该错误码,请通过在线服务联系我们。 |
581 | TIMEOUT | 超时。建议重试,若持续返回该错误码,请通过在线服务联系我们。 |
588 | EXCEED_QUOTA | 请求频率超出配额。 |