摘要
围绕应急指挥场景下对突发事件的快速认知、处置需求,提出了一种基于大模型的辅助决策系统设计,利用大模型的自然语言理解、知识推理、内容生成的特性,提升指挥员对突发事件的处置效率,提高应急响应速度。该系统通过LangChain框架进行构建,采用摘要生成、元数据提取、思维链等技术,强化大模型对应急指挥场景和语境的理解,通过综合报告的形式提升突发事件情况掌握能力,同时能够自动生成处置方案辅助指挥员做出决策。
应急指挥是指对重点监控地区和关注对象所产生的突发事件进行应急响应,要求指挥员在短时间内对当前战场态势和敌我力量进行分析、研判,并果断做出决策[1]。突发事件处置流程一般包括情况掌握、方案制定、任务下达等多个步骤,其响应速度和决策质量是决定能否把握战机和扭转局势的关键,这显然不仅仅是装备弹药、物资保障的比拼,而比拼的是对事件脉络、行为动机、敌我兵力等综合知识的理解和推理。传统应急指挥信息系统不具备智能辅助能力,无法满足信息化、智能化战争的需求[2]。早在2017年美军就成立国防部高级研究计划局(Defense Advanced Research Projects Agency,DARPA)、国防创新单元(Defense Innovation Unit,DIU)和联合人工智能中心(Joint Artificial Intelligence Center,JAIC)等机构,专门研究军事知识表达、战场问题解决以及自然语言结构等技术,对人工智能在军事方面的应用做了深远谋划[3]。2024年3月,美国陆军使用 OpenAI 的生成式人工智能解决方案来增强其战斗规划能力,使用大模型 GPT-4 Turbo 和 GPT-4 Vision 搭建的人工智能聊天机器人在战争模拟仿真试验中扮演军事指挥官助手的角色[4],并参与作战行动方案的制定和决策,证明了大模型在军事领域应用的可行性。然而我军在军事垂直领域的大模型应用方面,起步较晚且相关研究较少。为了弥补这类空缺,本文围绕应急指挥场景对突发事件处置业务中的大模型应用进行了探索和研究。
1.需求分析
现代战场上涌现了大量的智能化作战装备和新型作战样式,提升了战场全面感知能力,逐渐演化出一体化联合的复杂作战体系。依靠人工处理海量信息已经变得十分困难,指挥员需要掌握包括作战装备、作战战术、法律法规、战场情报、社会舆情等大量知识[5],因此亟需人工智能技术辅助值勤员进行筹划决策和业务处理。
人工智能分为专用人工智能和通用人工智能,其中,专用人工智能擅长在单一场景下处理特定任务,大多数智能应用都属于这一类,例如,DeepMind公司推出的“AlphaGO”,能够在国际象棋中击败人类世界象棋冠军,但如果让其为文本生成一段摘要是无法做到的。因此,对于业务复杂的大型系统需要集成大量的专用人工智能模型,成本过高且难以融合。然而通用人工智能更关注泛化性和通用性,更擅长处理复杂综合的任务。尤其是在应急指挥这种复杂场景下,突发情况多变且事件的发展难以预测[6],需要融合多方面情报进行综合分析,通用人工智能恰恰能够发挥在事务中推理、计划、解决问题、抽象思考、理解复杂思想、快速学习和从经验中学习的特长,协助指挥员在紧张局势下进行正确的事件处置决策[7-9]。
通用人工智能主要是指大规模语言模型(large language model, LLM),其最具代表性的应用是由OpenAI组织在2022年底推出的一款聊天机器人“ChatGPT”,能够像人类一样来聊天交流,甚至能完成撰写论文、邮件、脚本、文案、翻译、代码等任务。“ChatGPT”以其强大的语言组织和逻辑推理能力火遍全球互联网,一跃成为人工智能领域的现象级应用。大模型底层采用Transformer模型,擅长处理长文本建立长期依赖和长期记忆,利用自注意力机制提升上下文理解能力,能够理解更复杂的语意和语境,并通过大规模训练(通常具有十亿级以上参数)获得在事务中推理、计划、解决问题、抽象思考、理解复杂思想、快速学习和从经验中学习的能力[10]。
本系统为实现大模型对应急指挥系统的智能化赋能,采用LangChain框架来快速构建事件处置系统,可对接ChatGLM、LocalGPT、Ollama等开源大模型进行私有化部署,利用其强大的信息理解和事务推理能力来应对应急指挥场景下的突发问题[11],提升事件处置的效率。
2.系统架构设计
本系统采用应用层、框架层、模型层3层系统架构设计,如图 1所示。
1)应用层。围绕应急指挥业务逻辑开展设计,将突发事件处置流程划分事件数据管理、事件情况掌握、处置方案制定、行动任务规划4个阶段,并分别设计数据引接、情况掌握、方案生成、任务派发4个软件模块,对突发事件的处置流程进行优化,为应急状态下的指挥员决策提供智能辅助决策支撑,保证在紧张局势下能够对突发状况进行即时、正确的响应。
2)框架层。采用大语言模型应用开发框架LangChain的六大组件进行业务串联和逻辑拼接,面向应用层提供统一的接口、工具,通过使用统一技术底座规范应用层软件的开发。面向模型层通过提示词模板、工具代理、文档摘要、词向量嵌入等技术提升模型效果。能够通过调用外部接口查询事件热点信息和相关案例,实现与外部系统进行交互自动下达指挥命令,促进席位间任务的组织协调。
3)模型层。使用HuggingFace开源的Transformers库对接ChatGLM、Ollama[12-13]等主流开源大模型,加载合适的分词器将文本数据转换为模型可以接受的输入格式,利用指令微调的方式训练领域大模型,实现军事领域名词术语、表达习惯等方面的对齐,面向框架层提供模型支撑,提供内容生成、对话等方面的能力。
图 1 辅助决策系统架构图
Fig 1 Architecture design of aided decision system
3.技术实现途径
3.1 数据引接模块
为保证应急指挥对突发事件能够采取即时的响应和充足的应对措施,需要根据海量的情报信息进行提前预判和预案准备,因此,本系统为突发事件处置系统设计事件数据引接模块,能够从情报系统和业务系统中获取大量的情报数据,为构建领域大模型提供数据支撑。事件数据引接模块设计如图 2所示,包括数据引接加载和内容词向量存储两部分。
图 2 数据引接模块
Fig 2 Schematic diagram of data access module
3.1.1数据引接加载
情报系统中存在包括气象水文、地理环境、空海情报、社会舆论等大量的战略情报数据和战场感知数据,同时业务系统中存在包括作战文书、要图标绘、信息检索查询、人员装备等大量领域业务数据和领域通用数据。本系统利用LangChain数据加载器组件对情报系统和业务系统中的数进行引接加载,实现数据服务请求和数据抽取功能,支持Json、CSV、PDF、URL等数据格式。为防止数据引接通道的拥塞,增加BufferMemory组件窗口过滤机制进行数据流的削峰填谷。
3.1.2 内容词向量存储
通过数据加载器引接的情报数据、业务数据需要存储到数据库中为业务执行过程中历史案例查询、法律法规查询、处置预案推荐提供知识支撑,其数据过程包括文档数据属性提取、词向量嵌入训练、数据存储3个阶段:1)引接的内容采用Doctran组件进行文档属性的提取,以便相关资料的精准查询和关联检索;2)将文档的内容进行词向量嵌入训练,与上下文进行语义关联和不同语境的区分,形成计算机能够理解的高维向量格式;3)采用Chroma向量数据库对训练好的词向量内容进行存储。
3.2 情况掌握模块
突发事件处置要求指挥员能够综合各方面信息,对事件形成整体的理解和判断,通过对事件发动主体的背景、动机、能力等方面进行掌握,能够对事件脉络、事件发展态势形成完备的处置预案。情况掌握模块主要为执勤人员提供信息的快速理解形成可利用的知识,与已有的知识进行融合加速指挥员做出研判[14]。情况掌握模块的数据来源主要通过各席位的指挥员进行上报,值勤首长接收到各方向的情况报告后进行汇总和提炼,这种快速形成内容摘要功能可通过大模型强大的自然语言理解能力特性进行实现。情况掌握模块的设计如图3所示。
图 3 情况掌握模块
Fig 3 Schematic diagram of situation grasp module
本系统设计的情况掌握模块主要包括文档元数据标记、知识化标签类目生成和内容综合摘要生成3部分,文档元数据标签标记对突发事件的历史案例进行文档标记,支撑构建事件的结构化元数据标签形成应急指挥领域知识化标签类目体系,包括事件类型、事件等级、事件内容、事件背景、事件实体等内容。通过文本嵌入模型存储到向量存储器中。各席位上报的情况报告通过StuffDocumentChain切割成文件块,通过索引器根据事件元数据从向量数据库中查询相关信息,并填入到对应的摘要提示词模板中,最终输入到大模型进行多个情况报告的内容综合摘要生成。
3.3 方案生成模块
掌握事件情况后,指挥员需要结合当前态势依据首长指示、作战预案以及法律法规给出合理处置预案,通过联合各席位指挥员进行会商,匹配并借鉴相关历史案例,决策出最佳处置方案开展实施。在这个过程中处置预案的形成往往要求指挥员具备丰富的突发事件处置经验,通过对历史案例、法律法规、战术战法深入研习和想定,能够预判各种处置预案的成本和对事态发展的影响等。本系统利用大模型快速学习和从经验中学习的能力,能够在历史案例中抽象出事件处置经验,快速形成处置预案,并能够根据兵力对比、物资保障、社会舆论等因素进行权衡,提供处置建议和依据,帮助执勤人员快速做出处置决定。方案生成模块如图4所示。
方案生成模块由用户触发,用户可通过SQLDatabaseChain组件对数据库进行查询实现相关实时信息查询,也可通过MultiFunctionAgent组件调用自定义方法实现知识查询,包括历史案例、法律法规、战术战法等内容。本系统采用思维链技术,将复杂问题Q按照步骤拆解成一系列简单问题Q={q1,q2,q3, …,qn},形成问题拆解方法的提示,为大模型提供参考思路。系统将思维链填入处置预案生成提示词模板中,利用示例选择器进行自动匹配合适的思维链,实现让大模型按照同样的思维生成处置方案。同时系统提供自定义输出模板规定按照指定格式生成处置预案,将结果再次输入大模型并输入评分提示词模板,最终通过输出分析器对处置方案进行分析比对生成处置建议。
图 4 方案生成模块
Fig 4 Schematic diagram of contingency generation module
3.4 任务派发模块
事件处置一般需要各指挥席位、各指挥层级针对任务分工进行组织协调,根据指定的事件处置方案可开展处突响应,执行行动监控、兵力布势、反制谋划等任务,以作战任务的形式按照行动编组进行派发,支持各要素、各席位之间数据交互共享,支持上级的指令下达和下级的情况汇报,实现突发事件处置全过程在自动流转。任务派发模块设计如图5所示。
图 5 任务派发模块实现原理图
Fig 5 Schematic diagram of task dispatch module
本系统依靠LangChain提供的回调机制实现对任务执行的方法和时机进行预设,自定义工具可设置任务执行的具体内容,执行代理可设置任务执行的条件,系统能够按照业务逻辑将多个任务进行串联有序执行形成完整的工作流。当突发事件处置进入方案实施阶段,用户触发任务派发动作,系统将按照处置方案中处置步骤将任务加入工作流,非结构化的处置方案通过大模型翻译转换成格式化指挥命令,其内容包括命令发送方、命令接收方、命令类型、命令内容、紧急程度等要素。系统通过对话知识图谱记忆组件完成事件实体和实体间关联关系的图谱构建,完成格式化指挥命令各类要素内容的填写。系统监听到指挥命令生成完毕后,通过回调机制调用预设接口完成作战文书拟制,最终由指挥员人工核查、修改、发送,实现人在回路的任务工单派发。
4.实验验证
4.1 实验目的
验证本系统能够提升突发事件处置工作效率,将大模型的自然语言理解、内容生成、学习推理等能力与应急指挥业务紧密结合,充分发挥大模型的可通用、易泛化优势来应对各类突发场景,能够从历史案例中抽象、学习到经验并能够方便地迁移到未来场景,能够通过多文本摘要提取、基于思维链的处置方案推理、基于图谱记忆的工作流构建等一系列方法解决应急指挥业务的痛点。
4.2 环境准备
本实验为了提高中文语言处理的效果,选用清华大学KEG实验室发布的ChatGLM3-6B作为预训练模型,并采用私有化方式部署,由于模型未经过量化,利用NVIDIA A10显卡加速模型的运算,服务器硬件环境如表1所示。
软件环境如表2所示,利用LangChain框架构建垂直领域的大模型应用程序,通过一套接口实现与模型的交互,支持主流大模型的接入,同时方便集成第三方库。
本系统采用适配器方法对大模型进行微调来提升系统对应急指挥领域的理解,通过加载适配器模块避免全模型微调和灾难性遗忘问题,只需要微调与应急指挥突发事件处置业务相关的少量参数,而不是整个预训练模型的参数,从而降低微调对计算资源的要求。为节约成本,本实验直接使用Adapterhub开源社区开源的适配器模块。
4.3 实验过程
以俄乌战争为背景,导入人民网、百度百科等各类网站对战场情况报道相关内容的爬虫数据,对本系统辅助指挥员快速掌握事件情况、辅助指挥员快速形成应急方案、辅助指挥员快速生成指令报文3方面能力进行测试。
4.3.1 辅助指挥员快速掌握事件情况
指挥员需要对突发事件进行持续关注,对事件发展过程进行全面了解才能够做出合理的决策。以“人民网”针对俄乌局势4月24日到4月29日的持续报道为数据源,本系统辅助指挥员对事件发展脉络进行梳理,将突发事件情况以元数据的方式嵌入到向量数据库,当指挥员进行查询时能够快速形成摘要,提升指挥员对事件情况掌握的效率,系统按照时间线梳理了事件发展脉络,将信息进行了精炼和总结,如图6所示。
图 6 事件情况摘要生成
Fig 6 Emergency summary generation
4.3.2 辅助指挥员快速形成应急方案
面对突发事件,指挥员应快速对其做出应急响应,本系统根据相关历史案例、战术法规等知识为指挥员提供方案生成支撑能力,通过思维链对大模型的输出进行提示,按照预设置的格式生成处置方案供指挥员参考,加速指挥决策。系统生成的应急处置方案如图7所示,以乌克兰对俄罗斯的坦克进行无人机精准打击为背景,从3个方面为俄军生成应对方案,给出详细的处置措施和处置依据。
图 7 应急方案辅助生成
Fig 7 Emergency plan assisted generation
4.3.3 辅助指挥员快速生成指令报文
以俄军空降军试图攻占基辅北郊的安托诺夫机场为背景,本系统通过工作流模块自动执行指令派发,将已经形成的应急方案根据指挥席位、层级等信息进行格式化指令生成,利用外挂式知识图谱记忆模块能够自动关联地我方兵力资源,包括装备、弹药以及保障力量等。系统生成的指令报文如图8所示,对防空营指挥控制席位的指挥员进行指令下发,从防空装备的配置、关键目标兵力部署、物资弹药的保障以及医疗救援保障4个方面进行了指示。
图 8 对下级指挥员下达指令
Fig 8 Give instructions to subordinate commanders
下级指挥员接收到指令并完成作战部署,出发工作流模块执行情况上报动作,系统辅助生成任务完成情况报告,如图9所示,结合现有兵力资源,对人员力量、燃料弹药、药品防护装备等进行了部署。
图 9 指挥员任务完成情况上报
Fig 9 Commander mission complete status report
4.4 实验结果
通过实验证明本系统设计合理有效,利用大模型的理解和推理能力,能够辅助指挥员快速掌握事件情况,协助指挥员快速形成应急方案和指令报文,有效地提高应急响应速度,提升指挥员对战场的感知、理解和决策能力。
5.展望
现有应急事件处置系统主要通过文书报告的形式进行上报和汇总,大多基于关键词、规则、结构化数据进行匹配和事件信息的抽取,来辅助值勤人员对突发事件进行情况掌握,这种方法受规则、格式的限制效果不佳,往往需要人工参与情况报告的审核、修改,效率较低。本系统采用大模型,在自然语言理解方面具有优势,不受规则、结构等限制,可自动理解、总结各类情况报告,因此,效率更高。但本系统采用的大模型仅利用开源的适配器微调模块进行领域对齐,其对领域知识的理解和推理效果可以通过目前比较流行的LoRA微调方法进一步提升。核心思想是在模型的关键层中添加小型、低秩的矩阵来调整模型的行为,可以在不增加太多额外计算负担的情况下,有效调整模型避免遗忘[15]。选择合适的方法对大模型进行微调。
6.结论
为提升应急指挥场景下突发事件的处置效率,设计了一种基于大模型辅助决策系统,为突发事件处置过程各阶段业务处理提供智能辅助支撑。
1)针对数据引接管理,面向情报系统和业务系统中的多种格式数据通过引接、加载、切分、词向量其嵌入、持久化等方法转换为可识别、利用的数据,支撑大模型进行领域知识的学习;2)针对事件情况掌握,利用元数据标签对现有领域知识进行标签类目构建,利用内容摘要技术对个席位上报的事件情况进行理解形成综合情况报告,提升指挥员对突发事件情况掌握的效率;3)针对事件方案生成,利用包装器和代理设计为系统增加“手脚”,实现对热点信息、历史案例等数据查询访问,采用思维链方式为大模型生成处置方案提供提示参考,辅助指挥员快速提供处置方案和建议;4)针对事件任务派发,利用LangChain提供的回调机制和自定义工具构建工作流,对处置方案具体实施步骤生成格式化命令,协助指挥员填写任务执行人员、地点、事件等关键信息,最终生成作战文书格式的指令报告在各席位、各层级之间流转。
通过实验针对事件情况辅助掌握、应急方案辅助生成、指令报文辅助生成进行验证,证明该系统能够针对应急指挥业务提升指挥员的工作效率,为指挥员提供智能辅助决策支撑。