技能对话接口,API多轮对话的实现
半醉半醒半疯Z 发布于2018-07 浏览:54456 回复:27
9
收藏
最后编辑于2021-12

补充:client_session参数可以不写,省事。

使用API对话接口时,想要实现多轮对话,需要传递bot_session或session_id的信息。

第一轮对话bot_session需要置空,置空的写法是"bot_session": ""。从第二轮开始,多轮对话的每轮都需将上轮返回结果里的bot_session(或session_id)的值完整不动的传给本轮的bot_session。

1.传bot_session的值

      返回数据里bot_session的形式如下:

     "bot_session": "{\"bot_id\":\"1201\",......\"timestamp\":\"  request time   \"}],\"session_id\":\"     value   \"}\n"

      可以将bot_session的值(整个双引号里的内容)完整不做任何修改的传入请求参数的bot_session里。也可以去掉最后的  \n  。其他部分不需要做任何修改。

2.传session_id的值

     如果传的是session_id,则请求参数形式是:"bot_session": "{\"session_id\":\" value \"}"

     返回数据里bot_session的形式如下:

     "bot_session": "{\"bot_id\":\"1201\",......,\"session_id\":\"     value   \"}\n"

     可以直接将     \"session_id\":\"value\"    取出,使用  {}  包起来,然后再传入入参的bot_session里。

      格式: "bot_session": "{\"session_id\":\"value\"}"

 

另外:DMKIT如果进行多轮对话,需要传入整个bot_session的内容,不能只传session_id。

收藏
点赞
9
个赞
共27条回复 最后由路人都市报回复于2021-12
#8tiancorn回复于2018-08
#7 小瘦子吃的少回复
是不是必须要设置对话意图才可以进行多轮对话呢?好像单独的问答意图是不行的。
展开

是的,问答只是单轮的。对话意图是多轮的。

0
#7小瘦子吃的少回复于2018-08

是不是必须要设置对话意图才可以进行多轮对话呢?好像单独的问答意图是不行的。

0
#6用户已被禁言回复于2018-07

希望可以上点代码实例供参考,感谢贴主分享

0
#5lixk_way回复于2018-07

干货~~

0
#4choleraa回复于2018-07

干货, 再多点完整样例代码就更好了.

0
#3rose20135188回复于2018-07

写得易懂,

0
#2伊茨米可回复于2018-07

干货~~

0
TOP
切换版块