密级公开
版本10D.2

AICP ASR敏感词管理 HTTP开发手册

warning

自 10D.1 起,此接口已废弃,请使用新的 统一资源管理接口

1. 简介#

AICP 10 ASR 能力支持动态设置敏感词的功能,也即用户可以通过接口上传敏感词词表,在识别时如果结果中出现敏感词,则会输出 "*" 屏蔽此敏感词。

本文档描述了AICP 10 平台中的敏感词管理接口。通过这里提供的 HTTP 接口,用户可以对敏感词词表进行增、删、改、查的操作,同时这里获得的敏感词词表ID,可以用于在识别时指定ASR服务所使用的敏感词词表。

2. 敏感词词表描述#

2.1 敏感词词表格式#

敏感词词表的内容中为 UTF-8 编码,有无 BOM 头均可。整体内容不能超过100K。

内容中包括多行,每行代表一个敏感词,每行内容不能超过 256 字节。

3. 接口描述#

3.1 请求URI#

  • 添加敏感词词表

    POST http://ip:port/v10/asr/sensword/create?appkey={appkey}

  • 修改敏感词词表

    POST http://ip:port/v10/asr/sensword/update?appkey={appkey}

  • 查找敏感词词表

    POST http://ip:port/v10/asr/sensword/list?appkey={appkey}

  • 查看敏感词词表

    POST http://ip:port/v10/asr/sensword/get?appkey={appkey}

  • 删除敏感词词表

    POST http://ip:port/v10/asr/sensword/delete?appkey={appkey}

上述接口均支持 https 形式。

URL中的参数如下:

参数类型必选说明
appkeystring分配给开发者的 appkey

上述接口都使用JSON串作为包体,因此在HTTP Header中需要加上如下头:

参数类型必选说明
Content-Typestringapplication/json

上述接口暂时不需要先通过 get-access-token 接口获取 token,再将 token 放在 X-Hci-Access-Token 头中加以访问。

3.2 添加敏感词词表#

该接口支持用户添加敏感词词表。

3.2.1 请求消息#

参数类型必选缺省说明
senswordobject敏感词词表信息

注意:

  • 敏感词表在同一个开发者下面是共享的,最多可以存储 100 套敏感词表。

sensword 的结构如下:

参数类型必选缺省说明
namestring敏感词词表的命名
langstring敏感词词表的语种 (参考property的第一部分)
descstring空串敏感词词表描述
contentstring经过BASE64编码后的敏感词词表内容

注意:

  • 目前在识别时,不会判断敏感词词表的 lang 是否和当前模型一致,但未来版本可能会加入判断。

3.2.2 响应消息#

参数类型说明
errorobject发生错误时可用,如果请求成功将没有此字段
createdobject调用成功表示添加的敏感词词表信息,调用失败时将没有此字段

error 的结构如下:

参数类型说明
codenumber错误代码,参加下面的错误代码表
messagestring详细的错误信息

created 的结构如下:

参数类型说明
idstring词表ID
verstring当前版本信息

3.2.3 示例#

  • 请求示例
{
"sensword":
{
"name": "telepower",
"lang": "cn",
"content": "5rOV6L2u5YqfCg=="
}
}

上述 content 内容是 "法轮功" 经过BASE64编码之后的串。

  • 成功响应示例
{
"created":
{
"id" : "CFD08A32-6176-4ad7-92F9-11ED015C8109",
"ver": "1",
}
}
  • 失败响应示例
{
"error":
{
"code": 3,
"message": "10004: Parse Task Config Failed",
}
}

3.3 修改敏感词词表#

该接口支持用户更新敏感词词表。

3.3.1 请求消息#

参数类型必选缺省说明
senswordIdstring敏感词词表Id,从添加接口中获取
senswordobject敏感词词表信息

sensword 的结构和“添加接口”的输入参数一样,结构如下:

参数类型必选缺省说明
namestring敏感词词表的命名
langstring敏感词词表的语种
descstring空串敏感词词表描述
contentstring经过BASE64编码后的敏感词词表内容

3.3.2 响应消息#

参数类型说明
errorobject发生错误时可用,如果请求成功将没有此字段
updatedobject调用成功表示修改后的敏感词词表信息,调用失败时将没有此字段

updated 的结构如下:

参数类型说明
idstring词表ID
verstring当前版本信息

其中 id 肯定和输入的 senswordId 一致, ver 为修改后的最新版本号。

注意: 目前版本只能更新 sensword 中的 content,也即词表内容本身,无法更新 name, lang, desc 等元信息。

3.3.3 示例#

  • 请求示例
{
"senswordId": "CFD08A32-6176-4ad7-92F9-11ED015C8109",
"sensword":
{
"name": "telepower",
"lang": "cn",
"content": "5rGf6IuPIFtqaWFuZzEgc3UxXQ=="
}
}
  • 成功响应示例
{
"updated":
{
"id": "CFD08A32-6176-4ad7-92F9-11ED015C8109",
"ver": "2"
}
}

3.4 查找敏感词词表#

该接口支持查找此开发者所有的敏感词词表。对于每个词表,都会返回其最新的版本。

3.4.1 请求消息#

参数类型必选缺省说明
skipnumber0查询时前面跳过的数量
limitnumber100每次查询返回的最大数量,范围 [1-10000]

3.4.2 响应消息#

参数类型说明
errorobject发生错误时可用,如果请求成功将没有此字段
totalCountnumber此开发者的敏感词词表的总数,调用失败时将没有此字段
senswordListarray此开发者指定分页中的敏感词词表信息,调用失败时将没有此字段

senswordList 中的每一项结构如下:

参数类型说明
idstring敏感词词表Id
verstring敏感词词表的最新版本号
namestring敏感词词表的名字
langstring敏感词词表的语种信息
descstring敏感词词表描述,如果为空,可能没有

注意:

  • 此接口只返回词表的ID和元信息,不返回词表的具体内容。要查看词表的具体内容,请使用“查看敏感词词表”接口通过每个词表ID进行查看。

3.4.3 示例#

  • 请求示例
{
}
  • 请求示例,带页码信息
{
"skip": 10,
"limit": 10,
}
  • 成功响应示例
{
"totalCount": 13,
"senswordList": [
{
"id": "5F85A74C-BED9-4a15-B66E-039251D877D6",
"ver": "1",
"lang": "cn",
"name": "weather",
},
{
"id": "692602B7-3C4C-486a-954E-3256A0B9CE55",
"ver": "2",
"lang": "cn",
"name": "arm",
},
{
"id": "50875954-7328-42ab-B236-B3EC6E22207A",
"ver": "1",
"lang": "en",
"name": "war",
"desc": "some description"
}
]
}

3.5 查看敏感词词表#

该接口支持用户获取敏感词词表内容。该接口会返回此敏感词词表的最新版本内容。

3.5.1 请求消息#

参数类型必选缺省说明
senswordIdstring敏感词词表Id,从添加接口中获取

3.5.2 响应消息#

参数类型说明
errorobject发生错误时可用,如果请求成功将没有此字段
senswordobject调用成功表示敏感词词表内容,调用失败时将没有此字段

sensword 的结构如下:

参数类型说明
idstring敏感词词表ID
verstring敏感词词表的最新版本号
namestring敏感词词表的名字
langstring敏感词词表的语种信息
descstring敏感词词表描述,如果为空,可能没有
contentstringBASE64编码后的敏感词词表内容

3.5.3 示例#

  • 请求示例
{
"senswordId": "110C84A7-D2AF-4f49-9D9C-7FCBEE4DA9AE"
}
  • 响应示例
{
"sensword": {
"id": "110C84A7-D2AF-4f49-9D9C-7FCBEE4DA9AE",
"ver": "3",
"name": "telepower",
"lang": "cn",
"desc": "no desc",
"content": "W+aIkOmDvSBjaGVuZzFkdTFdIg=="
}
}

3.6 删除敏感词词表#

该接口支持用户删除一个指定的敏感词词表。该接口将删除此词表的所有版本。

3.6.1 请求消息#

参数类型必选缺省说明
senswordIdstring敏感词词表Id,从添加接口中获取

3.6.2 响应消息#

参数类型说明
errorobject发生错误时可用,如果请求成功将没有此字段
deletedobject调用成功表示删除的敏感词词表内容,调用失败时将没有此字段

deleted 结构如下:

参数类型说明
idstring被删除的敏感词词表ID

3.6.3 示例#

  • 请求示例
{
"senswordId": "6A522D0A-AAD6-428b-AAB8-E225EABEBC94"
}
  • 成功响应示例
{
"deleted":
{
"id": "6A522D0A-AAD6-428b-AAB8-E225EABEBC94",
}
}

4. 版本记录#

接口版本平台支持版本组件及支持版本修改内容
10.0.010C.0aicp_asr_ft 10.5.0初始版本