智能对话应用接口

会话接口

描述

  • 会话接口

URI

POST /qa/bot/sdk/talk

请求参数

名称 是否必须 位置 类型 描述
appkey body String 应用的用户密钥
token body String 签名信息
question token String 用户询问的问题
format token String 输出结果格式化用以指定结果格式类型,可选值包括xml(XML格式),json(JSON格式),txt(text文本格式)
format=== “xml”;
format===”json”;
format===“text”(现在默认返回json
lang token String 语言代码包括:zh(中文)和en(英文),默认lang=zh
app_id token String 创建应用的ID,如果不存在创建应用ID则此字段为空
sessionid token String 会话信息,会话信息标识,如果sessionid为空,则系统将产生sessionid,并返回。如果sessionid不为空,则进行会话

返回参数

名称 是否必须 位置 类型 描述
question body String 用户询问的问题,以UTF-8格式编码
topic body String 标题,主题
format body String 输出结果格式化,用以指定结果格式类型,可选值包括xml(XML格式),json(JSON格式),txt(text文本格式)
format=== “xml”;
format===”json”;
format===”text”(现在默认返回json)
lang body String 语言代码,包括:zh(中文)和en(英文),默认lang=zh
app_id body String 创建应用的ID,如果不存在创建应用ID则此字段为空
sessionid body String 会话信息,会话信息标识
status body String 返回状态
reminder body String 提示信息
answers body List 存放答案的列表
segment body List 分词结果,对当前问题的分词结果
textMenu body jsonObject 文字菜单内容,如果结果为文字菜单内容,则显示文字菜单结果
mediaType body String 媒体类型,返回媒体的类型
ansType body String 回答问题类型,返回答案的类型
intentParam body String 意图结果的json结构转化为String,意图的参数结构
endStatement textMenu String 文字菜单的结束语
beginStatement textMenu String 文字菜单的开始语
menuAns textMenu String 文字菜单的结果
menuId textMenu String 文字菜单的Id
menuType textMenu String 菜单类型
ansId textMenu String 答案的id
listTextMenu textMenu List 文字菜单选项列表
intent intentParam String 意图名称
confidence intentParam String 意图得分
info intentParam String 意图失败的具体原因,意图识别成功时,该值为空
slot intentParam JSONArray 词槽参数对象
slotName intentParam String 词槽名称
slotValue intentParam String 词槽值
menuId listTextMenu String 当前菜单id
parentId listTextMenu String 父级菜单id
menuType listTextMenu String 当前菜单的类型。当前文字菜单的类型一般为文件夹或者文件,文件没有子菜单。
answerId listTextMenu String 答案的Id
menuSequence listTextMenu String 当前菜单的级别
beginStatement listTextMenu String 开始语
endStatement listTextMenu String 结束语
activeStatus listTextMenu String 激活状态
userId String listTextMenu 当前用户Id
tenantId listTextMenu String 当前租户Id
createTime listTextMenu String 创建时间
updateTime listTextMenu String 更新时间
id answers String id
title answers String 问答库中的问题
answer answers String 问答库中的答案
url answers String 答案参考链接
type answers String 问题类型
resolution answers JSON 问题的具体解析
score answers double 问题匹配度评分,区间[0,1]

示例

请求示例

问答参数的示例代码

{
    "appkey":"用户秘钥",
    "token":"签名信息,里面包含用户请求的所有数据"
}

token签名信息中包含了请求数据,参数包括:

参数 类型 含义 注意事项 是否必选
question String 用户询问的问题 以UTF-8格式编码
format String 输出结果格式化 用以指定结果格式类型,可选值包括xml(XML格式),json(JSON格式),txt(text文本格式)
format=== “xml”;
format===”json”;
format===“text”(现在默认返回json)
lang String 语言代码 包括:zh(中文)和en(英文),默认lang=zh
app_id String 创建应用的ID 如果不存在创建应用ID则此字段为空
sessionid String 会话信息 会话信息标识,如果sessionid为空,则系统将产生sessionid,并返回。如果sessionid不为空,则进行会话

Token加密之前的参数结构为:

{
    "question":"用户询问的问题",
    "format":"签名信息,里面包含用户请求的所有数据",
    "language":"语言,支持zh(中文),en(英文),默认为中文",
    "app_id":"创建应用的id",
    "sessionid":"会话信息表示,当会话结果为空时,将返回sessionid"
}

响应示例

参数 类型 含义 注意事项
question String 用户询问的问题 以UTF-8格式编码
topic String 标题 主题
format String 输出结果格式化 用以指定结果格式类型,可选值包括xml(XML格式),json(JSON格式),txt(text文本格式)
format=== “xml”;
format===”json”;
format===”text”(现在默认返回json)
lang String 语言代码 包括:zh(中文)和en(英文),默认lang=zh
app_id String 创建应用的ID 如果不存在创建应用ID则此字段为空
sessionid String 会话信息 会话信息标识
status String 返回状态
reminder String 提示信息
answers List 存放答案的列表
segment List 分词结果 对当前问题的分词结果
textMenu jsonObject 文字菜单内容 如果结果为文字菜单内容,则显示文字菜单结果
mediaType String 媒体类型 返回媒体的类型
ansType String 回答问题类型 返回答案的类型
intentParam String 意图结果的json结构转化为String 意图的参数结构

textMenu中的json对象格式为:

参数 类型 含义
endStatement String 文字菜单的结束语
beginStatement String 文字菜单的开始语
menuAns String 文字菜单的结果
menuId String 文字菜单的Id
menuType String 菜单类型
ansId String 答案的id
listTextMenu List 文字菜单选项列表

intentParam的json对象格式为:

参数 类型 含义
intent String 意图名称
confidence String 意图得分
info String 意图失败的具体原因(意图识别成功时,该值为空)
slot JSONArray 词槽参数对象
slotName String 词槽名称
slotValue String 词槽值

intentParam内容举例:

{
    {
    "intent":"意图名称",
    "confidence":"意图得分",
    "info":"意图失败的具体原因",
    "slot":[
        {
            "slotName":"词槽名称",
            "slotValue":"词槽值"
        }
    ]
}

listTextMenu中的json对象内容:

参数 类型 含义
menuId String 当前菜单id
parentId String 父级菜单id
menuType String 当前菜单的类型(当前文字菜单的类型一般为文件夹或者文件,文件没有子菜单)
answerId String 答案的Id
menuSequence String 当前菜单的级别
beginStatement String 开始语
endStatement String 结束语
activeStatus String 激活状态
userId String 当前用户Id
tenantId String 当前租户Id
createTime String 创建时间
updateTime String 更新时间

textMenu内容举例:

{
        "endStatement":"B-返回上级菜单 Q-退出菜单",
        "beginStatement":null,
        "menuAns":null,
        "menuId":"44ddc6175ae24a0dbf40d9f241ce158b",
        "menuType":"FOLD",
        "ansId":null,
        "listTextMenu":[
            {
                "menuId":"7112a566a8a14827bda3c9cf39b850bd",
                "parentId":"44ddc6175ae24a0dbf40d9f241ce158b",
                "menuType":"FOLD",
                "menuName":"新建文字菜单",
                "answerId":null,
                "menuSequence":"2",
                "beginStatement":"ddd",
                "endStatement":"333",
                "activeStatus":"0",
                "userId":"dialog",
                "tenantId":"tenantId",
                "createTime":1527040140000,
                "updateTime":1527040952000
            },
            {
                "menuId":"b48451a6278b4f33bedcc082a7a08e84",
                "parentId":"44ddc6175ae24a0dbf40d9f241ce158b",
                "menuType":"ITEM",
                "menuName":"子菜单的内容是什么",
                "answerId":"26c72d1d9c604ecf9c346a25a59fa17f",
                "menuSequence":"2",
                "beginStatement":null,
                "endStatement":null,
                "activeStatus":"0",
                "userId":"dialog",
                "tenantId":"tenantId",
                "createTime":1527039572000,
                "updateTime":1527040952000
            }
        ]
    }

answers 中json对象参数如下:

参数 类型 含义
id String id
title String 问答库中的问题
answer String 问答库中的答案
url String 答案参考链接
type String 问题类型
resolution JSON 问题的具体解析
score double 问题匹配度评分,区间为[0,1]

当type值为LOCATION时,resolution的json对象参数如下:

参数 类型 含义
values List 值列表

values的json对象参数如下:

参数 类型 含义
code String 地区代码
name String 地区名称
type String 地区类型,其值为country、province、prefecture、county、location
longitude String 经度
latitude String 纬度

返回JSON数据结构:

{
    "question": "用户询问的问题",
    "topic": "标题",
    "format": "json",
    "lang": "zh",
    "app_id": "APP编号",
    "sessionid": "sessionid值",
    "status": "状态码",
    "reminder": "提示信息",
    "answers": [{
        "id": "答案ID编号",
        "title": "",
        "answer": "答案",
        "url": "链接",
        "type": "LOCATION",
        "resolution": {
            "values": [{
                "code": "地区编码",
                "name": "地区名称",
                "type": "地区类型",
                "longitude": "经度",
                "latitude": "纬度"
            }]
        },
        "score": "匹配得分"
    }]
}

返回JSON数据结果示例如下:

{
    "question": "泰山在哪个城市?",
    "topic": "LOCATION",
    "format": "json",
    "lang": "zh",
    "app_id": "APP-1",
    "sessionid": "SE1234567",
    "status": "200",
    "reminder": "提示信息",
    " answers ": [{
        "id": "1",
        "title": "",
        "answer": "泰安",
        "url": "https://baike.baidu.com/item/泰山/5447?fr=aladdin",
        "type": "LOCATION",
        "resolution": {
            "values": [{
                    "code": "86",
                    "name": "中国",
                    "type": "country",
                    "longitude": "116.4072154982",
                    "latitude": "39.9047253699"
                },
                {
                    "code": "370000",
                    "name": "山东省",
                    "type": "province",
                    "longitude": "117.0207380545",
                    "latitude": "36.6682454447"
                },
                {
                    "code": "370900",
                    "name": "泰安市",
                    "type": " prefecture ",
                    "longitude": "117.0884158791",
                    "latitude": "36.1999559476"
                },
                {
                    "code": "370902",
                    "name": "泰山",
                    "type": "location",
                    "longitude": "117.0884158791",
                    "latitude": "36.1999559476"
                }
            ]
        },
        "score": "0.97"
    }]
}

相似列表接口

描述

  • 相似列表接口

URI

POST /qa/bot/sdk/similarities

请求参数

名称 是否必须 位置 类型 描述
appkey body String 应用的用户密钥
token body String 签名信息
question body String 用户询问的问题,以UTF-8格式编码
topic body String 标题,主题
format body String 输出结果格式化。用以指定结果格式类型,可选值包括xml(XML格式),json(JSON格式),txt(text文本格式)format=== “xml”;format===”json”;format===”text”(现在默认返回json)
lang body String 语言代码,包括:zh(中文)和en(英文),默认lang=zh
app_id body String 创建应用的ID,如果不存在创建应用ID则此字段为空
sessionid body String 会话信息,会话信息标识
status body String 返回状态
reminder body String 提示信息
answers body List 存放答案的列表
score answers String 相似问题得分
kwId answers String 相似问题的知识id
title answers String 相似问题的问答
titleWordList answers String 相似问题的分析列表
kbFullCat answers List 知识分类全级名称

示例

相似列表接口请求参数示例代码

{
    "appkey":"用户秘钥",
    "token":"签名信息,里面包含用户请求的所有数据"
}

Answer的Json结构数据示例如下

{
    "question":"用户询问的问题",
    "topic":"主题",
    "format":"json",
    "lang":"zn",
    "app_id":"app编号",
    "sessionid":"会话id",
    "status":"状态码",
    "reminder":"提示信息",
    "answers":[
        {
            "score":"相似问题得分",
            "kwId":"知识Id",
            "title":"相似问题内容",
            "titleWordList":[
                "相似",
                "问题",
                "分词",
                "结果"
            ]
        },
 "answers":[
   "一级分类名","二级分类名",
]
    ]
}

媒体文件接口

描述

  • 媒体文件接口

URI

POST /qa/bot/sdk/media

请求参数

名称 是否必须 位置 类型 描述
appkey body String 应用的用户密钥
token body String 签名信息
mediaId token String 用户媒体文件id,以UTF-8格式编码
sessionid token String 会话信息,会话信息标识

返回参数

名称 是否必须 位置 类型 描述
mediaId body String 素材id
mediaName body String 素材名称
mediaSummary body String 素材摘要
mediaType body String 素材类型
mediaFile body byte[] 素材文件
mediaUrl body String 素材链接
mediaWatermark body String 素材水印
encode body String 素材文件传输过程中的编码,在传输过程中,将mediaFile采用base64编码

示例

媒体文件请求参数示例代码

{
    "appkey":"用户秘钥",
    "token":"签名信息,里面包含用户请求的所有数据"
}

Token加密之前的参数结构为:

{
    "mediaId":"媒体文件id",
    "sessionid":"会话信息表示,当会话结果为空时,将返回sessionid"
}

返回参数Json结构数据示例如下

{
    "mediaId":"素材ID",
    "mediaName":"素材名称",
    "mediaSummary":"素材摘要",
    "mediaType":"素材类型",
    "mediaFile":"素材文件",
    "mediaUrl":"素材链接",
    "mediaWatermark":"素材水印",
    "encode":"传输过程中的编码转化"
}