知识库管理系统代码(购物管理系统java代码)学到了
\x0a本文选自《交易技术前沿》第二十九期 (2017年12月)\x0a\x0a\x0a\x0a上交所技术有限责任公司 施微吟 wysh
本文选自《交易技术前沿》第二十九期 (2017年12月) 上交所技术有限责任公司 施微吟 wyshi@sse.com.cn 背景上世纪80年代,个人电脑开始成为可能;90年代网络开始普及;至本世纪20年代中期智能手机(SmartPhone)的出现奠定了目前我们使用的手机雏形;而当下,如某个咨询搜索IT大厂所称,以人工智能为中心集成软硬件技术的新时代已经到来。
某一个时代的特征这个话题可以留给社会科学,但上交所技术服务团队已经敏锐意识到了人们已经很习惯于通过使用智能手机的简单交互即能获取他想要知道的信息的方式并且,不仅是搜索,人们其实自觉或不自觉已经开始期望智能技术带来的更多服务。
在时代的感召下,本着公司一贯倡导的技术创新精神,团队不甘于已有成绩,以互联网公司的技术学习速度要求自己,于2016年开始研究“如何踏准技术的时代步伐,将最新智能技术引入工作,提高工作效率,提升工作质量”这一课题,并不断将研究结果付诸于实践,完成产品初期开发并投入使用。
2017年,我国国务院印发了《新一代人工智能发展规划》,在规划中提到“在智能金融方面……创新智能金融产品和服务……鼓励金融行业应用智能客服”在此规划的鼓励和指引下,我们对相关成果进行了总结,并在智能技术方向上做了更多研究和探索。
在此将这些工作总结成文,愿与各位同行共享交流和互相学习一、 SmarTalk定义SmarTalk,即上交所技术服务的智能客服系统通过当代软件技术,实现在手机端或电脑端的证券IT技术支持服务SmarTalk的命名灵感,来自笔者在生活中经历的一个小场景:。
一天,外婆眼神发亮地和我说,“嘿,(我发现)电冰箱是会说话的”我听后先比较纳闷,但当被领到冰箱前后终于搞明白——原来是因为家里的电冰箱在长时间打开未关闭的情况下会自动发出“嘟嘟”提醒声的缘由虽觉得外婆用“说话”这一词描述冰箱的提醒略过于拟人化了,但是细想家里的这款“智能冰箱”的确做到了“主动发出有价值的意思表示”的功能,而这有点也正是我们期望从一款智能冰箱所得的“交流”。
所以按照这个逻辑,用这“说话”一词形容也就显得并非那么无稽,而这也给了我们定义我们自己的智能客服系统带来了启发:做一套“聪明”,“有用”的客服系统,名字叫SmarTalk(书写版复用了前后单词的T字母)。
二、 系统架构设计
图 1-愿景与设计 SmarTalk智能客服系统的愿景是:实现测试、排障、行业技术知识共享、技术服务请求订单、问卷调查、每日行业专业消息推送、用户交互等服务项目系统应具有学习功能和网站建议窗口从而能进一步强化反馈智能机制。
服务标准是交易日24小时全天候服务在线;人工客服、智能客服互补;移动、桌面端等多途径入口在做出具体设计方案前,我们对目前市场上已有的智能客服做了一番调研,因为不想做把头埋在沙漠里的鸵鸟,以避免闭门造车之孤陋。
根据调研,我们发现目前无论是跨国特大型IT先锋公司或是专业服务公司,人机交互是难点;但服务的内容和范围则一直在拓展和增长,诸如互联网旅游、购物公司,及银行等行业的智能客服已经能实现订单查询,常见问题反馈等功能。
当然在智能客服领域,各家企业投入一定存在差异,所以各家的实际使用体验也不尽不同其中不乏低效、交互欠佳的系统存在,而同时我们也在调研的过程中吸收了不少可取的设计,并计划实现——如腾讯客服的菜单模式,携程客服的常见问题入口等。
图 2-功能结构图 通过愿景分析和行业调研,我们设计了一个由统一客服系统入口接入,基于多应用系统提供专业服务功能,依靠团队自主搭建的支撑系统负责这些应用系统整合和管理的技术架构(图1- 愿景与设计)整个客服系统的应用核心系统为证券信息技术知识库、服务请求流程系统(隶属于IsTock-上交所技术服务团队自主开发运营的主平台)、学习系统等,支撑系统包括SSO安全统一登录系统、第三方接口系统、平台管理系统等(图2-功能结构图)。
如图中所示,“智能客服系统”在架构上平级于其它应用系统它的功能主要是:交互,其它应用系统调用,以及基本客服功能等其中交互部分由于觊觎其庞大的用户群而采用第三方成熟即时通信平台做二次开发另外,为了提升使用效果,团队特别做了“友好交互”设计,以期实现一个“有用的”、“聪敏的”智能客服“拟人化形象”。
在设计过程中,我们的愿景也有了进一步升华我们的目标已不仅只是做好一个客服功能,我们更期望通过智能学习等手段收集学习行业技术变化,以期促进行业技术共同发展进步,切实从技术服务角度保障证券市场稳定运行三、 系统特点
1. 脑库Smart
图 3-知识库知识导图 一个为行业技术人员提供技术支持的客服系统,更需要支持人员本身就具备较高的技术专业素养故区别于普通的互联网公司的智能客服,我们的客服更强调专家性,对专业知识有较高的要求所以,我们需要构建一套成熟的知识库维护我们的行业知识。
知识库如树,智能客服犹如其分支结出的果——通过扎实的知识积累实现令人满意的客服功能;或另一角度理解:智能客服又可以被视为知识库的另一个窗口,客服系统更大化了行业专业技术知识的共享和收集我们的证券信息技术知识库系统于2014开始启动建设,并不断完善,系统技术成熟,目前已稳定运营3年。
本着知识众筹与共享的初衷,我们牵头组建了一支由各券商、基金等行业技术专家参与的专业编辑团队,并且建立了知识运营的流程与机制,负责实施知识分类、整理及编辑、FAQ总结等内容管理工作目前,累计平均知识库日均点击量约为7000次,注册用户约3400人,微信关注用户数约7000人。
实现知识条目约2200个页面,FAQ约400条,涉及行业规范、交易技术、交易测试技术、交易通信技术等多项内容(图3-知识库知识导图)由于知识库系统的查询功能非常便捷且内容丰富,目前已逐渐在业内获得一定知名度,获得了同业技术人员的认可。
不少业内技术人员同我们反馈,他们对有疑问的问题第一求解途径就是登录我们的知识库系统寻找答案除了系统功能开发建设,知识库另一关键是内容运营管理知识爆炸时代,只有不断补充新鲜的知识血液,才会收货持续的用户活跃度。
特别在系统问答模块中,不少技术答案存在时效性,而内容管理可以保障问题的准确性2. 接入Smart智能客服的最大优势即是用较小的成本可以对批量的用户同时完成第一时间快速回复但是除了速度优势,对于任何人输入任何话,如何做好每一个回复我们认为是一个值得认真思考设计的问题。
因为回复质量的好坏不仅可能决定用户粘度,它还可以体现我们服务的广度和深度所以我们就此问题,从“回复内容”、“回复顺序”、“回复方式”三个方式做了讨论和设计因为当用户接入智能客服系统时(图4-公众号接入界面),不同的“回复内容、顺序、方式”会给用户带来完全不同的的感受和功能使用。
也许目前的设计在未来可能随着大数据的分析结果应用而有所变化和调整,但相信这项设计依然是需要被讨论的一环
图 4-公众号接入界面 1) “回复内容”是核心设计如前文所述的调研结果,目前人机交互问题依然是智能系统的难点AlphaGo的母公司在发布他们的智能助手系统时谈到,“目前的技术依然很难招架用户随心所欲的提问”。
所以针对这一技术瓶颈,我们系统的解决方案是预先设计客户想要了解的内容具体会设计预设场景、预估客户可能会提出的问题等设计的成效可以根据实际使用情况判断,如果这些预设的实际应用占比越高,系统也就越有用为此,团队专门在知识库中整理了“FAQ”(即“常见问题”)板块,并通过系统的“标签管理”功能,对库内所有知识进行了分类管理和梳理,共分出六大知识内容。
然后,客服系统会将这些知识分类转化为菜单目录形式,当用户接入客服问答功能后首先能看到的是这些常见问题的分类菜单目录用户可以根据需求选取菜单进入,从而提高查找结果的准确率和满意度(详见图5自助问答导图)
图 5-自助问答导图 2) “回复顺序”值得琢磨根据前期调查,我们发现以订单为主的互联网公司的智能客服往往首先出现的是用户的订单信息这也是用户最关心的信息而非以订单为主的互联网公司的智能客服则会例举一些常见问题选项以供选择。
行业用户可以通过技术服务网站提交服务请求,类似于用户订单;同时,我们也有提供疑难解答服务那么哪一项服务在客服系统中置前合适呢?考虑到订单代表的用户-网站关联,比寻求疑难解答的用户-网站关联更紧密,所以最终我们选择将用户订单等网站服务信息置首位(图6-流程设计)。
此外,由于为了保障行业信息安全,我们的后台技术服务网站属于会员等级审核制为了在提高供服务便捷度的同时,又确保行业专业信息安全,我们在所有回复之前会进行人员信息判断,对非会员做了快捷注册的引导在确保信息安全可控的同时额外实现了上交所技术服务团队的服务推广。
图 6-流程设计 3) “回复方式”是比较有趣的智能课题我们选用拟人的手法,用礼貌的招呼语言,使我们的客服更显得人性化此外,通过SSO系统与主平台IsTock的人员信息关联,我们会在第一次回复时一并展示一些其相关信息,增加系统的功能点,提高交互的友好度。
(图7-小V介绍)
图 7-小V介绍 用现代方法论描述,我们智能系统的环境是有限的(由设计者预先设计完成的),对可能发生的不可预计的情况不予深化解决而是采取礼貌性或防御性设计由此不难小结:我们智能客服系统的“回复内容”是防御性设计,“回复方式”则属于采取礼貌性。
3. 搜索Smart如前文所言,我们不仅提供订单服务,疑难解答服务也同样重要所以如何提供更好服务,我们设计了搜索层次:从关联紧密度划分,最后人工服务和学习功能做最后“垫底”以确保服务闭环(图8-搜索层次示意)。
图 8-搜索层次示意 由于我们认为“服务请求订单”的关联比“问题答疑”更高,所以首先是服务请求等网站信息的搜索第二层是基于之前人工维护的FAQ内容搜索,热点搜索采用菜单方式设立最多三层菜单完成问题逼近前期我们也比较学习了阿里巴巴网站的智能客服疑问回答机制,类似先预设FAQ问题,所不同的是我们以菜单形式,阿里巴巴采用自助问题补全形式。
在技术设计及选型阶段,由于考虑约7000人的微信公众号用户基础,我们采用了微信作为智能客服的第三方通信工具,但由此也限制了交互形式由于微信没有“问题补全”的API,所以我们换成菜单方式同样可以实现问题逼近的效果。
第三层是知识库的全文搜索,作为本系统智能化解答的闭环努力为了真正服务到用户所需,最后补充了人工客服的接入并且为了进一步做到智能,加入学习和统计功能,后文会继续详述由于搜索的层次不同,搜索的方式也会略有调整。
“服务请求订单”是精确匹配式的,“疑难解答”是菜单引导式+标题匹配式,知识库搜索则是全文模糊匹配式的我们希望通过不同的方式能更有效解决用户的问题4. 反馈Smart为了实现服务闭环,我们设计了学习功能通过自助学习、后后台数据统计分析,广泛收集建议反馈,实现能够不断优化、进步的系统。
首先我们最担忧的是我们设计的FAQ菜单不能够回答用户的问题对此我们做了两个设计第一是学习功能,在系统引导下,用户可以“教”会系统其认为正确的信息虽然我们技术服务团队中有多年经验的资深专家,普遍研究生学历背景的年轻同事对新技术的掌握速度也很是迅猛。
但我们依然秉着当初建设知识库时“知识众筹”的理念,相信定会有深藏在行业中的技术大牛会提供有价值的知识帮助我们建筑行业知识库第二是统计功能这一步统计功能注重的是问题命中率,由于我们已经设计了分层次的搜索所以我们可以很容易获知哪些是真正的高频问题,哪些问题需要补充入 。
FAQ 知识库中此外,用户选择人工或智能的使用率等也将是为了提高服务质量而统计的内容项之一其次考虑的是知识可靠性问题系统所学不会立即进入客服系统可用的知识范围,我们额外设计了人工干预的环节,后台技术专家和工作人员会排除不可用或错误或无意义的信息,确保信息的准确无误(图9-人工干预功能)。
图 9-人工干预功能 5. 面向客户Smart我们觉得个性化用户信息不仅会使得系统更人性化,也会提高用户粘度通过后台的系统弱耦合统一管理,我们在用户与我们说第一句话时即可根据不同的用户反馈不同的信息目前对注册用户与非注册用户我们已经采用了不同的个性化回复,并且关键的系统弱耦合统一管理也已经实现,所以未来可以设计更多更丰富多彩的不同、甚至用户定制的回复内容,加强智能客服的可用度。
正所谓,当前科技的努力目标不是让人类适应技术系统,而是让系统适应人类。我们的“面向客户”的设计理念正体现了这一点。四、 技术实现1. 架构
图 10-系统部署图 根据系统设计,智能客服系统是一个集成的系统所有这些系统都是基于某一特定目的而建设,除统一登录系统,各分系统之间几乎完全是松耦合数据库相对独立整个系统具有良好的可扩展性和可维护性智能客服系统是后台各种系统服务的窗口之一(同等于PC桌面端接入)。
用户可以直观感受和使用,并且由于第三方移动即时通信的成熟技术,这个窗口登入非常便捷但智能客服功能是否真正能满足用户需求,还是需要依靠窗口接入的各系统的后台支撑目前,智能客服所涉及的系统是IsTock服务系统(主平台,服务请求流程系统部署于其中)、证券信息技术知识库系统(子平台)、微信管理平台(第三方接口系统部署于其中,选用微信系统而非自建对话系统APP是觊觎其庞大的用户群)、SSO认证登录服务系统。
所有系统部署于前置的公司互联网网关之后,提供互联网服务其中,微信管理平台系统会与微信官网的消息管理服务互通实现消息发送和接收(图 10-系统部署图)功能包含统一用户客户管理、服务请求流程管理、个性化问卷调查、IsTock移动版、微客服、微信公众号相关服务功能(包括每日消息推送、测试服务、快速查找功能等)、知识库相关服务功能。
具有流程可控、多形式问卷、多子平台用户统一管理、客服自助及人工互融等特点系统目标是为证券公司、基金公司、期货公司、IT服务提供商、其他相关机构等市场参与者提供统一技术服务的互联网服务平台2. 详细设计(开源组件分享)。
承前节介绍,本节将介绍系统主要四个系统(客服系统、知识库系统、IsTock服务系统、SSO认证登录服务系统)中所使用的关键开源技术1) 智能客服系统智能客服系统采用的是开源的Weiphp开发框架该开发框架由国内圆梦科技公司负责运维,目前迭代更新较快。
Weiphp是由Thinkphp的Onephp演变而来,开发文档较全让微信二次开发如虎添翼目前基于此框架我们已经实现了每日消息推送功能、测试代码查询功能、智能客服服务入口、客服学习功能、客服统计功能、IsTock服务请求调用接口、IsTock移动版登录接口、年度活动入口……等各种丰富功能。
2) 证券信息技术知识库系统知识库采用开源Dokuwiki系统,在此基础上进行了二次开发和界面设计Dokuwiki框架最初版本始于2004,至今仍然在不断变化更新发展由Andreas Gohr和 DokuWiki 社区负责建设和维护。
用户基数广大,据官方统计,目前欧洲已有1282个站;北美549个站;东亚178个站在使用DokuWiki搭建他们自己的知识库系统由PHP语言开发,遵循GPL 2协议,挂载在lamp中整体框架架构教清晰,目前有可选插件1000多个。
基于TXT的文本搜索效果比较理想可以链接数据库,也可选择纯文件形式知识库的使用语法有一定要求,但是掌握并不困难另根据官网的插件描述,可通过插件等二次开发扩展成更人性化的表格类输入随着服务的延伸,知识规模的扩大,目前团队也加大了在此系统的开发力量,争取培养出更专业能干人才,更好为所为行业的技术知识建设服务。
3) SSO统一接入系统统计接入系统是将整个技术服务团队系统提升到更多变化丰富服务提供的基石。客服系统的智能化建设很大程度依托于此系统的已完成。
图 11-统一登录系统设计图 系统的难点在于各子系统架构各不相同,语言也不同,有Java,有PHP……另如前文介绍,各系统所用的框架也都截然不同团队采用了开源CAS技术系统整体采用CS结构,服务器端对SSO做了统一接入管理;并在各子系统定制完成了客户端的开发,从而实现各系统的完美互通。
如图(图 11-统一登录系统设计图)可见,先架构可以实现对不同语言、不同架构系统的认证互通,并且支持多认证体系,本系统实现了对外第三方基于openId的认证,及系统内部的OAuth2的认证4) IsTock技术服务网站。
作为技术服务团队提供服务的门户网站,网站集用户管理、各项主要服务(咨询服务、测试服务)及主要功能(问卷调查、通知接收)等功能网站采用JavaEE技术开发,技术架构成熟,采用严格分层框架,各功能模块耦合度小。
流程引擎采用activity,可成熟应对应答服务请求订单的各种特殊需求不同于普通工作流程,服务请求流程单线流程并不长,但却涉及面对不同组和专家层级的问题递进式处理及反馈且处理流程在建站初期变动较多,activity技术比较适应上述需求实现敏捷开发。
此外,应对用户使用的移动化、手掌化特点IsTock技术服务网站完成了移动版的开发通过SSO功能,在微信公众号上能自如登入IsTock主门户服务平台的移动版实现所有用户功能3. 可靠性设计由于我们的智能客服系统是一个集成了多个系统的组合系统。
所以结构较复杂且系统直接提供网络服务,故面对互联网的确也需要有面对洪水猛兽的心理准备和防范预期本节主要阐述了安全设计和可靠性设计1) 安全设计安全防护这一工作内容可分三类:网络安全(安全设备选型,网络架构,安全配置等等),设备安全(所使用的服务器安全管理),软件层安全等。
在这其中,软件层安全是团队安全工作的核心安全的软件设计包括代码安全如关注防注入防渗透等问题,架构设计,漏洞跟踪和及时解决等设备安全除了多备份可靠性防护外,感谢规划部提供相关安全规范文档指导,让我们在设备安全问题上有的放矢地完成防护任务。
而网络安全则要感谢公司负责互联网安全保障的运行部同事为我们提供了安全的互联网网关,是他们站在了最前线让我们的系统能够相对安全地处于诸如DDOS等大流量的攻击风险之外互联网安全工作永无止境,团队需要保持不断学习的能力,及时修正发现的问题,加固安全防护。
时不我待,夜以继日,安全防护工作是持久战,容不得松懈2) 可靠性设计多系统的集成带了资源使用,系统间交互等多重问题要解决这些问题,主要工作在支撑系统本系统的流控,URL管理等通过Apache解决4. 系统难点
虽然系统已经完成了SSO统一登录,但是各子网站之间的信息互通依然是个问题由于建设时间不同,各系统架构、开发语言都截然不同,子网站之间是完全松耦合的如何实现Java-php互调、网站间信息互联,既要实现功能又要符合安全规范,都是团队面临的问题。
目前,异调知识库由于之前搭建的CAS统一登录拦截不能直接通过机器获取知识库共享的知识信息,但是通过在知识库增加export功能完成了消息调取在Java系统中,对底层不同数据库配置了基于不同数据库的调用方法实现信息共享。
五、 SmarTalk的未来畅想目前,我们的智能客服已初具雏形于是我们设立了更高阶目标——更合理利用人力资源,专家级人员维护管理专家知识库;让机器完成机械简单的几乎所有的客服功能为了实现上述目标,我们需要继续在至少两个方向上努力。
所谓智能科技两大核心领域:人机交互和知识库所以首先第一是加强知识库的建设和运维,没有庞大知识库做坚强后盾,智能无从谈起;第二是进阶加强语义学习(图12-未来进阶设计)目前我们是通过“聪明”的设计,借鉴同行业的实现方案,学习先进的方案实现的交互。
未来希望能通过语义交互等更智能化方式提高系统的性能图 12-未来进阶设计 语义学习是智能客服的难点,但又却是能迅速提高系统可用性的关键试想,鸡对鸭讲、对牛弹琴,古人都觉得是很难沟通以至于多费半句都是浪费时间的事情;而如果能很好地理解用户所言,事半功倍自然就不再难实现了。
此外,通过语义学习能优化学习功能,从而提高知识库的增长速度,最终实现更好服务用户的目标本文只是团队在智能客服领域的研究和实践的分享,行业中使用智能客服系统已有不少家,希望得有机会相互交流学习,共同进步 。
免责声明本公众号内容仅供参考对任何因直接或间接使用本公众号内容而造成的损失,包括但不限于因有关内容不准确、不完整而导致的损失,本公众号不承担任何法律责任如有问题请反馈至tech_support@sse.com.cn。
-------------------------- 上海证券交易所为证券公司、基金管理公司等市场参与者及相关行业机构提供交易技术支持与服务,包括日常交易技术支持、技术交流研讨、市场调查反馈、证券信息技术知识库、测试等服务。
点击"阅读全文"了解详情
免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186