BlockQuery - 阻塞式对话
所有文档
menu

客悦智能客服专业版

BlockQuery - 阻塞式对话

立即使用

API访问域名

请求方式 POST 说明
online base url https://keyue.cloud.baidu.com/online AI客服发布后的请求地址
offline base url https://keyue.cloud.baidu.com AI客服测试调试地址
后缀接口 /core/v5/block/query
Authentication token为API Key

说明

在阻塞式对话模式中,系统不是片段式地返回答案,而是一次性返回完整答案,但是需要等待所有步骤节点处理完成。阻塞式对话可以对整体内容进行全面分析,确保响应的准确性和一致性。

适用场景:

  • 对响应时间不敏感的场景:适用于用户不要求立即得到回复,而是更关注答案准确性和完整性的情况。比如在企业内部的财务咨询场景中,员工询问复杂的税务计算问题,更希望得到完整、准确的计算方法和结果,而不是快速但可能不完整的回答。
  • 需要依赖完整答案做决策的场景:若需要智能客服回答复杂的技术支持问题,如服务器故障排除,用户需要完整的解决方案来进行之后的维修操作,此场景下可使用阻塞式对话。

请求参数

Header参数

名称 类型 必选 中文名 说明
Content-Type string 内容类型 固定值:application/json
token string API KEY 集成-API-API Key处获取。
详细获取方式参考:准备工作

Body参数

名称 类型 必填 中文名 说明
uid string 用户id
username string 用户名称
stream boolean 流式接口开关 false 关,true 开
startId string 节点id 对话测试时使用,执行指定的节点id。和topicId配合使用
queryText string 用户问题 请求的问题,比如示例中的:你好
queryTime string 用户提问的时间 用户发起请求的时间
sessionId string 会话id 首轮可以为空(如果首轮传了,后续需要使用首轮传的。),首轮会返回sessionId,后续对话需使用返回的sessionId
topicId string 主题id 对话测试时使用,执行指定的topic,和nodeId配合使用
variables object 变量 Map格式,key 是变量名称,value是变量值。对话中使用的变量,如果传了会覆盖当前中对话中已有的变量值
agentId string 客服机器人id 客服机器人的唯一标识
tenantId string 租户id 租户的唯一标识
queryId string 对话id 同一个sessionid内,每次对话都有一个对应的queryid
ext object
engines array 使用的对话引擎 String类型,FAQ("faq", "知识库-FAQ"),DOC_QA("docQa", "知识库-文档问答"),TASK_FLOW("taskflow", "流程画布"),TASK_BASED("task_based", "意图识别"),为null 或taskflow是支持所有引擎
可能增加新的枚举类型,请提前做好兼容适配
channel string 渠道 渠道管理中的渠道标识,传递该参数,可以命中FAQ中配置的条件答案
persona object 用户画像 快捷场景agent的用户画像
multimodal List[multimodal] 多模态输入 当前支持图片,不能单独使用,需要和queryText 一起传递,目前仅标准版支持,详见 multimodal 子数据
button object 按钮 按钮步骤会回复所有按钮的id,名称集合,点击按钮时需传递该字段,详见 button 子数据
chatSessionLatitudeSwitch boolean 单次session闲聊 该字段控制单次session闲聊是否开启,默认值:true
knowledgeLabelList list[string] 知识库标签 知识库标签Id列表(高优先级),knowledgeLabelList 生效优先级大于 knowledgeLabelValue
knowledgeLabelValue map 知识库标签 知识库标签值Map(低优先级)Map<String, List>
{"标签名1": ["标签值1", "标签值2"],"标签名2": ["标签值1", "标签值2"]}
knowledgeBaseSettingVo object 知识库 agent 设置 用于知识库 agent 设置,详见knowledgeBaseSettingVo子数据
forcedEntries object 强制实体值 强制实体值,该实体值将会覆盖抽取到的实体值

multimodal子数据

名称 类型 必填 中文名 说明
fileKey string 文件唯一标识 使用Upload-图片上传接口上传后返回的key
type string 文件类型 1 :图片,目前只支持图片,上传一张图片
可能增加新的枚举类型,请提前做好兼容适配

button子数据

名称 类型 必填 中文名 说明
id string 按钮id 按钮的唯一标识
name string 按钮名称 按钮的名称

knowledgeBaseSettingVo子数据

名称 类型 必填 中文名 说明
llm object 模型设置 详见 llm 子数据
knowledgeSearch object 知识检索设置 详见 knowledgeSearch 子数据
showSource object 来源展示 详见 showSource 子数据
faqLlm object FAQ大模型回复 详见 faqLlm 子数据
complexQuery object 复杂问题识别 详见 complexQuery 子数据
llm 子数据
名称 类型 必填 中文名 说明
temperature float 文本多样性参数 控制模型生成文本多样性的参数。较高的温度值(例如1.0)会使生成的文本更加随机和多样化,而较低的值(例如0.2)会使生成的文本更加确定和保守。
system string 人设 用于设置客服机器人的基础人设,以便回复的内容更符合
styleId string 回复风格id 回复风格的ID,可根据需要创建不同的回复风格,此处填写创建风格后返回的ID
name string 风格名称 回复风格的名称,方便区分。创建后可编辑
description string 风格描述 回复风格的描述,用于消息说明该回复风格。创建后可编辑。
promptOpen string 自定义文档知识prompt开关 0:关,1 :开
prompt list[prompt] 自定义prompt 设置客服机器人根据文档知识回答客户的回复prompt,详见 prompt 子数据
prompt子数据
名称 类型 必填 中文名 说明
type string 类型 variable 为变量,text 为文本
value string 当类型为 variable 时,value 可填写已经设置好的变量(只写变量名即可),如 persona、style
knowledgeSearch 子数据
名称 类型 必填 中文名 说明
document double 文档检索置信度 用于筛选文档知识的置信度阈值,大于等于此阈值则被召回
faq double FAQ检索置信度 用于筛选FAQ知识的置信度阈值,大于等于此阈值则被召回
documentCount int 文档检索分段数 用于设定与用户问题相关且置信度超过设定文档检索置信度的最大文档片段数量
showSource 子数据
名称 类型 必填 中文名 说明
open int 来源展示 0:关,1:开
faqLlm 子数据
名称 类型 必填 中文名 说明
open int 开关 0:关,1:开
type int 回复方式 1:风格回复,2:大模型总结
complexQuery 子数据
名称 类型 必填 中文名 说明
open int 开关 0:关,1:开

响应参数

名称 类型 必填 中文名 说明
sessionId string 会话ID 用于标识本轮会话的唯一ID
queryId string 查询ID 用于标识本次会话的唯一ID
replyStatus int 回复状态 回复状态, 默认成功 SUCCESS(200, "成功"); FAIL(4008001, "失败");QPS_LIMITED(4008002, "QPS超限");
可能增加新的枚举类型,请提前做好兼容适配
answer List[answer] 回答列表 包含各个回答块的数组,详见 answer 子数据
variables map 变量 Map<String, Object>存储会话期间的各种变量信息
endTime string 结束时间 会话结束时间
recommendList array 推荐列表 提供可能的操作或信息的推荐列表
rewriteQuery string 重写查询 用户输入的重写版本
intent List[intent] 意图 列出此次会话涉及的意图,详见 intent 子数据
replyInfo object 回复信息 回复相关信息,详见 replyInfo 子数据
needIgnoreDialogHistory Boolean 忽略对话历史开关 是否需要忽略对话历史
agentType int agent类型 agent类型: 1, 普通agent ; 2, AI agent
可能增加新的枚举类型,请提前做好兼容适配
qps int qps 当轮对话的qps
totalTokens int 消耗token数 当轮会话消耗的总token数
statisticsInfoMap map<string, object> 统计信息 详见 statisticsInfoMap 子数据
firstChunkTime float 首字耗时(秒) 流式返回下首字耗时(秒)
instructionList array 指令收集列表 收集用户触发的指令,识别用户意图后触发特定的换作,一般是一个对话的终点。

answer 子数据

名称 类型 必填 中文名 说明
chunkId int 流式chunkId 流式chunkId
status string 流式返回数据状态 RUNNING("running"); DONE("done");
可能增加新的枚举类型,请提前做好兼容适配
topicId string 主题ID 对应的主题ID
blockId string 区块ID 对应的区块ID
nodeId string 节点ID 对应的节点ID
name string 节点名称
taskFlowSolved boolean 任务流程是否结束 一个布尔值字段,用于标识当前任务流程的状态。
未完成状态 (false):
1.任务流程仍在进行中
2.信息收集不完整
3.即使在最后一个节点,如果业务逻辑未完成,依然为 false
完成状态 (true)
1.任务流程完全结束
2.所有必要的信息已收集完整
3.业务逻辑执行完毕
reply object 回复 包含回复相关详细信息的对象,详见 reply 子数据
instruction map 指令 发出指令后有值,指令详细信息Map<String, Map<String, String>>,外层key为指令标识,value为指令参数map
statisticsInfo object 统计信息 详见 statisticsInfo 子数据
debugReplyType string debug节点类型
debugNodeName string 节点名称
debugInputParam map 节点输入参数
debugCost long 节点运行时间
debugResult array 节点输出结果 节点输出结果,详细结构为list<Map<string, object>>

reply 子数据

名称 类型 必填 中文名 说明
type int 回复类型 1(文本)3(富文本)4(图片)8(列表)
可能增加新的枚举类型,请提前做好兼容适配
text string 文本 文本/富文本答案
textList array 文本列表 回复的文本列表
clarifyGuide string 澄清指南 提供澄清相关的指南和信息
replySource string 回复来源 各种回复来源类型:FAQ("faq", "知识库-FAQ"),DOC_QA("docQa", "知识库-文档"),TEXT_REPLY("text", "文本回复"),OPEN_URL("openUrl", "打开链接"),BUTTONS("buttons", "按钮回复"),INTENT_CLARIFY("intentClarify", "意图澄清"),LARGE_MODEL_REPLY("largeModelReply", "大模型回复"),COLLECT_SLOT_ENTITY("collectSlotEntity", "收集槽位实体"),CHITCHAT("chitchat", "闲聊"),UNMATCHED("unmatch", "未匹配固定话术"),SENSITIVE("sensitive", "敏感拒答话术"),SYSTEM("system", "系统异常"),INSTRUCTION("instruction", "指令"),TASK_BASE_BACK("taskBaseBack", "任务式会话拉回话术"),WELCOME("welcome", "开场白"),SILENT_REPLY("silentReply", "静默回复"),PLUGIN("plugin", "插件"),TABLE_QA("table_qa", "tqa-回复"),VIDEO_QA("video_qa", "知识库-视频"),CAPTURE("capture", "收集用户回复"),MULTI("multi", "多模态理解");
可能增加新的枚举类型,请提前做好兼容适配
streamSuffix string 流式后缀 对流式结果进行干预,在streamText输出最后一个chunk时,追加该内容
showDocumentSource boolean 显示文档源 是否显示文档来源
documents list[document] 文档 知识问答信息,replySource是DOC_QA 该字段有值,详见 documents 子数据
tableQAInfo object tableQA相关信息 详见 tableQAInfo 子数据
docDebug object 文档调试 提供文档调试相关信息,replySource是DOC_QA 该字段有值
faqSearch list[faqSearch] faq faq 检索信息,replySource是FAQ 该字段有值
slotCollectInfo object 实体收集信息 详见 slotCollectInfo 子数据
plugin string 插件 插件名, replySource是PLUGIN 该字段有值
url string 统一资源定位符 打开的URL, replySource是OPEN_URL 该字段有值
buttons List[button] 按钮列表 replySource是BUTTONS时该字段有值,详见 buttons 子数据
intentName string 意图名
documents 子数据
名称 类型 必填 中文名 说明
document_id string 文档ID 文档的唯一标识符
document_name string 文档名 文档的名称
web_url string 文档链接 文档链接,当knowledgeType是web时有值
video_url string 视频链接 视频链接,当knowledgeType是video时有值
start_timestamp_second int 开始时间戳(秒) 视频开始播放的时间戳,当knowledgeType是video时有值
end_timestamp_second int 结束时间戳(秒) 视频结束播放的时间戳,当knowledgeType是video时有值
knowledge_type string 文档类型 文档类型:doc 普通文档, web 网页知识,video 视频知识
data list[data] 数据 知识的数据内容,详见 data 子数据
data 子数据
名称 类型 必填 中文名 说明
segment_id string 段落ID 段落的唯一标识符
segment_content string 段落内容 段落的文本内容
sentence_id string 句子ID 句子的唯一标识符
sentence_content string 句子内容 句子的文本内容
score string 得分 段落相关性得分
segment_coord string 段落坐标 段落在文档中的位置坐标
video_url string 视频链接 视频链接,当knowledgeType是video时有值
knowledge_type string 知识类型 知识类型:doc 普通文档, web 网页知识,video 视频知识
可能增加新的枚举类型,请提前做好兼容适配
start_timestamp_second int 开始时间戳(秒) 视频开始播放的时间戳,当knowledgeType是video时有值
end_timestamp_second int 结束时间戳(秒) 视频结束播放的时间戳,当knowledgeType是video时有值
data list[sentence_info] 数据 段落中的句子数据,详见 sentence_info 子数据
sentence_info 子数据
名称 类型 必填 中文名 说明
sentence_id string 句子ID 句子的唯一标识符
sentence_content string 句子内容 句子的文本内容
score string 得分 句子相关性得分
tableQAInfo 子数据
名称 类型 中文名 说明
sourceCode string 解决方案代码 LLM生成的解决query的代码
tableSelectResult object 选表结果 详见 tableSelectResult 子数据
tableSelectResult 子数据
名称 类型 中文名 说明
file_name string 文件名
table_name string 表名
datasource_id string 数据源id
bos_url string bos链接地址
file_id string 文件唯一标识
docDebug 子数据
名称 类型 中文名 说明
search list[object] 文档查询 详见 search 子数据
search 子数据
名称 类型 中文名 说明
agent_id string agent_id
available string 是否可用
dir_id string 目录id
document_id string 文档ID 文档的唯一标识符
document_name string 文档名 文档的名称
web_url string 文档链接 文档链接,当knowledgeType是web时有值
video_url string 视频链接 视频链接,当knowledgeType是video时有值
knowledge_type string 文档类型 文档类型:doc 普通文档, web 网页知识,video 视频知识
可能增加新的枚举类型,请提前做好兼容适配
env string 环境
labels string 标签
score double 召回评分
segment_id string 段落ID 段落的唯一标识符
segment_content string 段落内容 段落的文本内容
segment_coord string 段落坐标 段落在文档中的位置坐标
sentence_id string 句子ID 句子的唯一标识符
sentence_content string 句子内容 句子的文本内容
sentence_type string 句子种类
version string 版本
start_timestamp_second int 开始时间戳(秒) 视频开始播放的时间戳,当knowledgeType是video时有值
end_timestamp_second int 结束时间戳(秒) 视频结束播放的时间戳,当knowledgeType是video时有值
faqSearch 子数据
名称 类型 中文名 说明
answer map 回答
faqId string 问答id
score double 置信度
question string 标准问
matchDetail object 匹配详情 详见 matchDetail子数据
matchDetail 子数据
名称 类型 中文名 说明
score double 匹配置信度
matchType string 匹配类型
matchValue string 匹配内容
matchId string 匹配信息id
slotCollectInfo 子数据
名称 类型 必填 中文名 说明
waitCollectResultList list[waitCollectResultList] 待收集结果列表 列出待收集的结果,详见 waitCollectResultList / hasCollectResultList 子数据
hasCollectResultList list[hasCollectResultList] 已收集结果列表 列出已收集的结果,详见 waitCollectResultList / hasCollectResultList 子数据
waitCollectResultList / hasCollectResultList 子数据
名称 类型 必填 中文名 说明
name string 名称 待收集的槽名称
result string 结果 已收集的结果
option array 可选值 可选的答案
optionSize int 选项数量 选项数量
checkResult string 校验结果 校验结果
clarity string 清晰度 澄清话术
inputExample string 输入示例 输入的示例
outputExample string 输出示例 输出的示例
buttons 子数据
名称 类型 必填 中文名 说明
id string 按钮id
name string 按钮名称

statisticsInfo 子数据

名称 类型 中文名 说明
nodeId string 节点id
type string 类型
prompt string 提示词
output string 输出
instruction string 指令
errorCode int 错误码
errorMessage string 错误信息
entityName string 实体名称

intent 子数据

名称 类型 必填 中文名 说明
_effect int 影响 表示此意图的效果
id string ID 意图的唯一标识
name string 名称 意图的名称
description string 描述 意图的描述
agentId string 客服机器人ID 客服机器人的ID
created string 创建时间 意图创建时间
updated string 更新时间 意图最后更新时间
confidence float 置信度 意图识别的置信度
source string 来源 意图识别的来源
threshold float 阈值 意图识别的阈值
system boolean 系统意图 是否为系统预定义的意图
needClarify boolean 需要澄清 是否需要澄清此意图
alias string 别名 意图的别名
nameZh string 中文名称 意图的中文名称
examples List[object] 示例 意图的示例,详见examples子数据
hasActiveCopy boolean 活跃副本 意图是否有活跃的副本
templateStr string 模板字符串 意图的模板字符串
createdUserName string 创建者用户名 创建此意图的用户的用户名
createdUserId string 创建者用户ID 创建此意图的用户的用户ID
lastEditUserName string 最后编辑用户名 最后编辑此意图的用户的用户名
lastEditUserId string 最后编辑用户ID 最后编辑此意图的用户的用户ID
version int 版本 意图的版本
industryIntent boolean 行业意图 是否为特定行业的意图
knnExampleStr string KNN示例字符串 用于KNN匹配的示例字符串
extra string 额外信息 包含额外信息的对象
recSource string 推荐来源 意图推荐的来源
isNoResponse boolean 无响应 是否未响应

examples子数据

名称 类型 中文名 说明
id string ID 意图示例的唯一标识
value string 具体内容 意图示例的具体内容
intentId string 意图ID 意图的ID
agentId string 客服机器人ID 客服机器人的ID
created string 创建时间 意图示例的创建时间
updated string 更新时间 意图示例的修改时间
version int 版本 意图示例的版本标识
tokenValue string token值
md5 string 加密字段

replyInfo 子数据

名称 类型 中文名 说明
agentType string agent类型 agent的具体类型,
可能增加新的枚举类型,请提前做好兼容适配
replySource array 回复来源 回复内容的来源信息,
可能增加新的枚举类型,请提前做好兼容适配
effectiveQa boolean 有效问答 true 为有效, false 为无效
qaType int RAG类型 RAG类型,1FAQ、2文档
可能增加新的枚举类型,请提前做好兼容适配

statisticsInfo 子数据

名称 类型 中文名 说明
nodeId string 节点id 节点的唯一标识
type string 类型
prompt string 提示词
output string 输出
instruction string 指令
errorCode int 错误码
errorMessage string 错误信息
entityName string 实体名称 实体的名称

请求示例

curl --location --request POST 'https://keyue.cloud.baidu.com/online/core/v5/block/query' 
--header 'token: xxxx' 
--header 'Content-Type: application/json' 
--data '{
    "queryText": "你好",
    "sessionId": "ecb95fcc-0e49-4ab0-b026-c20a8aac1585",
    "variables": {
        "homeAddress": "chengdu"
    }   
}'

响应示例

{
    "time": 1715169513855,
    "data": {
        "sessionId": "3b86845a-94c0-4120-a961-79ce479e2773",
        "queryId": "7641ef40-e741-43cb-b0b5-59d86f3a6abe",
        "replyStatus": 200,
        "answer": [
            {
                "chunkId": 0,
                "status": null,
                "topicId": null,
                "blockId": null,
                "nodeId": "start00000000000000000000",
                "reply": null,
                "instruction": null
            },
            {
                "chunkId": 1,
                "status": null,
                "topicId": "a52cce91-f235-4c6e-96b0-fdb026c0c09c",
                "blockId": null,
                "nodeId": "3rkayHkJR_9gQ707XXmnfEuVmhvyir4eYJiL",
                "reply": null,
                "instruction": null
            },
            {
                "chunkId": 2,
                "status": null,
                "topicId": "a52cce91-f235-4c6e-96b0-fdb026c0c09c",
                "blockId": "3rkayHkJR_9gQ707XXmnfEuVmhvyir4eYJiL",
                "nodeId": "kJ_HMFObG5uGwRaoqG3synofT5PVZYoXk3Zy",
                "reply": {
                    "type": 1,
                    "text": "这是一个文本",
                    "textList": null,
                    "clarifyGuide": null,
                    "replySource": "TEXT_REPLY",
                    "showDocumentSource": null,
                    "documents": null,
                    "docDebug": null,
                    "faqSearch": null,
                    "slotCollectInfo": null,
                    "instruction": null
                },
                "instruction": null
            }
        ],
        "variables": {
            "date": "2024-05-08",
            "last_intent": "",
            "week": "3",
            "last_task_prompt": "这是一个文本",
            "time": "19:58:33",
            "last_response": "这是一个文本",
            "last_user_response": ""
        },
        "endTime": "2024-05-08 19:58:33",
        "recommendList": [],
        "rewriteQuery": null,
        "intent": null
    },
    "code": 200,
    "msg": "OK"
}
上一篇
StreamQuery - 流式对话
下一篇
End - 对话结束