我只是想知道当无法多次理解用户意图时的最佳处理方式。
例如对于聊天机器人,用户可能会输入无法多次理解的意图,这是我第三次希望聊天机器人调用Web服务。
处理这种情况的最佳方法是什么?我想出的可能方案是:
1)每次调用默认回退意图时,我们都会调用一个Web服务,该记录跟踪当前用户已调用默认回退意图的次数,并第三次调用另一个服务。
2)在DialogFlow中将多个默认后备意图链接在一起,并在对第三个后备意图的调用上进行调用(这是否可能还是一个好主意?)
3)跟踪在DialogFlow中调用默认回调的次数(我相信使用实体),然后在第三次尝试中调用Web服务。
我刚接触DialogFlow时很高兴收到任何建议或想法
答案 0 :(得分:2)
如果您在(2)中表示“跟进意图”,那将是一个坏主意。涉及跟进意图链的任何事情都是一个坏主意。
说实话,我不确定您将如何完成(3)。 Dialogflow本身几乎没有能力包含这种逻辑。
最好的方法是(1)-对于所有内容,请调用实现网络挂钩并让其处理逻辑。通常,您要计算用户连续点击后备意图的连续次,而不是您计算的总计次。您可以将此计数器保留在短暂的上下文中。
(multivocal之类的库还可以为您跟踪计数器,并让您在响应或其他逻辑处理中使用它。)(免责声明,我是多声的首席开发人员。 )