文本内容审核用于识别文本内容包含的不良信息,给出审核结果和处理建议。
调用方提交审核文本,指定需要检测的类型,服务器同步返回调用结果。
目前支持的检测类型包括:敏感词识别。
检测类型及对应标签如下:
检测类型 | 说明 | action | label |
---|---|---|---|
敏感词识别 | 识别文本文件中的敏感违规内容 | antispam | normal:正常 terrorism:暴力恐怖 porn:色情低俗 illegal:违法违规 politics:涉政敏感 abuse:谩骂灌水 ad:广告欺诈 feudalism:封建迷信 religion:宗教敏感 affairs:时事舆情 contraband:违禁物品 minors:未成年人 banned-website:非法网址 |
限制类别 | 说明 |
---|---|
文本内容 | base64编码的UTF-8格式文本串 |
文本大小 | 请求的每段文本长度不大于1000字符 |
字符格式 | 送审字符格式必须为UTF-8 |
语种支持 | 中文、英文、阿拉伯文、印度尼西亚语,更多语种支持请联系技术支持 |
超时限制 | 建议用户侧接口调用超时控制为5s |
并发限制 | 每秒最多可处理20个文本文件[20QPS],如需更高QPS并发,请联系技术支持 |
区域限制 | 中国大陆,其他国家和地区支持,请联系商务支持 |
使用HTTP POST方式发起审核请求
事项 | 说明 |
---|---|
请求方法 | POST |
请求协议 | HTTPS |
请求域名 | ai.jocloud.com |
请求路径 | app/{appid}/v1/text/sync?traceId=uuid-xxxx-xxxx-xxxx-xxxx |
请求参数 | traceId为uuid字符串,用于排查问题时对账,建议每次请求使用不同值 |
请求头部 | Content-Type: application/json;charset=UTF-8 token: 鉴权token,生成方式参考 认证鉴权 |
请求Body | json字符串,详细定义如下 |
表. body数据结构
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
actions | 字符串数组 | 是 | 检测类型,可选值包括: - antispam |
data[] | JSON数组 | 是 | 指定检测对象信息列表,JSON数组中每个元素是一段文字的描述信息(见下方请求data表)。 单次请求中最多可处理10段文本,每段文本长度不大于1000个字符。 |
表. 请求data
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
dataId | 字符串 | 是 | 对象唯一标识,如:uuid-xxxx-xxxx-xxxx-xxxx |
dataType | 字符串 | 是 | 数据类型 - URL: http/https开头的url地址 - BASE64: UTF-8格式文本base64编码串 |
content | 字符串 | 是 | 待检测文本内容 dataType为URL,填写文本对应的url地址 dataType为BASE64,填写文本对应的base64编码串 |
extra | JSON | 否 | 附加配置,定义见下方extra表 |
context | JSON | 否 | 用户自定义上下文数据,返回结果时自动带上。 |
表. extra
名称 | 类型 | 描述 |
---|---|---|
lang | 字符串 | 文本检测使用的语言,默认为中文,可选值: - chinese:中文 - english:英文 - arabic:阿拉伯文 - bahasa:印度尼西亚语 |
响应内容为json对象,详细定义如下
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
code | 整型 | 是 | 请求错误码,详见 错误码 |
message | 字符串 | 是 | 错误信息描述 |
traceId | 字符串 | 是 | 透传请求参数中的traceId内容 |
requestId | 字符串 | 是 | 系统针对本次检查请求生成的唯一标识 |
timestamp | 整型 | 是 | 当前unix时间戳,单位秒 |
data[] | JSON数组 | 否 | 检测结果数据列表(具体结构见下方返回data表),数组中每一项表示一段文字的处理结果,在出错的情况下该字段可能为空。 |
表. 返回data
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
code | 整型 | 是 | 数据处理错误码,点击详细定义 |
message | 字符串 | 是 | 错误描述信息 |
dataId | 字符串 | 是 | 对应请求中的dataId |
taskId | 字符串 | 是 | 针对该检查对象多个检测类型生成的唯一任务标识 |
context | JSON | 否 | 对应请求中的context |
results[] | 数组 | 否 | 返回结果数据。调用成功时(code==200),返回结果中包含一个或多个元素。每个元素是一个结构体,具体结构见下方result表 |
表. result
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
code | 整型 | 是 | 检测错误码,详见 错误码 |
message | 字符串 | 是 | 错误信息描述 |
action | 字符串 | 是 | 检测类型,和调用请求中的检测类型(actions)一致。 |
label | 字符串 | 是 | 检测结果标签,取值与action有关。具体取值参见上面审核类型及对应标签说明表 |
rate | 浮点数 | 是 | 检测结果标签的概率,取值范围在[0.00 - 1.00],值越大,表示属于该分类的概率越大。 |
suggestion | 字符串 | 是 | 建议您执行的操作,取值范围: - pass: 正常,无需操作; - review: 疑似,需要进一步人工审核 - block: 违规,建议做违规处罚; |
extraData[] | JSON数组 | 否 | 扩展数据,包含命中的关键字、关键字类型等扩展信息,详见antispam-extraData表 |
表. antispam-extraData
名称 | 类型 | 是否必需 | 描述 |
---|---|---|---|
hint | Json数组 | 否 | 命中的关键字 |
label | 字符串 | 否 | 命中的关键字所属类型 |
rate | 浮点数 | 否 | 无意义,恒为"1.0" |
以下是一个python的调用示例代码:
# -*- coding: utf-8 -*-
# ! python3.6
import requests
import uuid
import base64
host = "https://ai.jocloud.com"
appid = 123456789 # 您的业务ID
restful_id = '********************' # 您的证书ID
restful_secret = '********************' # 您的证书秘钥
traceid = str(uuid.uuid4())
dataid = str(uuid.uuid4())
# url
url = host + '/app/%s/v1/text/sync?traceId=%s' % (appid, traceid)
# headers
headers = {
"content-type": "application/json"
}
auth = base64.b64encode(("%s:%s" % (restful_id, restful_secret)).encode('utf-8'))
headers['token'] = 'Base ' + auth.decode()
text = "欢迎使用文本审核接口!!"
# content
values = {
'actions': ['antispam'],
'data': [
{
'dataId': dataid,
'dataType': 'BASE64',
'content': base64.b64encode(text.encode('utf-8')).decode(),
'extra': {'lang': 'chinese'},
'context': {'uid': 12345, 'sid': 3467}
}
]
}
# request
res = requests.post(url, json=values, headers=headers)
print('code=%s, data=%s\n' % (res.status_code, res.text))
响应内容
{
"code": 200,
"message": "OK",
"traceId": "6b9e3020-8e6d-48aa-92ff-34ffd14c4ae1",
"requestId": "f42b1ef4-4e39-41c0-9b39-497e27b8b8cf",
"timestamp": 1584071473,
"data": [
{
"code": 200,
"message": "OK",
"dataId": "714610f2-665d-459c-8880-98553ca2b4ca",
"taskId": "c5f6fa3a-6af5-4d7b-bbe9-3af6a11c0ca8",
"context": {
"uid": 12345,
"sid": 3467
},
"results": [
{
"action": "antispam",
"code": 200,
"extraData": [],
"label": "normal",
"message": "OK",
"rate": 1,
"suggestion": "pass"
}
]
}
]
}
版本 | 时间 | 说明 |
---|---|---|
v1.0.1 | 2020-07-24 | 增加印度尼西亚语支持 |
v1.0.0 | 2020-03-13 | 初始版本 |