- Published on
Dify 实战——构建 AI 客服
- Authors

- Name
- 叫我小N就好啦
- GitHub
- @MinorN
使用 Dify 构建 AI 客服
客服分为:售前客服、订单客服、售后客服等等,所以我们需要一个问题分类器,来对各种类型的问题进行分类,从而转接到不同的客服
我们导入一点客服的数据(假的测试即可)
搭建售前客服
添加对应知识检索节点
随后添加大模型节点,选择对应的上下文
最后添加直接回复即可,随后点击预览,提问:请介绍你们家的产品特点,价格如何。只要是有关售前的问题即可
搭建订单客服
首先我们可以用户一上来就可以填写我们的订单号,在开始节点添加一个参数
随后添加条件分支节点,判断用户是否提供了订单号
最后查询到订单后,直接返回即可。
但是这样会有个问题,如果我们一开始不提供订单号,后续再提供,此时的 orderid 并不会赋值,会一直走 else 流程,所以我们需要在 else 分支后添加参数提取器,根据用户的输入提取对应的订单号
随后我们需要判断是否提取出了订单号
但是此时出现新的问题,http 请求节点此时的参数可能会从两个来源产生,用户一开始就提供了订单号或者参数提取器提取的订单号;我们就需要用到一个新的节点:变量赋值
此时我们全局中就有了一个全局变量 orderid
然后只需要把 http 节点中的参数改成从会话中获取 orderid 即可
http 节点返回后的值发现被包裹了一层,所以我们需要一个代码执行节点来进行转化成 Object
我们如果想美化返回的内容,可以使用模板转换节点,直接写 html 变得更加优美即可
搭建售后客服
售后客服的前提是必须得有相对应的订单,和订单问题类似,也需要判断是够有对应的订单号,流程和订单问题极度相似,所以说在代码执行的节点后需要在添加一个条件判断,判断订单问题和售后问题,如果是订单问题,走原流程,是售后问题,我们需要走知识库的查询(和售前类似)