如何搭建一个智能客服(二):结合业务场景撰写多轮对话PRD
首先我们通过观察业务场景,来抽取终端用户需求和明确需要通过AI来实现的对话流程。这一步的重点在于理清大多数用户的高频出现的需求,也可以说是正常用户经常会问的问题和会做的操作。要这样做是因为AI的开发成本毕竟不算低,所以好钢用在刀刃上,我们暂时不关注少量用户奇奇怪怪的想法。
以苹果专卖店为例,我拿了两个常见的对话场景:
1号场景——买iphone
店员:欢迎光临,您要买什么?
消费者:我要一台iphone
店员:您需要哪一款?
消费者:11
店员:128G还是64G?
消费者:64的
店员:什么颜色?
消费者:黑色
店员:好的,请您付款,谢谢。
2号场景——买Macbook
店员:欢迎光临,您要买什么?
消费者:我要一台Macbook pro
店员:什么尺寸呢?
消费者:15.6寸
店员:什么颜色?
消费者:黑色
店员:好的,请您付款,谢谢。
接下来我们把每个环节拆分成不同的用户意图,如下:
这样我们拿到了7个不同的意图,接下来是准备一些样本做识别训练。样本的概念就是对一个意图不同的表达方式,比如“我想买个iphone/您好我买个iphone/帮我拿个爱疯手机”都归为买iphone的意图。
样本的来源可以是实际的业务场景下发生的对话,也可以是靠自己生成,当然最好是前者,这里样本的丰富度决定了识别的准确性。
注意收集了足量的样本后,要抽取一部分用来后面作为测试集。当识别率达到我们要求的置信度时,假设阈值是80,就可以着手下面流程的部分了。
首先,我们把上面两个对话变成两个AI处理的流程。
关于付款之类的操作,大概率还需要跟其他系统的对接和联调,因为这篇主要讲对话,所以这部分按下不表。到这儿,我们就得到一个基本可以用的小机器人了,它可以完成前面场景里店员要做的工作。
下一步是对流程的完善。因为对话产品不像普通的产品,用户再怎样也离不开页面上有的东西。对话时用户行为是不受限的,他们讲什么都可以,那么也就可以不按照预设流程去走。
比如买iphone到一半,用户改主意要买MacBook呢?因此在上图的完美流程外,我们要加一些节外生枝的东西进去。
这里插播一个知识点。在NLP中,人工智能本身是不能够理解用户意图的,它只是根据大量样本的统计结果做概率预测。比如,如果你在“买iphone”的训练样本中加入了大量的“买豆腐”,那么当你去测试买豆腐,它一定会认为你在买iphone。
没有理解力这个事情导致了什么呢?它既没有听得懂的概念,也没有听不懂的概念。因此,在实际的训练中,我们需要准备第8个意图,叫做“无意图”,用来把跟实际场景无关的话语与有效话语区分开来,比如“买豆腐”就应该算到无意图里。
back回来,考虑了非理想流程的可能性后,两个流程结合到了一起,现在长这样:
乍一看可能有点眼花,我解释一下。中间交叉的线表示,当用户在买iphone的过程中表示了买MacBook的意愿,则转去MacBook流程;反之亦然,用户可以买MacBook时切换到买iphone。
为了简单表示流程,当用户表达了跟当前场景没什么关系的话,即我们认为无意图时,则让AI再次询问前一个问题,以便提示用户走完流程。核心原则依然是收敛而非发散。轮次与AI询问的内容都不是固定的,届时根据实际应用场景灵活运用即可。
事实上,在我写过的PRD中,上图是一个非常简化的版本,它一共只有流程*2和意图*8. 在真实的业务流程中,因为场景的复杂度很高,所以交叉排列出的可能性也非常之多。这一部分就很考验PM对于用户行为的观察和预测,以及对场景的拆解能力。理论上,拆解出的颗粒度越细,设计的场景丰富度越高,那么使用起来的体验就越舒适越近似人工客服。
我另外做了一个更为复杂的版本,基本框架都没有变,所以不再多做说明,贴上来以供参考。(欢迎同行一起交流呀)
本文作者 @一个圆圈儿
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!