- 选题背景和意义:
客服系统已经成为各行各业都不可或缺的一个重要系统,尤其是在当今飞速发展的互联网消费行业,一次消费的产生从售前到售中再到售后,往往都离不开顾客和客服人员的交流,而传统的人工客服,不仅占用成本较高,而且效率不够高,大大提高了顾客的交流成本和企业的经济成本。近几年,随着人工智能,大数据等技术的飞速发展以及应用产品的丰富化,智能客服机器人这一产品应运而生,尤其是在美团、阿里和腾讯等大型互联网公司,智能客服机器人已经成为了客服系统的重要组成部分,帮助人工客服提升工作效率,为企业降低人工成本。
智能客服中有多种机器人,比如推荐机器人,QA机器人,任务机器人,路由机器人和闲聊机器人等,我的项目中所使用的就是路由机器人,这类机器人不负责具体的问题解答,而是根据用户所提出的问题将问题分配给不同的机器人(任务机器人和闲聊机器人等)。
在路由机器人中,由于顾客和订单的情况多种多样,每个人的咨询方式也不尽相同,有些时候任务机器人和QA机器人所解答的问题可能不能使得顾客满意,这时候机器人就应该根据实现配好的相关策略,为顾客转接到人工客服服务。
我所参与负责的问题触发规则系统,能够针对不同场景、不同用户提供较为灵活的人工转接服务。例如:当顾客在客服系统中与路由机器人对话时,对话触发到了特定的标准问,统计触发次数,按照一定的规则和策略,砖人工客服。
二、课题关键问题及难点:
- 多个项目和多个部门相结合:智能客服系统中的路由机器人项目,需要和公司内的大部分业务方对接,了解不同业务方的特殊需求,同时涉及到相关NLP算法部门,需要调用多个项目中的不同接口来做聚合,业务逻辑较为复杂,理解成本较高。
- 如何对接问题触发场景和规则:客户量和规则量都很大,如何针对不同的用户在不同场景下分配最为合适的规则?规则数量众多,当规则分配出现冲突时如何处理?如何将用户,使用场景和规则关联起来,从而将效率提到最大?
- 数据库读取效率:传统的数据库读取和写入效率都比较低,面对每秒上万次的访问量,如何保证数据库读取和写入的高速和安全?流量具有时效性,能否针对不同的时间使用不同的存取策略,从而降低服务器成本提高效率?
- 代码重构:由于历史问题,部分项目代码冗余,一个项目中往往封装了多个不同业务的服务,不同类的耦合性较高,违反迪米特法则,因此需要对相关服务进行拆分。
- 顾客订单情况复杂:同一个顾客可能同时有多个订单,涉及到不同的业务之间的转换。如何制定发生业务转换、订单切换等特殊情况时的规则策略?
三、文献综述(或调研报告):
Mybatis持久层框架:
MyBatis是支持普通SQL查询、存储过程和高级映射的优秀持久层框架[4]。MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及结果集的查询。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plain Old Java Objects)映射成数据库中的记录。同时,MyBatis支持声明式数据缓存(declarative data caching,当一条SQL语句被标记为“可缓存”后,首次执行它时从数据库获取的所有数据会被缓存在高速缓存中,后面再执行这条语句时,就会从高速缓存中读取结果,而不是再次从数据库中获取。
Spring MVC:
Spring MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将Web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,SpringMVC框架的目的就是帮助我们简化开发。Spring MVC框架提供了MVC(模型 - 视图 - 控制器)架构和用于开发灵活和松散耦合的Web应用程序的组件[2]。 MVC模式导致应用程序的不同方面(输入逻辑,业务逻辑和UI逻辑)分离,同时提供这些元素之间的松散耦合。模型(Model)封装了应用程序数据,通常它们将由POJO类组成。视图(View)负责渲染模型数据,一般来说它生成客户端浏览器可以解释HTML输出。控制器(Controller)负责处理用户请求并构建适当的模型,并将其传递给视图进行渲染。
以上是毕业论文文献综述,课题毕业论文、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。