今天的文章仍然来自Jerry的老同事,SAP成都研究院的张航(Zhang Harry)。关于他的背景介绍,请参考张航以前的文章:SAP成都研究院飞机哥:程序猿和飞机的不解之缘。下面是他的正文。前端
你们好,我是来自SAP成都研究院C4C开发团队的Harry。 今天给你们带来一个SAP C4C中国本地化的案例分享,这是咱们成都C4C开发团队目前正在进行中的一个具备前瞻性的原型开发:经过C4C、微信、和基于Recast.AI的聊天机器人进行集成, 提高C4C的工单处理能力。 node
这个原型开发以前我也在SAP成都研究院内部分享过,这是当时会议的宣传海报。很是感谢个人同事,S4CRM团队的Liu Zoe和最懂个人汪哥帮我量身设计了这张以F35战斗机为背景的海报。算法
相关业务背景介绍数据库
C4C在业务模块方面分红销售和服务两大块,做为SAP的一款云产品,天天要快速处理大量的且时效性很强的业务信息。好比: 销售模块须要实时挖掘销售机会,服务模块须要对用户提出的产品故障,进行快速实时的反馈和响应。json
SAP解决方案和社交渠道集成的价值在于,经过该方式,用户能够随时方便地接入系统,同时系统的反馈信息也能实时快速地反馈给用户,这样系统和用户之间的交互效率和用户体验就大大提升了。小程序
另外一方面, 工单处理(Ticket)是服务模块里面重要的功能之一。客服人员天天有数量巨大的工单须要处理,面临很大的压力,同时,系统对用户提出的紧急的产品故障,须要快速实时地作出正确的处理和反馈。所以,工单处理模块必需要保证高速性和高有效性。微信小程序
咱们团队完成的原型开发,在第一阶段实现了C4C工单处理流程和微信的集成:用户能够经过关注微信公众号,来经过微信渠道快速发布产品故障信息,同时,咱们处理的结果、解决方案也能够经过微信,快速、实时地反馈给用户。这种方式利用了微信的渠道优点,提升了工单处理的速度。服务器
而聊天机器人的集成,帮助咱们提高了工单处理模块的另外一个能力:高有效性。尽管客服人员天天会有不少工单须要处理,然而根据实际的客户经验,这些工单里面,大部分问题都有一些共同特色:处理起来比较简单,处理的逻辑不复杂,只须要客服人员稍微指导一下,客户本身就可以解决掉。 微信
这些问题的一些典型例子有,客户没有看懂说明书,或者产品设计不合理,诱导用户进行了错误操做,再或者是一些很常见的问题。架构
虽然这些问题单个处理起来花不了太长时间,可是数量一多,也会消耗客服人员大量的时间和精力来处理。
在这种背景下,成都C4C开发团队提出了一种解决方案: 引入智能聊天机器人,经过机器人内嵌的NLP(Natural Language Processing)天然语言分析能力,分析用户提出的问题。识别出用户提出问题里面的关键因素:
而后利用这些关键因素,去后台知识库找到对应的解决方案,反馈给用户,智能指导用户解决问题。
该方案的优势是:理想状况下,会有很大数量的处理复杂度较低的客服工单被机器人自动处理掉了,客服人员面临的工单数量上的压力变小,能够把精力放在真正须要人工处理的那些复杂度较高的工单上。
实现效果展现
在C4C端,咱们作了一个UI风格和微信很是类似的聊天界面,目的是方便客服人员在C4C系统里面, 和正在使用微信端的用户进行聊天。界面和交互方式模拟微信,目的是为了让客服人员用起来更加习惯,方便上手。
首先,当用户打开公共号聊天窗口时,机器人客服会致欢迎词,并提示用户按照必定格式输入产品故障信息,方便聊天机器人识别。
下图便是客户在本身手机上的微信应用里同C4C微信机器人进行交流:
当系统成功识别出用户提出的产品故障信息时,就会找到对应的解决方案,包装之后,经过社交渠道反馈给用户。
那么系统是如何自动进行产品故障和其解决方案的匹配呢?除了在C4C UI开发一个上面描述的模拟微信的聊天窗口和前端相关逻辑外,咱们还部署了一个独立于C4C系统的第三方服务器, 基于node.js架构,称为Agent Server,用于拦截和处理来自C4C, 微信和聊天机器人的请求,实现相关的路由算法和处理逻辑。
在Agent Server上,咱们部署了一个数据库,实现了相应的数据搜索逻辑,称为知识库(knowledge Base),用来管理和存储工单处理的关键信息,包括:
当用户输入信息包含合法的产品故障信息时(好比包含有产品型号,或者产品故障信息的具体描述), 经过Recast.AI识别出来后,会尝试去上述介绍的Agent Server上的知识库去查询相关的解决方案。若是可以找到解决方案,聊天机器人直接将其回复给客户,引导客户本身解决问题。
当机器人识别到用户输入的关键信息有问题,好比输入的产品型号有误,故障信息描述不许确,机器人也会在聊天窗口提示用户从新输入正确信息。
若是机器人没法找到相应的解决方案,或者实在没法识别用户输入语言里面的有用信息,会提示用户,切换到人工处理模式,同时向C4C后台发送提示信息,提示客服人员接手处理。当客服人员在聊天窗口输入信息时,工单处理模式自动切换到人工模式。
技术实现
用户输入的天然语言是“扁平化”的文本信息,输出是C4C经过微信反馈给用户的问题处理结果和解决方案,其展示形式可能会多种多样:简单的文字信息、或者是内嵌的连接、或是带有图片,word文档,pdf文档等附件,供用户选择。
上述业务需求的技术实现流程经历了三个阶段:
第一阶段,NLP天然语言建模。用户输入的扁平化的文本信息,系统是没法直接识别的,这些文本信息包含了多个维度的信息,好比: "我刚买的iphoneX 开不了机了"。其中 “iphoneX”和“开不了机”,分别表明了产品信息和故障信息两个维度的特性。NLP建模过程,就是把纯文本里包含的这些信息分门别类提取出来,再映射到不一样维度上,造成一个多维度立体化的数据模型。具体体现咱们这个原型开发里,就是一个json格式的数据。
下面给出了Recast.AI训练的截图,经过训练,使得AI可以把扁平化的输入文本,分析出正确的Entity, 即生成正确的多维度信息。
关于Recast.AI的更多使用细节,能够参考Jerry的文章:使用Recast.AI建立具备人工智能的聊天机器人。
第二阶段,把第一阶段传来的立体化、模型化的信息,由系统进行分析,识别出关键信息。根据关键信息,去知识库检索,拿到须要回复的信息。若是取不到关键信息,或者用户输入的信息有问题,由相关的逻辑组合成适当的信息做为缺省回复。
第三阶段,把处理的结果和解决方案,组装成知足微信信息要求的格式,反馈给用户。
将来的功能进一步扩展的探讨
目前咱们完成的这个原型开发,主要目的是为了验证技术可行性和最简单的业务原型展现。 若是须要把这个原型转化成C4C产品,不管从产品功能仍是技术实现,都须要进一步的细化和完善。下面是咱们未来会进行进一步研究和探索的方向。
将来在给用户反馈的信息类型上,能够进一步向更加多样化和人性化方向扩展。好比:给用户的回复信息也能够是像word,pdf或者图片这样的格式,更好地帮助指导用户操做。或者经过带有连接,或者可执行按钮的反馈信息,用户点击后,能够进入更加详细信息的帮助页面,指导用户一步一步动态操做。
将来,能够考虑进一步丰富异常处理方式,实现智能化切换到人工模式。当系统找不到合适解决方案时,至少可以根据已有信息,和系统里经过人工客服处理过的历史数据进行挖掘,分析哪些技师适合处理此类问题,再把分析结果推送给客服人员。
将来产品知识库的设计须要考虑到多重场景下多重解决方案的精肯定位。好比,引入更多的查询要素,且不一样的要素还能够设置不一样权值,不一样要素呈现层级关系,上层要素定位的解决方案能够被下层复用。查询要素和对应解决方案,也能够呈现多对多的关系。
由于我于2007年就进入SAP成都研究院并从事SAP Business ByDesign相关开发工做,这些年来我也有幸见证了SAP C4C的诞生,发展和壮大。在ByDesign这个基础技术平台上,经过开发不一样的业务功能模块,衍生出了突出CRM这个行业垂直解决方案的C4C, 和突出端到端总体化解决方案的ByDesign标准产品。
巧合的是:我文章开头海报中F35战斗机的实现方案和SAP C4C产品有殊途同归之处。 正好我本身也收藏了一架比例为1:72的F35C的模型,拿出来给你们分享一下:
和大名鼎鼎F22“猛禽”同样,F35也是美国第四代先进战斗机,绰号“闪电2”, 21世纪才开始生产和装备,和强调高精尖和技术优点的F22不一样,F35一开始研制采用了不少下降风险、成本的方式,好比拉拢多个伙伴国家,共同开发,技术共享和共同生产等。带来的好处就是:下降了技术风险,生产成本和后续维护成本。
另外一方面,面临的挑战是:做为一款多国家共同研发多用途战斗机,必需要适配多个国家、多个军种,和各式各样的使用场景。
同SAP C4C是基于SAP Business ByDesign平台衍生而成同样,F35也在一个基础平台的基础上,经过加装不一样功能组件, 衍生出三种子型号, 以适应不一样的使用场景:
1. F-35A:传统的陆基起降型,加装的功能组件最简单, 成本最低,主要在美国和其它国家的空军服役。
2. F-35B:垂直起降型,机身中间加装了能向下喷气的升力风扇,同时发动机带有矢量喷管,可以90度向下喷气,实现了垂直起降。这种型号的F35能够部署在,像日本 “加贺”级,英国的“伊丽莎白”级这样的中小型航母上,或者美国海军陆战队的“黄蜂”级、“美国”级这样的两栖攻击舰上。
3. F-35C:航母舰载型,也是我照片里面的模型的机型:机翼带有折叠功能,能够节约在航母上部署的空间,而且安装有增强的起落架和降落用着舰钩。
F35C在美国海军服役,部署到“尼米兹”,“福特”级这样的大型航母上。
今天关于SAP C4C和微信集成的创新案例就分享到这里,感谢你们阅读。
更多阅读
SAP成都研究院的C4C开发团队的同事们已经写过不少关于C4C的技术文章了,列表以下:
要获取更多Jerry的原创文章,请关注公众号"汪子熙":