简介:
针对问题咨询场景中出现大量相关领域的问题,PAI提供了智能客服对话系统解决方案,以降低客户等待时间和人工客服成本。本文以汽车售前咨询业务领域为例,介绍如何基于人工智能算法,快速构建智能客服对话系统。
背景信息
问题背景
- 在企业服务用户的过程中,每天都会出现大量相关领域内的问题。
- 传统的人工客服作息服务解答效率低,且成本高。
智能客服对话系统可以帮助企业实现在线服务的智能化人机协作系统,提高坐席服务的效率、降低人力开销及新人业务学习成本。
解决方案
- 机器学习平台PAI在智能客服领域,提供了端到端的纯白盒解决方案。客户只需要准备好自己相关领域的FAQ(常见问题)和知识图谱数据,就可以利用PAI自定义的搭建从算法构建到模型部署的人工智能流程,形成完整的端到端解决方案,实现对应领域智能客服的业务系统。
- **本文以“汽车售前咨询”这一业务领域为例,**展示如何快速搭建智能客服机器人,从而实现机器人自动回答用户关于汽车售前业务的相关问题。这样一方面节省客户的咨询等待和信息检索时间,另一方面节省企业运营人力成本,使精力可以集中在筛选出的高价值客户上。
方案优势
- 纯白盒:
可根据您自己具体的业务场景,自定义构建智能客服业务系统。
- 端到端:
从最初的数据准备到最后的模型部署推理,提供全链路的系统构建流程。
- 有据可依:
对话系统内所有的回答都是有依据的,避免纯深度学习方案的不可解释性。
- 鲁棒可控:
系统任何地方出了问题,都有相应的异常处理与bad case分析应对机制。
工程部署架构
用户将**
知识图谱数据
,模型和特征文件以及FAQ数据
存储在OSS
上,然后将智能客服对话系统服务部署在PAI-EAS
上就可以使用FAQ检索
**和知识图谱查询提供的功能来做智能客服问答。详见第五章:智能客服在线服务配置。
对话系统内部状态
系统初始化后进入闲聊状态,对用户输入“您好”等话术进行响应。响应完成后系统进入问题接收状态,此刻等待用户提问。接入通过**
实体归一化
/属性归一化
来对用户提问中的实体和属性进行明确,接着进入问答状态进行FAQ检索
或者知识图谱查询
**,当出现异常状况时,进入异常处理模式,在异常处理中引导用户进入正确的查询。
基于FAQ常见问题检索的问答
基于FAQ(常见问题)的问答系统总体结构如下图所示,系统的关键模块包括:
- 频繁问答对数据集,即**
FAQ问答库
**。- 预处理模块:负责对query进行分词等操作。
- 检索模块:负责从FAQ中检索可能与用户查询相似的若干标准问句。
- 相似问句选择模块:负责从候选相似问句中,选择与用户查询最相似的标准问句。
具体而言,检索模块会在对用户提出的**query
进行预处理的基础上,从 FAQ数据集
中检索K个与 query
最相似的问句。然后相似问句选择模块会从K个候选相似问句中,选出与 query
**相似度最高的,并判断是否具有足够的置信度。
如果相似度最高的候选相似问句的置信度达标,“相似问句选择模块”就会判定该问句是用户**query
**的同义问句,从而返回提前预置好的答案。
FAQ频繁问答对数据集准备
FAQ
,即Frequently Asked Questions、是业务场景中用户最常问的问题,又称“标准问题”。
本文以“汽车售前”的智能客服场景为例,展示 FAQ
所需的数据,文件列表如下所示:
car_faqs ├── query_label_idx_map.txt # 标注问题ID编号文件
├── questions # 标准问题同义配置文件
│ ├── 保养灯的使用说明
│ ├── 保养一次多少钱
│ ├── 变速箱故障灯亮
│ ├── ......
├── answers # 标准答案配置文件
│ ├── 特斯拉_model3_2021款_标准续航升级版
│ ├── 特斯拉_modely_2021款_长续航版
│ ├── ......
步骤一:给标注问题编号
为提升检索模块的召回率,一般会为每一个标准问句配置若干同义问句。
首先对**FAQ
频繁问答库中的标准问题进行 ID
化编号,比如针对上面 FAQ
**中的标准问题,ID化后,问题和数字之间用tab分隔。
下面为示例文件**【query_label_idx_map.txt】
**的部分数据样例。
有几个排气管 0
是双排气管吗 1
问某款车是什么悬挂 2
有换挡拨片吗 3
问发动机产地 4
变速箱是哪里产的 5
问上市时间 6
问某款车上市了吗 7
可以加装换挡拨片吗 8
一保多少钱 9
步骤二:配置同义问题
准备好上面的标注问题ID编号文件后,现在需要为每个标准问题配置若干个同义问题。
以“保养灯的使用说明”为例,文件的每一行内容对应一个和“保养灯的使用说明”同义的问题。下面为示例文件【保养灯的使用说明】的部分数据样例。
新款保养灯怎么设定
保养灯是什么样子的图标
保养灯什么消岀
保养灯归是什么标志?
保养灯长什么样子
保养灯如何设置。因为过保不想去4S店了,有谁知道的说一下
保养灯归零,是怎么,弄得,请问各位兄弟,谢谢!
保养灯和燃油指示灯同时闪烁是怎么回事?
有保养灯的没有?
汽车保养灯归零
然后将所有的标准问题同义配置文件放到文件夹 questions
中。
步骤三:配置标准答案
准备好上面的标准问题列表后,下面介绍汽车售前FAQ数据问答数据集的准备。
以“特斯拉_model3_2021款_标准续航升级版”这款车为例,其中[]中表示问题类型,后面展示问题的答案,其中答案和问题类型之间用tab分隔。下面为示例文件【特斯拉_model3_2021款_标准续航升级版】的部分数据样例。
[有几个排气管] 0个
[是双排气管吗] 不是
[问某款车是什么悬挂] 前麦弗逊式独立悬架,后多连杆独立悬架
[有换挡拨片吗] 没有
[问发动机产地] 美国
[变速箱是哪里产的] 上海
[问上市时间] 2021年1月
[问某款车上市了吗] 2021年1月已上市
[可以加装换挡拨片吗] 可以加装,但需要加装模块
[一保多少钱] 5000公里做首保,首保免费
然后将所有的标准答案配置文件放到文件夹 answers
中。
问答特征向量化
利用**PAI
提供的可视化建模 Studio
平台,基于海量大数据语料预训练获得的NLP迁移学习模型,进行用户 query
**向量表征模型的构建。其中示例实验用到的训练集、评估集、测试集。
-
进入Designer控制台
- 登录PAI控制台。
- 在左侧导航栏中,选择****模型开发和训练->可视化建模(Designer)。
-
构建实验
- **在可视化建模(Designer)控制台中,选择实验模板,在实验模板列表中找到****智能客服问答特征向量化,**点击并创建实验。
- 在实验列表中找到刚才创建好的模板实验,并进入实验。
- 系统根据预置的模板,自动构建实验,如下图所示。运行过程中,点击组件右键,可查看运行日志。
基于KBQA的知识图谱问答
KBQA
的全称是基于知识库问答(Knowledge Base Question Answering),即给定自然语言问题,通过对问题进行语义理解和解析,进而基于知识图谱构建的知识库进行查询、推理得出答案。
基于知识图谱的精准问答子系统的关键模块包括:
基于KBQA的知识图谱问答的架构图如下所示:
知识图谱数据准备
针对**实体
、属性
名称和 属性值
,智能客户系统采用可读性强的 JSON
**来构建数据文件。
属性名可以包括子属性,以“特斯拉model3_2021款_标准续航升级版”为例,车轮制动属性包括:前制动器类型,后制动器类型,驻车制动类型这三种子属性。用户需要将业务中的数据转换成 JSON格式
。
下面为示例文件【特斯拉model3_2021款_标准续航升级版.json】的部分数据样例。
{
"实体":
{ "名称":
"特斯拉model3_2021款_标准续航升级版",
"关键词": "特斯拉|model3|2021款|标准续航升级版"
},
"属性":
{
"厂商":"特斯拉中国",
"品牌":"特斯拉",
"经销商报价":"27.6万",
"级别":"中型车",
"上市时间":"2021.07",
"纯电续航里程":"525km",
"充电时间":"快充一小时,慢充10小时",
"百公里加速时间":"5.6s",
"整车保修期限":"4年或8万公里"
},
"变速箱":{
"变速箱档位个数":"6个",
"变速箱类型":"电动车单速变速箱" },
"配置": {
"内部配置": {
"空调": {
"空调控制方式": "自动",
"温度分区控制": "有",
"后座出风口": "无" },
"行车电脑显示屏": "有",
"倒车视频影像": "有" }
}
}
评论区