企业智能客服:售前售后服务优化
在上一篇中,我们通过创建知识库和使用工作流,实现了基于知识库的问答和个性化推荐功能。
本篇,我们将继续优化智能客服系统,举个例子来通过以下几个方面来提升售前和售后服务。
需求分析
- 加入汽车故障处理的知识库,当用户咨询车辆故障问题时,智能客服能够根据知识库中的信息,提供准确的故障处理方法和建议。
- 添加用户的汽车预约功能,用户可以通过智能客服系统预约汽车保养、试驾等服务,智能客服会记录用户的选择和预约信息。
操作步骤
一、创建知识库 - 汽车故障处理
首先,我们将对应的汽车故障的问答集收集起来,导入到一个新的知识库中,这里因为是示例,我就直接使用 AI 帮我生成了一个 200 条的问答集,有需要下载的可以使用以下链接进行下载:
然后,我们导入到知识库中,选择故障现象作为知识库的索引,导入结果类似如下:
这里要留意下,在创建知识库的时候,知识库的名称一定要说明清楚,比如这里我们创建的是汽车故障处理方法合集,这样大模型在回答用户问题的时候,才会更稳定地找到对应的功能去回答。
最后,我们只需要将这个知识库加入到我们的 Bot 中就可以了,如下图:
总结一下,这种基于汽车故障处理等特定业务功能,可以通过简单创建和导入相应知识库的方式快速实现。这种方法可以既高效又稳定,迅速提升智能客服系统的服务能力。
二、创建工作流和数据库 - 处理汽车预约业务
这次的工作流我们还会使用一个最近扣子新推出的工作流节点 - 问答,因为文档之前的篇章没有介绍这个新的节点,大家可以先阅读一下官方的文档初步了解一下:
我们先来看看整一条工作流是怎样的:
出于这次的工作流比较复杂,我会将它发布到工作流商店中,让大家可以更好地参考以及使用,有需要的小伙伴可以前往查看:
这次我就不一个个节点进行讲解了,主要是因为工作流节点比较多,这里我主要讲一下几个比较重要的流程处理。
1. 判断用户是否已录入身份证 ID 号
首先我们先在 Bot 设计界面中添加一个全局变量current_user_id,主要是用于全局录入需要预约的用户身份证号。
在 AI Bot 基于用户有关汽车预约的对话中,我们首先需要判断用户是否已录入身份证 ID 号,如果未录入,则会引导用户先录入身份证 ID 号,如果已录入,则会引导用户进行下一步的预约操作。
-
开始节点:接收用户输入(BOT_USER_INPUT)。
-
获取用户 ID(get_user_id):
- 输入:current_user_id(Bot 全局变量)
- 输出:user_id
-
条件判断:检查是否已获取到用户 ID。
-
如果没有获取到用户 ID:
- 进入"请输入身份证号码"节点(问答节点)
- 提示用户输入身份证号码
- 接收用户响应(USER_RESPONSE)
- 将用户输入的身份证号码保存为 user_input_id
-
更新用户 ID(update_user_id):
- 输入:current_user_id(Bot 全局变量)
- 使用用户输入的身份证号码更新全局变量中的用户 ID
-
如果已经获取到用户 ID 或完成更新:
- 进入下一步流程
这个工作流的主要目的是确保预先录入用户的身份证号码,如果没有,就引导用户输入并保存。这是进行后续预约等操作的前提条件。
2. 意图识别具体的预约类型
在用户录入了身份证号码之后,我们就可以进行下一步的预约操作了,这里我们需要使用到意图识别节点和问答节点,来识别用户具体的预约类型。
-
意图识别节点:
- 输入: 用户的查询内容(query)
- 识别意图: 预约汽车相关服务、查询预约信息、录入用户身份信息等,基于用户的提问,识别出用户具体的意图(这里的录入用户身份信息,是基于用户还没有录入身份证号码的前提下过来的,所以这个分支的后续会提问引导用户需要什么具体的服务,即下面的第 3 点)
- 输出: 分类结果(classificationId)和原因(reason)
-
问答节点 - 询问预约类型(识别到用户意图是预约汽车相关服务的前提下):
- 提问: "请问您需要预约哪类服务?"
- 选项: A. 汽车保养 B. 汽车试驾
- 接收用户响应
-
问答节点 - 询问具体服务(识别到用户意图是用户刚录入完身份证号码的前提下):
- 提问: "请问具体是什么服务需要预约呢?"
- 选项: A. 预约汽车保养,试驾 B. 查询预约信息
- 接收用户响应
这些节点的组合可以帮助系统更精确地理解用户的意图,并引导用户提供必要的信息来完成预约流程。
系统首先通过意图识别大致判断用户的需求,然后通过问答节点进一步确认具体的预约类型和服务内容。
3. 查询用户的预约信息
在用户确定需要查询自己当前的预约信息时,我们就可以通过查询数据库的方式,查询到用户当前的预约信息,并返回给用户。
为了这个用户预约记录查询添加等功能,我们这次新加入了一个数据库,用于存储用户预约记录,给大家先看看具体的表结构:
这里有几点需要说明下:
- 这个数据表是不支持在 Prompt 中调用的,这意味着该数据表记录的增删改查只能通过工作流的方式去调用和维护,这是为了可以让数据表的记录更加的安全和稳定,避免被用户随意篡改;
- 这个数据表的
Table 查询模式是多用户模式,意味着所有的用户都是共用一个数据表的记录,正常情况下每个人都可以查询其他人的记录,但这是不允许的,所以这就是为什么我们需要第一点的约束。我们只允许工作流的方式去操作,意味着我们可以通过限制每个用户只能使用自己的唯一身份证 ID 来操作只属于自己的数据。
好,我们接下来去看看如何查询用户的预约信息:
你可以看到这里的信息查询,我们是通过工作流限制了只能根据自己当前的身份证 ID 来查询自己所有的预约信息,从而保证数据的隐私性和安全性。
等从数据库查到具体的预约信息之后,我们后面还接了一个大模型节点来润色一下生成的数据结果,毕竟从数据库查出来的结果可读性是比较差的,不适合非技术用户直接阅读。
最终将上述查询结果输出给结束节点返回,这样,我们就完成了一个完整的用户预约信息查询的流程。
4. 预约汽车保养和试驾
而当用户确定需要预约汽车保养和试驾时,我们就可以通过多个问答的方式,将用户的信息和预约信息保存到数据库中,从而完成预约操作。因为无论是记录汽车保养和试驾的流程都是类似的,这里我就直接使用预约保养的流程进行讲解:
-
获取用户车型信息(get_maintain_car_type):
- 问答节点询问:"您需要预约哪种车型?"
- 用户回答后,系统记录车型信息(car_type)
-
获取预约日期(get_maintain_appointment_date):
- 问答节点询问:"您打算预约哪个日期?"
- 用户回答后,系统记录预约日期(appointment_date)
-
获取用户联系方式(get_maintain_user_info):
- 问答节点询问:"请问您的联系电话是多少?"
- 用户回答后,系统记录联系电话(contact_phone_number)
-
获取用户备注信息(get_maintain_user_note):
- 问答节点询问:"您还有其他需要备注的信息吗?"
- 用户回答后,系统记录备注信息(note)
-
写入预约信息到数据库(insert_appointment_record):
- 数据库操作节点,执行插入操作
- 输入字段包括:
- appointment_type(预约类型)
- appointment_date(预约日期)
- car_type(车型)
- user_id(用户 ID,即身份证号)
- contact_info(联系方式)
- note(备注)
- SQL 语句执行插入操作
这个流程通过一系列问答节点收集用户的预约信息,然后将这些信息整合并写入数据库。每个问答节点都专注于获取特定的信息(如车型、日期、联系方式等),这样可以确保收集到完整且准确的预约信息。
以上就是这个工作流的核心流程,通过这个流程,我们可以完成一个更好的汽车预约环节,虽然还是有可以优化的地方,这里篇幅有限,就由大家自行去探索和优化了。
第三部分功能演示
这里我直接给一个长对话的演示,让大家感受下整个流程的完整性:
首先,AI Bot 会通过身份验证来确保用户的安全,要求用户提供身份证号码。随后,它会智能识别用户的意图,无论是预约汽车保养、试驾,还是查询现有的预约信息。
在预约流程中,AI Bot 会引导用户逐步完成所需信息的填写。它会询问用户想要预约的具体服务类型,然后依次收集车型、预约日期和联系电话等重要信息。用户还可以添加额外的备注,确保服务人员能充分了解他们的需求。所有这些信息都会被妥善地记录在数据库中,以便后续使用。
当用户需要查询自己的预约记录时,AI Bot 可以迅速调取相关信息。通过用户的身份证号码,它能准确地从数据库中检索并展示用户的所有预约详情,让用户随时掌握自己的服务安排。
除了预约服务,这个 AI Bot 还整合了丰富的汽车故障处理知识库。当用户遇到车辆问题时,可以直接向 AI Bot 咨询。智能客服会根据问题的描述,从知识库中匹配最相关的解决方案,为用户提供专业的故障处理建议。
整个交互过程中,AI Bot 使用自然、友好的语言与用户沟通,使得即便是不熟悉技术的用户也能轻松操作。每一步的指引都清晰明了,为用户提供了流畅的使用体验。
总结
这个智能客服 AI Bot 成功地将知识库、工作流和数据库技术融为一体,打造出了一个功能全面、使用便捷的汽车服务 AI Bot。它不仅能高效处理日常的预约业务,还能为用户提供及时的技术支持,真正实现了多方位的客户服务体验。