



關鍵詞: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]。
總之,本文通過運用移動互聯網技術、智能化手段和新媒體平臺,共享了黨史教育資源,創新了黨史問答及傳播形式,增強了黨史學習教育的吸引力,并推動了黨史學習教育常態化、長效化。