不管是闲聊还是问诊,代码层面的处理逻辑,应该都是一个意图识别,和一个回复解析。这节课,就先来搞定初始的意图识别,因为初始意图的句子都很短,所以就不用模型了,还是沿用电影问答项目里面的 Levenshtein 编辑距离,来计算相似度。

代码示例

1、入口分流

内容不可见,请联系管理员开通权限。

2、初始意图处理方法

内容不可见,请联系管理员开通权限。

3、初始意图识别

内容不可见,请联系管理员开通权限。

4、计算编辑距离

两个句子相似度越高,score就越大,同时定义一个阈值,如果相似度小于阈值,就判定为不是这个意图。

内容不可见,请联系管理员开通权限。

5、遍历计算

依次对比所有模板,取最相似的句子的意图,作为用户问题的意图结果。如果相似度都小于阈值,则返回值为空,说明用户问题不是简单的初始意图,进入后续的问诊逻辑。

内容不可见,请联系管理员开通权限。

好的,这节课代码虽然不多,但涵盖的知识点还是挺多的,因为在之前的项目里面讲过了,所以就不再重复。但是也有一个无法调和矛盾,前面的课得另收费,支持一下原创,或者自己去查查文档都可以,大家看着办吧。

本文链接:http://www.ichenhua.cn/edu/note/638

版权声明:本文为「陈华编程」原创课程讲义,请给与知识创作者起码的尊重,未经许可不得传播或转售!