云服务器内容精选

  • 请求示例 输入问题“桌面云无法登录”,返回最匹配的top5个知识点 POST https://{endpoint}/v1/1604d8170cd84440a81281e5a3a04f8b/qabots/303a0a00-c88a-43e3-aa2f-d5b8b9832b02/requests Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Request Body: { "user_id": "z00123456", "session_id": "xxxxxxxxxxxxxxxxxx", "operate_type":3, "question": "桌面云无法登录", "extends":{ "domains":["桌面云"], "top":5 }, "threshold_enable":false, "chat_enable":true }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。 获取Token 接口响应消息头中X-Subject-Token的值即为Token。 Content-Type 是 String 消息体的类型(格式),参数值为“application/json”。 表3 请求Body参数 参数 是否必选 参数类型 说明 session_id 是 String 会话ID,由任意字符串组成,由用户自定义产生,用来区分不同的会话。 具体获取方式请参见开启会话章节。 user_id 否 String 用户ID,用来区分唯一用户信息。 question 是 String 用户问题。 extends 否 Extends object 扩展参数项。 threshold_enable 否 Boolean true:启动内部阈值,返回经过阈值处理之后的答案。 false:不启用内部阈值,返回原答案。 chat_enable 否 Boolean 默认true true:使用内部闲聊语料进行兜底。 false:不使用闲聊兜底。 operate_type 否 Integer 调用接口时候传入,用以标记的问答的行为,默认为0,最终会展示在问答日志里。 0 用户输入 1 单击热点问题 3 单击推荐问题 4 单击问题提示 表4 Extends 参数 是否必选 参数类型 描述 domains 否 Array of strings 领域列表,多个领域用分号隔开。如果设置了领域且领域不为空,就从这些领域中匹配答案,否则就从该用户的全部知识库匹配答案。 当前最多支持10个领域。 top 否 Integer 返回答案数量,默认为5,取值范围1~10。
  • 响应消息 状态码: 200 表5 响应Body参数 参数 参数类型 描述 request_id String 请求ID。 调用失败时无此字段。 question String 问题。 调用失败时无此字段。 answers Array of Answers objects 最相似的问题集。调用失败时无此字段。 extends Extends object 扩展参数项。调用失败时无此字段。 表6 Answers 参数 参数类型 描述 qa_pair_id String 问答对ID。 st_question String 标准问题。 ex_questions Array of ExQuestions objects 扩展问。 answer String 答案。 score Float 相似度得分,精确到小数点后3位。 domain String 问题类别。 表7 ExQuestions 参数 参数类型 描述 content String 扩展问题。 表8 Extends 参数 是否必选 参数类型 描述 domains 否 Array of strings 领域列表,多个领域用分号隔开。如果设置了领域且领域不为空,就从这些领域中匹配答案,否则就从该用户的全部知识库匹配答案。 当前最多支持10个领域。 top 否 Integer 返回答案数量,默认为5,取值范围1~10。 状态码: 400 表9 响应Body参数 参数 参数类型 描述 error_code String 调用失败时的错误码。 调用成功时无此字段。 error_msg String 调用失败时的错误信息。 调用成功时无此字段。
  • URI POST https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 qabot_id 是 String qabot编号,UUID格式,如:303a0a00-c88a-43e3-aa2f-d5b8b9832b02。 进入 问答机器人 的Console界面,在“机器人名称/ID”列显示对应的qabot_id。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 request_id String 调用成功时的返回请求ID。 调用失败时无此字段。 updated_time String 反馈满意度的时间。格式为“yyyy-MM-dd THH:mm:ssZ”。其中,T指某个时间的开始;Z指UTC时间。 调用失败时无此字段。 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error_code String 调用失败时的错误码。 调用成功时无此字段。 error_msg String 调用失败时的错误信息。 调用成功时无此字段。
  • URI POST https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/{request_id}/satisfaction 表1 路径参数 参数 是否必选 参数类型 描述 endpoint 是 String 终端节点,即调用API的请求地址。 不同服务不同区域的endpoint不同,您可以从终端节点中获取。 例如,CBS服务在“华北-北京四”区域的“endpoint”为“cbs-ext.cn-north-4.myhuaweicloud.com”。 project_id 是 String 项目ID,用于资源隔离。请参见获取项目ID。 qabot_id 是 String qabot编号,UUID格式,如:303a0a00-c88a-43e3-aa2f-d5b8b9832b02。 进入问答机器人的Console界面,在“机器人名称/ID”列显示对应的qabot_id。 request_id 是 String 请求ID,获取方式请参见响应参数中的request_id。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 用于获取操作API的权限。获取Token接口响应消息头中X-Subject-Token的值即为Token。 Content-Type 是 String 消息体的类型(格式),参数值为“application/json”。 表3 请求Body参数 参数 是否必选 参数类型 描述 degree 是 Integer 满意度评分,当前仅支持二级评分,1表示满意,-1表示不满意,标注为不满意的问答会加入到未解决问题中。
  • 请求示例 对智能问答返回结果的满意度评价为满意 POST https://{endpoint}/v1/1604d8170cd84440a81281e5a3a04f8b/qabots/303a0a00-c88a-43e3-aa2f-d5b8b9832b02/requests/303a0a00-c88a/satisfaction Request Header: Content-Type: application/json X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG... Request Body: { "degree":1 } Python语言请求代码示例 import requests url = "https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/{request_id}/satisfaction" body = {"degree":1} token = "用户获取得到的实际token值" headers = {'Content-Type': 'application/json', 'X-Auth-Token': token} response = requests.post(url, headers=headers, json=body, verify=False) print(response.text) Java语言请求代码示例 import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.URL; public class CBSDemo { public void cbsDemo() { try { //endpoint、projectId、qabot_id需要替换成实际信息。 URL url = new URL("https://{endpoint}/v1/{project_id}/qabots/{qabot_id}/requests/{request_id}/satisfaction"); String token = "用户获取得到的实际token值"; HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod("POST"); connection.setDoInput(true); connection.setDoOutput(true); connection.addRequestProperty("Content-Type", "application/json"); connection.addRequestProperty("X-Auth-Token", token); //输入参数 String body = "{\"degree\":1}"; OutputStreamWriter osw = new OutputStreamWriter(connection.getOutputStream(), "UTF-8"); osw.append(body); osw.flush(); InputStream is = connection.getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8")); while (br.ready()) { System.out.println(br.readLine()); } } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { CBSDemo CBSDemo = new CBSDemo(); CBSDemo.cbsDemo(); } }