进行KBQA会话
功能介绍
知识图谱问答服务(Knowledge Base Question Answering,简称KBQA)利用机器对自然语言分析与处理能力,理解用户所提出的问题,并利用知识图谱中的结构化知识进行查询、推理,找到解决该问题的精准答案并反馈给用户,协助用户解决不同类型的问题。
URI
POST /v1/{project_id}/kg/kg-instances/{kg_id}/apps/kbqa/converse
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
kg_id |
是 |
String |
知识图谱ID。在KG服务控制台“我的图谱”页面,单击图谱名称,进入图谱详情页左上角获取知识图谱ID。 |
project_id |
是 |
String |
用户项目ID。获取方法请参见获取项目ID。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
query |
是 |
String |
用户的提问内容,中文英文及中英文标点符号,长度限制为1-50个字符。 |
session_id |
否 |
String |
KBQA会话ID。如不携带或为过期、无效ID,则自动创建新的会话并返回会话ID。 |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
answer |
String |
系统返回的答案。 |
session_id |
String |
本次会话的ID。如果请求体中已携带有效会话ID,则与请求体中相同,否则为新会话ID。 |
frame |
Array of KBQARespFrame objects |
系统查询答案时使用的查询语句执行信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
formatted_question |
String |
用户问题对应的解析,即格式化后的问题。 |
match_type |
String |
用户问题对应的匹配模板的类型,取值:系统内置模板(SYS_TEMPLATE),详情请参见系统内置模板。 |
template_id |
String |
用户问题对应的匹配模板的ID。 |
template_name |
String |
用户问题对应的匹配模板的名称。 |
template_score |
Double |
匹配模板对应的匹配得分。 |
query |
String |
系统查询答案时使用的查询语句。 |
result |
GremlinQueryRespData object |
查询语句对应的查询结果。 |
answer |
String |
查询语句对应的答案文本。 |
参数 |
参数类型 |
描述 |
---|---|---|
edges |
Array of edges objects |
关系查询结果。 |
runtime |
Double |
命令执行时间,单位为秒。 |
vertices |
Array of vertices objects |
实体查询结果。 |
results |
Array of objects |
该gremlin语句非常规格式的返回结果。 |
path |
Array of pathItem objects |
路径查询结果,为组成该路径的一系列关系的集合。 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
关系ID,格式为“source(头实体ID)-target(尾实体ID)-index(关系索引值)”,如“4730302-1963128-1”,表示ID为4730302的实体和ID为1963128的实体之间的第1个关系。 |
index |
String |
关系的索引值,标识该条关系是其头尾实体的第几个关系。 |
label |
String |
关系的类型。 |
source |
String |
关系头实体ID。 |
target |
String |
关系尾实体ID。 |
请求示例
进行KBQA会话,询问小明的身高
https://nlp-ext.cn-north-4.myhuaweicloud.com/v1/1604d8170cd84440a81281e5a3a04f8b/kg/kg-instances/6cdcea01-bac0-48f6-acb5-9385ea3e24ad/apps/kbqa/converse { "session_id" : "b22ce1e7-72e6-4846-86e5-65f66a882989", "query" : "小明的身高" }
响应示例
状态码: 200
OK
{ "answer" : "小明的身高是175cm。", "session_id" : "b22ce1e7-72e6-4846-86e5-65f66a882989", "frame" : [ { "formatted_question" : "[小明]的[身高]", "match_type" : "SYS_TEMPLATE", "template_id" : "77396e46-6eec-49bb-bb84-84faa4229090", "template_name" : "xx实体的xx属性", "template_score" : 1.0, "query" : "g.V('6155801785020056890').valueMap('name', '身高').path()", "result" : { "vertices" : [ { "id" : "6155801785020056890", "label" : "人物" } ], "runtime" : 0.007594787999999999, "results" : [ { "name" : [ "小明" ], "身高" : [ "175cm" ] } ] }, "answer" : "小明的身高是175cm。" } ] }
状态码: 400
Bad Request
{ "error_code" : "KGP.2007", "error_msg" : "kg not found" }
状态码: 403
Forbidden
{ "error_code" : "KGP.0004", "error_msg" : "Auth failed" }
状态码
状态码 |
描述 |
---|---|
200 |
OK |
400 |
Bad Request |
403 |
Forbidden |
错误码
请参见错误码。