ChatGPT入门案例|商务智能对话客服(三)
本篇介绍智能客服的基本功能架构和基本概念,并利用对话流技术构建商务智能应用。
01、商务智能客服功能结构
互联网的发展已经深入到社会的各个方面,智能化发展已经成为社会发展的大趋势。在大数据和互联网时代,企业和组织愈加重视客户沟通以及客户体验,传统的客户服务系统面临挑战,急需变革。
(1) 灵活性: 越来越多的客户使用移动和智能设备接入网络,接入时间和地点更加灵活化。
(2) 效率性:用户对客服的服务效率标准更加严格。
智能客服最常见的应用包括商务场景,比如导购机器人或者导购对话程序。按对话的交互方式,包含文字交互、语音交互以及复合型交互;按对话类型,可以分为问答、闲聊和任务等类型。智能导购客服的概要功能结构框架如图8-1所示。首先,用户需要通过文字或语音输入信息;然后,智能客服程序尝试识别并理解信息,并判断对话的问答、闲聊或者任务属性;接下来,调度程序会判断客服程序是否具备解决问题的能力,如果无法解决且有人工客服资源,就会转给人工客服处理;最后,客服程序根据搜集到的信息整理回复内容,并通过文字或语音返回给用户。在第一轮应答结束后,用户可以继续输入下一轮咨询内容,直到获得完整回复或者对话结束。
■ 图1 智能客服概要功能结构
02、商务智能客服设计要素
目前市场上商务智能客服应用比较多,各种客服之间的功能存在差异,智能客服的设计,主要考虑如下要素。
(1) 界定智能客服应用的服务对象和服务范围,用户的特点和服务诉求,界定问答、任务和闲聊等属性。
(2) 界定知识库水平,明确算法能力以及知识库的完备水平。
(3) 界定人机交互方式,例如,文字交互、语音交互或复合交互,支持的软件和硬件载体。
(4) 设计会话的相关流程,包括会话开启、问题查询、会话互动、回复显示以及转人工服务的流程等。
(5) 持续跟踪用户需求,提升对话体验,挖掘用户的潜在需求。
03、对话流概述
对话流框架
对话流(DialogFlow)是基于谷歌云自然语言理解的技术平台,使用机器学习技术使计算机理解人类语言的结构和含义。对话流可以作为独立解决方案在官方平台www.dialogflow.com上提供,也可以虚拟代理的方式部署。通过对话流技术,用户可以设计对话界面并集成到移动应用、网页应用和聊天机器人等,支持包括文本和音频等多种输入。
对话流提供两种虚拟客服服务,即对话流CX和对话流ES。
(1) CX:适合大型代理或者复杂代理类型。
(2) ES:适合小型代理或者简单代理类型。
对话流基本概念
1. 代理
对话流代理是基于自然语言理解的虚拟客服程序,通过代理与用户对话。它可以将用户输入的文字或音频转换为结构化信息。通过代理训练数据,实现自动处理附带一定模糊性的对话场景。
2. 流
在涉及多个主题的对话中,每个主题通常需要复数轮对话才能确定相关信息。流可以用于定义主题和关联的对话路径。
3. 页面
会话状态由页面表示,单个流可以定义复数页面,在给定时刻,只有一个页面是当前页面,称为活跃页面,与该页面关联的流被视为活跃流。
4. 实体类型
实体类型用于控制用户输入数据,比如时间和地址等。
5. 表单
每个页面需要定义一个表单,表单上列出从该页面用户收集的关联参数。
6. 意图
意图针对用户意图进行分类。意图包含训练短语和参数。
7. 网络钩子
网络钩子托管业务逻辑。通过网络钩子,可以执行动态响应生成和验证收集的数据等操作。
8. 实现
实现完成回答问题、信息询问、动态响应生成或终止会话等操作。
对话流框架图
对话流的输入可以是基于文本或音频的语言信息,支持英语和中文等多种语言。文本输入支持SMS、Webchat、电子邮件、Slack、Facebook Messenger、谷歌智能助理、推特、Skype等应用,文本信息支持拼写检查,这提升了自然语言理解处理的准确性。对话流基本流程可以概括如下。
(1) 接收文本或语音输入到文本处理器,如果是语音信息,则将其转换为文本信息流。
(2) 文本信息修正处理,将处理结果传递到对话流自然语言理解引擎。
(3) 检查文本流并尝试识别用户意图。意图通常具有与之关联的实体,例如名称、日期和位置。
(4) 确定意图以及实体等信息后,将此信息移交给满足意图的处理模块。
(5) 检索信息并通过对话流返回给用户。如果交互基于文本,则在同一信道中将文本响应发送给用户;如果是语音请求,则将文本转换为语音响应用户。
图2 表示了对话流的处理流程基本框架。
图2 对话流基本框架
04、商务智能客服案例
商务智能客服应用,根据不同的应用场景,具有不同的表现形式。在服务的各个流程环节中,都可能体现智能元素。
自动身份验证客服
用户输入的错误身份验证信息需要更正更新。按照传统方法,需依赖人工客服进行信息修正,对客户身份信息进行反复确认,耗时长效率低,降低了用户体验,甚至会影响后续流程。基于自动身份识别技术,实现结构化识别客户的身份信息,并进行自动化比对,核验成功后,可直接对错误信息进行自助修正,提升服务质量。
基于图像、人脸和文字识别的客服
引入图片搜索技术前,用户访问商务网站通常需要结合商品类型浏览检索,搜索效率低。基于图片搜索智能化检索方式可以快速定位目标商品,提升检索效率,帮助用户快速定位商品,简化操作,优化用户购物体验。
传统的纸质凭证和电子卡等识别系统导致服务系统内部各自独立、复杂、数据不统一,身份核验比对存在偏差;丢失需要人工补办,客户等待时间长,成为传统服务的盲点。基于人脸识别算法获取会员信息以及人脸支付等为多场景服务提供了统一的人脸解决方案,提高服务整体运营效率与用户体验。
而基于手写字体识别的智能技术,则能够快速定位海量信息中的特定用户,提升服务效率和用户满意度。
导航客服
导航机器人可以协助解决旅行旅游过程中遇到的问题,节约大量人力和物力,为用户提供咨询服务的同时,服务提供方也可以实时收集用户的最新需求,不断提升服务能力。
05、基于对话流的商务智能客服实战
下面介绍基于对话流框架,利用网络上下载的智能客服模板文件生成导购客服的操作步骤,前提条件是用户需要在DialogFlow官方网站上预先注册一个账户并开启支付功能,支付功能将根据实际产生的流量进行计费。注册成功后即可登录系统执行如下操作步骤。
(1) 打开网址dialogflow.cloud.google.com/#/getStarted,如图3所示。
■ 图3 对话流智能客服创建启动界面
(2) 单击Create Agent按钮,打开如图8-4所示代理创建页面,选择默认语言、默认时区,并选中创建新项目,然后单击CREATE按钮,生成一个新的代理。
■ 图4 创建智能客服
(3) 在左边导航窗口中选择新生成的代理名字,然后单击Export And Import标签,单击IMPORT FROM ZIP按钮打开模板选择窗口,选中预先下载的客服模板文件后上传到对话流系统。
(4) 上传成功后保存结果,如图5所示。
■ 图5 客服模型导出导入
(5) 选择左边导航窗口中的Fulfillment菜单,在Inline Editor右边选中ENABLED选项,然后单击DEPLOY按钮,如图6所示。
■ 图6 部署智能客服
(6) 激活API功能,记录API信息到系统,参见图7。
■ 图7 激活API
(7) 激活API功能,记录API信息到系统。打开网址https://console.cloud.google.com/,项目生成以后的信息画面如图8所示。
■ 图8 智能客服项目信息统计
(8) 选择Integrations,在打开的页面上选择Dialogflow Messenger,将智能客服程序集成部署到用户接口中,单击TRY IT NOW,参见图9。
■ 图9 对话流用户接口
(9) 集成部署结束后,在对话框中可以输入需要咨询的导购信息,智能客服会根据模型训练结果,基于用户提问自动回复,参见图10。
■ 图10 测试智能客服
(10) 也可以选择Web Demo,将生成的智能导购客服部署到网页上,显示如图11所示画面,复制画面中的网页链接地址到一个新开浏览器窗口。
■ 图11 智能客服网页部署
(11) 智能客服在新网页中打开,用户可以输入需要咨询的购物信息,智能客服根据上述流程自动回复用户的提问,参见图12。
■ 图12 智能客服网页测试
相关文章:

ChatGPT入门案例|商务智能对话客服(三)
本篇介绍智能客服的基本功能架构和基本概念,并利用对话流技术构建商务智能应用。 01、商务智能客服功能结构 互联网的发展已经深入到社会的各个方面,智能化发展已经成为社会发展的大趋势。在大数据和互联网时代,企业和组织愈加重视客户沟通…...

Matlab 最小二乘法拟合平面(SVD)
文章目录 一、简介1.1最小二乘法拟合平面1.2 SVD角度二、实现代码三、实现效果参考资料一、简介 1.1最小二乘法拟合平面 之前我们使用过最为经典的方式对平面进行了最小二乘拟合(点云最小二乘法拟合平面),其推导过程如下所示: 仔细观察一下可以发现...
AtCoder Regular Contest 126 D题题解
思路 首先我们看看假设选中 mmm 个数后的答案。 我们首先现将 mmm 个数移动到一起,在将他们重新排序。 我们知道,mmm 个数移在一起时,当位于中间的那个数不动时交换次数最少,于是可以列出式子(cic_ici 是点 iii 的…...
Android R WiFi热点流程浅析
Android R WiFi热点流程浅析 Android上的WiFi SoftAp功能是用户常用的功能之一,它能让我们分享手机的网络给其他设备使用。 那Android系统是如何实现SoftAp的呢,这里在FWK层面做一个简要的流程分析,供自己记录和大家参考。 以Android R版本为…...

【C++进阶】二、多态详解(总)
目录 一、多态的概念 二、多态的定义及实现 2.1 多态的构成条件 2.2 虚函数 2.3 虚函数的重写 2.4 虚函数重写的两个例外 2.4.1 协变 2.4.2 析构函数的重写 2.5 C11 override 和 final 2.5.1 final 2.5.2 override 2.6 重载、覆盖(重写)、隐藏(重定义)的对比 三、…...

node-sass@4.14.1 包含风险, 如何升级依赖至 dart-sass
文章目录需求我上网都查到了哪些信息在 github 看到了 node-sass 依赖的最新版本的列表:关于方案2的失败不同版本的 nodejs 和 node-sass依赖的**适配关系**从何得知替代方案——dart-sass如何安装 dart sass?需求 在做一个基于Node、React的前端项目&a…...

DataWhale 大数据处理技术组队学习task2
三、Hadoop分布式文件系统 1. 产生背景 数据量越来越大,一台独立的计算机已经无法存储所有的数据---->将大规模的数据存储到成百上千的计算机中------为了解决数据管理以及维护极其繁琐与低效------>分布式文件系统 分布式文件系统是管理网络中跨多台计算机…...

一文读懂select、poll、epoll的用法
select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,…...

《C陷阱与缺陷》----词法“陷阱”
导言: 由于一个程序错误可以从不同层面采用不同方式进行考察,而根据程序错误与考察程序的方式之间的相关性,可以将程序错误进行划分为各种陷阱与缺陷: ①.词法“陷阱” ②.语法“陷阱” ③.语义“陷阱” ④.连接问题 ⑤.库函数问…...

千锋教育+计算机四级网络-计算机网络学习-04
UDP概述 UDP协议 面向无连接的用户数据报协议,在传输数据前不需要先建立连接;目地主机的运输层收到UDP报文后,不需要给出任何确认 UDP特点 相比TCP速度稍快些简单的请求/应答应用程序可以使用UDP对于海量数据传输不应该使用UDP广播和多播应用…...
蓝桥杯算法训练合集十四 1.P08052.P07053.同余方程4.P08015.ascii应用
目录 1.P0805 2.P0705 3.同余方程 4.P0801 5.ascii应用 1.P0805 问题描述 当两个比较大的整数相乘时,可能会出现数据溢出的情形。为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法。具体来说,首先以字符串的形式输入两个整数&…...

判断字符串中的字符的类型isdecimal();isalpha();isdigit();isalnum()
【小白从小学Python、C、Java】 【计算机等级考试500强双证书】 【Python-数据分析】 判断字符串中的字符的类型 isdecimal();isalpha();isdigit();isalnum() [太阳]选择题 对于代码中isdecimal()和isalnum()输出的结果是? s "ABc123&…...

VSCode远程调试Linux代码,python解释器配置
安装插件并配置 安装后找到插件图标,点击 点击SSH上的 号 在弹出框中输入命令:ssh usernameip -p port username: 远程服务器的用户名 ip: 远程ip port:端口号,没有可以不用 输入完毕后点击enter 选择ssh配置文件保存…...

03:入门篇 - CTK Plugin Framework 基本原理
作者: 一去、二三里 个人微信号: iwaleon 微信公众号: 高效程序员 CTK Plugin Framework 技术是面向 C++ 的动态模型系统。该系统允许插件之间的松散耦合,并且提供了设计良好的方式来进行功能和数据的交互。此外,它没有预先对插件施加限制,这样就可以很容易地将插件的相关…...
面试攻略,Java 基础面试 100 问(九)
数组有没有 length()方法?String 有没有 length()方法? 数组没有 length()方法,有 length 的属性。String 有 length()方法。JavaScript 中,获得字符串的长度是通过 length 属性得到的,这一点容易和 Java混淆。 在 Java 中&…...
JavaScript 代码不嵌套主义
文章目录前言一、何为嵌套代码二、避免嵌套1.提炼抽取2.反转排列总结前言 看过不少过度嵌套的代码, 我真正意识到问题的严重性是刚入职那会, 我在一个老项目里看到了40个连续的else if, 套了6层的if, for和forEach, 因为我们并没有做什么限制代码嵌套的提前约定. 呃, 那之后认…...
使用默认参数的4大要点
概述 默认参数是C中新增的特性。在C中,可以为函数的参数指定默认值。调用函数时,如果没有指定实参,则自动使用默认参数。默认参数的基本语法这里就不作介绍了,下面重点介绍使用默认参数的一些知识要点。 基本规则 1、当函数中某个…...

Linux文件系统中的硬链接及常见面试题
如果能对inode的概念有所了解,对理解本文会有所帮助。如果对inode的概念不太清楚也没有关系,我们会捎带介绍一下。在文件系统的实现层面,我们可以认为包含两个组件:一个是包含数据块的池子,池子中的数据块是等大小的&a…...
opencv-StereoBM算法
原理解释目前立体匹配算法是计算机视觉中的一个难点和热点,算法很多,但是一般的步骤是:A、匹配代价计算匹配代价计算是整个立体匹配算法的基础,实际是对不同视差下进行灰度相似性测量。常见的方法有灰度差的平方SD(squ…...

图像分类竞赛进阶技能:OpenAI-CLIP使用范例
OpenAI-CLIP 官方介绍 尽管深度学习已经彻底改变了计算机视觉,但目前的方法存在几个主要问题:典型的视觉数据集是劳动密集型的,创建成本高,同时只教授一组狭窄的视觉概念;标准视觉模型擅长于一项任务且仅擅长于一项任务,并且需要大…...

7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...

MFC内存泄露
1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...

CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...

如何理解 IP 数据报中的 TTL?
目录 前言理解 前言 面试灵魂一问:说说对 IP 数据报中 TTL 的理解?我们都知道,IP 数据报由首部和数据两部分组成,首部又分为两部分:固定部分和可变部分,共占 20 字节,而即将讨论的 TTL 就位于首…...

OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
Xen Server服务器释放磁盘空间
disk.sh #!/bin/bashcd /run/sr-mount/e54f0646-ae11-0457-b64f-eba4673b824c # 全部虚拟机物理磁盘文件存储 a$(ls -l | awk {print $NF} | cut -d. -f1) # 使用中的虚拟机物理磁盘文件 b$(xe vm-disk-list --multiple | grep uuid | awk {print $NF})printf "%s\n"…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...