文本合规 API
POST
https://audit.iflyaisol.com/audit/v2/syncText接口说明
基于业界先进的语义模型和海量的多语种样本库,有效识别各类场景中涉政、违禁、色情、暴恐、辱骂、广告导流等风险文本内容,支持风险标签识别。
购买请点击API套餐购买 、APPID获取请点击API使用控制台 、快速体验请点击文本合规SaaS 、交流讨论请点击讯飞开放平台社区
特别注意:utc、signature、uuid的值请求时需要UrlEncode
#接口Demo
部分开发语言Demo如下,其他开发语言请参照文档进行开发,欢迎大家到讯飞开放平台社区 交流集成经验。
文本合规API Demo java语言
文本合规API Demo python语言
#接口要求
内容 | 说明 |
---|---|
传输方式 | http[s] (为提高安全性,强烈推荐https) |
请求地址 | https://audit.iflyaisol.com/audit/v2/syncText 注:服务器IP不固定,为保证您的接口稳定,请勿通过指定IP的方式调用接口,使用域名方式调用 |
Content-Type | application/json;charset=UTF-8 |
接口鉴权 | 签名机制,详情请参照下方接口鉴权 |
字符编码 | UTF-8 |
响应格式 | 统一采用JSON格式 |
开发语言 | 任意,只要可以向讯飞云服务发起HTTP请求的均可 |
适用范围 | 任意操作系统,但因不支持跨域不适用于浏览器 |
文本长度 | 单次文本不得超过5000个字符 |
#接口鉴权
#1、鉴权参数列表
所有鉴权参数均放在url地址栏。
参数名 | 类型 | 必传 | 描述 |
---|---|---|---|
accessKeyId | String | 是 | 即为控制台获取的APIKey |
accessKeySecret | String | 是 | 即为控制台获取的APISecret |
utc | String | 是 | 当前时间,格式:"yyyy-MM-dd'T'HH:mm:ssZ", 服务端会校验传入的时间与服务器时间之间的误差,超过 30 分钟即为非法。 |
signature | String | 是 | 签名串,详细获取步骤234中有signature的获取参考 |
appId | String | 是 | 即为控制台获取的APPID |
uuid | String | 是 | 请求随机字符串, uuid有防重放的功能,如果调试,请注意更换uuid的值 |
#2、第一步baseString获取
假设请求 url 中的查询参数为一个集合,将集合内满足条件的参数按照参数名 ASCII 码从小到大排序(字典序),使用键值对的格式(即 key1=value1&key2=value2…注意 value 需要 URLEncoder)拼接成字符串,得到baseString。示例如下:
特别注意以下3个规则:(1)参数值为空的不参与签名;(2)signature 参数本身不参与签名;(3)参数名区分大小写。
accessKeyId=simpleAPIKey&accessKeySecret=simpleAPISecret&appId=simpleAPPID&utc=2023-02-23T06%3A40%3A54%2B0000&uuid=44dfa903-adb2-45d3-a1fe-fd8a53f86b2a
————————————————————————————————————————————————————————————————————————————————————————————————————————————————
注意:在实际使用时,simpleXXX需替换控制台的真实值。utc、signature、uuid的值请求时需要UrlEncode。以上utc示例时间UrlEncode前为2023-02-23T06:40:54+0000。randomStr用UUID.randomUUID()函数获得的值替换。
#3、第二步根据baseString与accessKeySecret获取signature的值
根据得到的baseString和控制台获取的accessKeySecret(即APISecret),利用HMAC运算(HmacSHA1)生成签名byte[],然后使用base64编码得到signature,示例如下:
mH2xDQ5f+mO/Pi6DbrxXrzYQxF0=
————————————————————————————————————————————————————————————————————————————————————————————————————————————————
注意:调试阶段可以与以上结果比对,需要保持baseString与第一步完全一致。
#4、第三步拼接放到url地址栏
根据第二步获得的signature值,与url地址拼接得到最终地址栏结果,示例如下:
https://audit.iflyaisol.com/audit/v2/syncText?accessKeyId=simpleAPIKey&accessKeySecret=simpleAPISecret&utc=2023-02-23T06%3A40%3A54%2B0000&signature=mH2xDQ5f+mO/Pi6DbrxXrzYQxF0=&appId=simpleAPPID&uuid=44dfa903-adb2-45d3-a1fe-fd8a53f86b2a
————————————————————————————————————————————————————————————————————————————————————————————————————————————————
注意:黑白名单使用鉴权与文本合规鉴权完全一致,只是url地址有变动。具体业务参数通过json以post的形式发送给服务端。
请求参数
是否全匹配: 1 代表是 0 代表否 默认取值0,匹配到敏感词则不再匹配,不会返回所有敏感分类。
待识别文本,文本长度最大支持 5 千字符
{
"is_match_all": 1,
"content": "塔利班组织联合东突组织欲图。",
"lib_ids": [ //黑白名单指定
"7c284099364b473e96ce6d9da7750f4f",
"7c284099364b473e96ce6d9da7750f4f"
],
"categories": [ //指定检测的敏感分类
"pornDetection",
"violentTerrorism",
"political",
"lowQualityIrrigation",
"contraband",
"advertisement",
"uncivilizedLanguage"
]
}
示例代码
返回响应
会话调用成功标记: 000000 表示调用成功 其他数字 表示会话调用异常
对会话调用是否成功的描述
本次会话唯一id标识,用于排查接口调用问题
{
"code": "000000",
"desc": "成功",
"data": {
"result": {
"suggest": "block",
"detail": {
"content": "塔利班组织联合东突组织欲图",
"category_list": [
{
"confidence": 70,
"category": "violentTerrorism",
"suggest": "block",
"category_description": "暴恐_恐怖组织_恐怖组织",
"word_list": [
"塔利班"
],
"word_infos": [
{
"word": "塔利班",
"positions": [
0,
1,
2
]
}
]
}
]
}
},
"request_id": "T20230406102001116cff41968935000"
},
"sid": "18d9e15b7147465084fe064c40556edf"
}