ChatGPT入门案例|商务智能对话客服(三)

news/2024/11/27 0:21:32/

 本篇介绍智能客服的基本功能架构和基本概念,并利用对话流技术构建商务智能应用。

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 智能客服网页测试


http://www.ppmy.cn/news/26022.html

相关文章

Websocket详细介绍

需求背景 在某个资产平台,在不了解需求的情况下,我突然接到了一个任务,让我做某个页面窗口的即时通讯,想到了用websocket技术,我从来没用过,被迫接受了这个任务,我带着浓烈的兴趣,就…

rt-thread pwm 多通道

一通道pwm参考 https://blog.csdn.net/yangshengwei230612/article/details/128738351?spm1001.2014.3001.5501 以下主要是多通道与一通道的区别 芯片 stm32f407rgt6 1、配置PWM设备驱动相关宏定义 添加PWM宏定义 #define BSP_USING_PWM8 #define BSP_USING_PWM8_CH1 #d…

LeetCode 338. 比特位计数

给你一个整数 n &#xff0c;对于 0 < i < n 中的每个 i &#xff0c;计算其二进制表示中 1 的个数 &#xff0c;返回一个长度为 n 1 的数组 ans 作为答案。 示例 1&#xff1a; 输入&#xff1a;n 2 输出&#xff1a;[0,1,1] 解释&#xff1a; 0 --> 0 1 --> …

实战打靶集锦-006-Stapler

**写在前面&#xff1a;**记录博主的一次打靶经历。 目录1. 主机发现2. 端口发现3. 服务枚举4. 服务探查4.1 FTP探查4.1.1 匿名登录4.1.2 Elly用户4.1.3 John用户4.1.4 EXP搜索4.2 dnsmasq探查4.2.1 基础信息获取4.2.2 EXP搜索4.3 WEB应用探查4.3.1 浏览器访问4.3.2 目录扫描4.…

【安全开发】专栏文章汇总

安全开发–1–TCP和UDP网络编程 安全开发–2–嗅探邮箱协议口令 安全开发–3–Python实现ARP缓存投毒 安全开发–4–SSH通信工具开发 安全开发–5–编写简单的netcat工具 安全开发–6–一个简单的TCP代理工具开发 安全开发–7–SSH隧道工具开发 安全开发–8–Python实现流量数据…

CI/CD --- 什么才是真正的自动化平台

近2年在软件开发中比较火的两个术语&#xff0c;一个是敏捷开发&#xff0c;另外一个就是CI/CD了&#xff1b;敏捷开发顾名思义就是“以用户的需求进化为核心&#xff0c;采用迭代、循序渐进的方法进行软件开发”。那CI/CD&#xff08;Continuous Integration、 Continuous Del…

C++——C++11 第一篇

目录 统一的列表初始化 &#xff5b;&#xff5d;初始化 decltype ​编辑 nullptr STL中一些变化 右值引用和移动语义 左值引用和右值引用 总结 左值引用优缺点 右值引用&#xff08;将亡值&#xff09; 拷贝赋值和移动赋值 万能引用|完美转发 移动构造和移动赋值注意…

ThreadLocal 内存泄漏问题

1. 认识ThreadLocal java中提高了threadlocal&#xff0c;为每个线程保存其独有的变量&#xff0c;threadlocal使用的一个小例子是&#xff1a; public class ThreadLocalTest {public static void main(String[] args) {ThreadLocal<String> threadIds new ThreadLoc…