基于AI技术的智能党史问答系统构建与实现
2024-09-04梁腊梅
关键词:AI技术;党史学习;问答系统;微信小程序;Flask框架
0 引言
在“人工智能+”的今天,以数字化、网络化、智能化的方法推进党史学习教育,更好地服务党员和群众,是我们党与时俱进、开拓进取的体现[1]。同时,伴随着自然语言处理、机器学习和深度学习等AI技术的快速发展,智能问答系统已经广泛用于电子商务、医疗服务、休闲娱乐等领域。譬如Shan-Ting Hsieh等利用Messenger平台的API服务,创建Java咨询智能问答系统,学习者通过该系统可以询问Java编程问题,系统不仅提供准确答案,还提供学习链接,并且随着问题增多,该问答系统数据库会持续更新,以此来满足学习者的问答需求[2]。目前,国外更有许多诸如Open⁃AI的ChatGPT、Google的Now及Apple的Siri等知名产品。近年,随着中文自然语言处理技术和对话技术的不断发展,国内也出现了一些智能问答系统,譬如百度公司的度秘、阿里的云小蜜、京东的JIMI以及清华大学图书馆的小图。但是,有关学习教育领域的智能问答系统研究还处于起步阶段,而且在党史学习、咨询、问答方面暂无专门的智能系统。故本文旨在基于AI技术来构建并实现一套智能党史问答系统,其意义如下:
1) 充分利用智能党史问答系统的富媒体属性,以文本、图像、动画、视频等多种方式呈现党史知识,能有效吸引学习者注意(尤其是青少年),同时帮助学习者思考并促进党史知识内化。
2) 智能党史问答系统在一定程度上能代替人工,为党务工作者解决较高难度的任务问题,并缓解办事人员较多办公人员较少、问题多回复慢的现状。
3) 目前智慧党建尚处在发展的起步阶段,存在智能化程度较低的问题,通过引入智能党史问答系统等途径给智慧党建工作赋能,推进党建工作智慧化建设。
4) 将主流的知识图谱、神经网络模型等恰当集成到智能党史问答系统中,有助于推动AI技术在党史领域的交叉应用,推进党史学习教育智能化。
5) 有利于丰富自然语言处理相关理论知识及其实际应用,推动其他相关任务的发展,并促进AI技术在党史领域的应用研究。
1 相关技术
1.1 自然语言处理
自然语言处理是计算机科学和人工智能的一个分支,主要研究计算机与人类语言之间的相互作用。它是对语言各个方面的数学和计算建模研究,并开发各种系统(如ChatGPT等),包括将语音和自然语言结合在一起的口语系统。自然语言处理在计算机科学中发挥着重要作用,因为该领域的许多方面都涉及计算的语言特征。它是一个研究和应用领域,探索如何使用计算机来理解和操纵自然语言文本或语音来完成有用的任务,其应用主要包括机器翻译、自然语言文本处理和摘要、用户界面、多语言和跨语言信息检索、语音识别、人工智能和专家系统等研究领域[3]。
1.2 知识图谱
知识图谱是人工智能研究的重要组成部分,它建立了一个具有语义处理能力和开放互联能力的知识库,以提供搜索、问答、个性化推荐等智能信息服务。近年来,随着知识图谱落地和商业能力增强,其研究应用变得越来越突出。Google是最早提出将语义元数据组织模型描述为“知识图谱”的组织之一,此后许多其他组织也在发表的知识管理和图谱数据库研究中使用了这个术语。知识图是语义Web中越来越重要的组成部分,可以作为一般用途和特定领域应用程序的信息中心。大多数知识图都试图聚合来自第三方来源的知识,无论是来自外部数据库、通过在Web 上爬取聚合的数据,还是通过实体和关系提取方法的应用[4]。
1.3 机器学习
机器学习是一种数据分析方法,可以自动构建分析模型。利用从数据中迭代学习的算法,机器学习允许计算机在没有明确编程的情况下发现潜在的信息。机器学习诞生于模式识别和计算机无须编程即可执行特定任务的理论,对人工智能感兴趣的研究人员想知道计算机是否能从数据中学习。机器学习的迭代方面很重要,因为当模型暴露于新数据时,它们能够独立适应[5]。机器学习从以前的计算中学习,以产生可靠的、可重复的决策和结果,主流的深度学习模型有卷积神经网络、循环神经网络、生成对抗网络、残差网络等[6]。它通过学习模式和算法改进,使得计算机可以自主地理解和处理图像、语音、视频和自然语言等信息,进而实现智能化。
1.4 生物特征识别
生物特征识别是指基于源自个体生理和/或行为特征的特征向量对个体进行的自动识别,识别过程涉及计算机视觉、图像处理、模式识别、语音识别等技术。生物识别系统应提供可靠的个人识别方案,以确认或确定个人的身份。人类的身体特征,如指纹、面部、手部几何、声音和虹膜被称为生物识别特征,这些特性用于为基于计算机的安全系统提供身份验证。生物特征识别在计算机安全领域变得越来越重要,目前在银行、护照、信用卡、智能卡、密码、门禁和网络安全等场所使用的计算机保安系统,都是使用用户名和密码来识别个人身份。用户名和密码可以通过使用任何一种生物特征来替换和/或提供双重认证[7]。
2 系统构建
2.1 架构设计
智能党史问答系统架构采用前后端分离模式进行设计,将其划分为显示层、处理层和数据层。其中,显示层位于三层构架的最上层,与用户直接接触,是智能党史问答系统的用户交互界面。显示层的主要功能是实现智能党史问答系统数据的传入与输出,在此过程中不需要借助逻辑判断操作就可以将数据传送到处理层进行数据处理,处理后会将处理结果反馈到显示层展现给用户。智能党史问答系统显示层通过微信小程序来布局和实现,为用户提供了流畅的交互体验。
处理层的功能是对具体问题进行逻辑判断与执行操作,接收到显示层的用户指令后,会访问数据层的数据并进行相应处理。该层在三层构架中位于显示层与数据层之间,它是显示层与数据层的桥梁,负责三层间的指令传送和业务处理,完成对接收数据的逻辑处理,以及对数据的查询、删除、修改等操作,并将处理结果反馈到显示层,进而实现系统具体功能。智能党史问答系统处理层通过Python、Flask以及卷积神经网络、循环神经网络等多种智能模型来实现,为用户提供党史问答方面的智能化服务功能。
数据层位于三层构架的最底层,该层不包含任何代码,只有关系数据库和数据集等数据信息,为处理层提供数据支持服务。智能党史问答系统数据层通过MySQL、Excel来存储数据,提供更快的数据访问。通过图1的分层设计,实现智能党史问答系统“高内聚,低耦合”的设计目标,使其开发人员分工明确,并将精力专注于智能问答系统核心业务的分析、设计和开发,进而加快系统的进度,提高开发效率,并有利于系统后期的更新和维护。
2.2 功能设计
在当前数智化时代,AI技术发展迅速,故本文恰当结合先进的AI技术,如自然语言处理、知识图谱、机器学习、深度学习及语音识别等,并根据实际调查结果,通过需求分析设计出智能党史问答系统前端和后台功能。
前端功能为用户提供党史问答相关服务,主要包括党史文本方式问答、语音方式问答、视频方式问答,党史人物关系图谱,党史人物简介,党史发展历程,党史知识在线测评,党史智能搜索,党史智能推荐以及用户个人中心等。其中党史文本问答、党史语音问答和党史视频问答是前端服务的核心功能,为用户提供便捷的智能化问答服务[8]。
后台完成对前端信息的管理以及智能算法实现,包括文本、音频和视频党史问答信息管理,党史人物信息管理,党史发展历程管理,党史知识在线测评管理,用户管理以及其他管理。其中包括前端功能模块访问情况管理,对其进行统计分析,以便管理员快速了解和完善前端各功能,进而提高智能党史问答系统的访问量。本系统总体功能设计如图2和图3所示。
2.3 性能要求
为了让智能党史问答系统满足当代用户的需求,其基本性能要求如下:
1) 安全性方面:系统的安全性是每个系统所必须保证的,智能党史问答系统也不例外。本系统首先建立严格的访问控制机制,确保只有经过认证的用户方可访问。其次,对用户密码进行MD5加密,并且请求使用POST方式,为数据安全性提供保障。
2) 响应速度:系统响应速度对用户体验非常重要。在网络正常情况下,点击智能党史问答系统前端小程序的每一个页面,小程序应在少于一秒时间内返回数据并加以显示;在网络不好的情况下,则需提供相应的弹出提示信息,及时为用户提供反馈。
3) 稳定性:系统的稳定性对系统正常运行尤为重要。如果是一个不稳定的系统,用户体验不好,就会减少对该系统的使用。智能党史问答系统使用微信开发者工具作为前端开发兼容库,该平台相对稳定可靠,并且已经迭代运行多次,未出现异常。
4) 扩展性:一个系统具有可扩展性,其应用价值会更加广泛。智能党史问答系统通过使用三层架构设计来开发,系统内层次清晰明了,各层之间通过接口相互访问,后期各层扩展非常方便、快捷。
3 系统实现
3.1 前端实现
智能党史问答系统前端使用微信小程序来开发,通过使用相应的WXML、WXSS和JavaScript等技术来实现,所实现的代表效果如图4、图5、图6所示。该智能党史问答系统小程序具有如下几点优势:
一是用户体验良好。本系统前端为用户提供了多种智能服务,如党史语音问答、党史视频问答、党史人物图谱、党史语音检索、党史图像检索及智能推荐等功能,有效提升了用户智能体验。
二是节约手机空间。本系统前端无须下载和安装,因此不会占用用户的手机空间,有助于节省流量,并且可以快速保存至手机桌面,方便用户再次使用。
三是成本低、操作简单。相比于传统的App应用程序,该系统前端的开发成本相对较低,入门门槛不高,应用流程简便,操作易于上手。
四是支持跨平台。该系统前端能够在不同的操作系统下(如iOS和Android) 运行,且能够无障碍地在微信中分享和转发,增强了其可访问性和实用性。
五是能实时更新和维护。该系统前端允许实时更新,开发者可以根据需求随时更新代码,确保用户能够及时获取最新的功能和优化。
3.2 后台实现
智能党史问答系统后台主要使用Flask框架来搭建,选择Flask框架的主要原因有5点:
一是Flask 是一款基于Python 的轻量级Web 框架,较Django 等其他同类型框架更加轻便、灵活且安全。
二是Flask为微框架,“微”是指Flask旨在保持代码简洁且易于扩展,其核心构成比较简单,但具有很强的扩展性和兼容性。
三是Flask框架能恰当结合MVC设计模式来开发Web应用程序,使开发人员分工明确,能在较短时间内合作开发出功能完整的中小型Web应用程序。
四是Flask框架具有高度定制性,允许开发人员根据项目需求进行大量的定制,所提供的插件库能让开发者完成个性化的定制,进而开发出用户满意的Web应用程序。
五是Flask采用Python语言来实现相关功能,智能党史问答系统相关算法也是基于Python语言实现,这样整个系统统一了开发语言,便于开发和后期维护。
此外,智能党史问答系统使用Neo4j图形数据库、MySQL关系数据库等来存储和管理数据,并使用CNN 卷积神经网络模型、Whisper语音识别模型、CV2图像识别模型等来实现智能服务[9]。同时,使用Echarts技术来可视化展示重要数据,方便管理员查看和管理数据。所实现的后台效果如图7所示。
4 结束语
党史是中国共产党的宝贵精神财富,是中华民族光辉灿烂历史文化的重要组成部分。因此,深入推进党史学习教育和宣传是必要的,这有利于更好地把握和运用党的百年奋斗历史经验,弘扬伟大建党精神[10]。
本文恰当结合自然语言处理、知识图谱、机器学习和生物特征识别等AI技术,并使用Python、Flask、Whisper、Neo4j、WXML、WXSS 和Echarts 等技术构建并实现了一套智能党史问答系统。该系统为用户提供多种党史问答方式服务,方便用户及时获得党史方面的问题答案,提高党史问答效率[11]。此外,系统还提供党史人物、党史新闻、党史发展历程、党史智能检索、党史智能推送等在线服务,有效传播了党史文化[12]。
总之,本文通过运用移动互联网技术、智能化手段和新媒体平台,共享了党史教育资源,创新了党史问答及传播形式,增强了党史学习教育的吸引力,并推动了党史学习教育常态化、长效化。