CN116775183A - 基于大语言模型的任务生成方法、系统、设备及存储介质 - Google Patents

基于大语言模型的任务生成方法、系统、设备及存储介质 Download PDF

Info

Publication number
CN116775183A
CN116775183A CN202310645825.8A CN202310645825A CN116775183A CN 116775183 A CN116775183 A CN 116775183A CN 202310645825 A CN202310645825 A CN 202310645825A CN 116775183 A CN116775183 A CN 116775183A
Authority
CN
China
Prior art keywords
task
demand information
target
instance
subtask
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310645825.8A
Other languages
English (en)
Inventor
董志强
邓书凡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310645825.8A priority Critical patent/CN116775183A/zh
Publication of CN116775183A publication Critical patent/CN116775183A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请涉及一种基于大语言模型的任务生成方法、系统、计算机设备、存储介质和计算机程序产品。该方法涉及人工智能技术,方法包括:获取基于交互式任务生成界面输入的任务需求信息;调用大语言模型对任务需求信息进行语义理解,得到匹配任务需求信息的目标任务的可执行结构体;在任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成;在任务生成界面中显示目标任务的执行进度查看链接,执行进度查看链接用于查看目标任务的执行进度,提高了任务生成效率。

Description

基于大语言模型的任务生成方法、系统、设备及存储介质
技术领域
本申请涉及计算机技术技术领域,特别是涉及一种基于大语言模型的任务生成方法、基于大语言模型的任务生成系统、计算机设备、存储介质和计算机程序产品。
背景技术
工作流是一组有序的任务、活动或步骤,用于实现一个或多个业务过程或项目。这些任务或活动按照一定的顺序和规则进行,可以自动化或手动执行。工作流可以帮助组织或企业提高效率、优化业务流程、降低成本、提高生产力和质量。工作流通常由一些工作流引擎或软件来管理和执行。
然而,当前用户需要使用计算机完成一个工作流任务,通常需要进行复杂的操作,包括分析问题,设计流程,编写代码,搭建执行环境和执行代码等等,这些操作都是十分繁琐的过程,存在操作复杂、效率低下和成本高昂的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高任务生成效率的基于大语言模型的任务生成方法、基于大语言模型的任务生成系统、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种基于大语言模型的任务生成方法。所述方法包括:
获取基于交互式任务生成界面输入的任务需求信息;
调用大语言模型对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体;
在所述任务生成界面中显示经过图形渲染处理的所述目标任务的任务执行流程图;所述目标任务根据至少一个目标原子任务构成;
在所述任务生成界面中显示所述目标任务的执行进度查看链接,所述执行进度查看链接用于查看所述目标任务的执行进度。
第二方面,本申请还提供了一种基于大语言模型的任务生成系统。所述系统包括:
信息获取模块,用于获取基于交互式任务生成界面输入的任务需求信息;
结构体获得模块,用于调用大语言模型对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体;
任务执行流程图显示模块,用于在所述任务生成界面中显示经过图形渲染处理的所述目标任务的任务执行流程图;所述目标任务根据至少一个目标原子任务构成;
链接显示模块,用于在所述任务生成界面中显示所述目标任务的执行进度查看链接,所述执行进度查看链接用于查看所述目标任务的执行进度。
在一些实施例中,所述信息获取模块,用于提供一可人机信息交互的所述交互式任务生成界面;接收并获取通过所述交互式任务生成界面输入的任务需求语音、文字或图文信息;对所述任务需求语音、文字或图文信息进行语义转化处理,得到所述任务需求信息。
在一些实施例中,所述信息获取模块,用于通过所述大语言模型调用针对工作流构造的提示语料,对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体;其中,所述提示语料包括为工作流的各原子任务构造的提示信息,所述提示信息包括原子任务的可执行结构体与运用信息。
在一些实施例中,所述结构体获得模块,用于根据所述任务需求信息和所述提示语料生成调用参数;根据所述调用参数构造模型调用请求;根据所述模型调用请求,调用大语言模型。
在一些实施例中,所述结构体获得模块,用于通过大语言模型,根据所述任务需求信息和所述提示语料进行语义理解,确定匹配所述任务需求信息的至少一个目标原子任务;根据所述至少一个目标原子任务的可执行结构体,输出匹配所述任务需求信息的目标任务的可执行结构体。
在一些实施例中,所述结构体获得模块,用于通过大语言模型,根据所述任务需求信息和所述提示语料,依次确定匹配所述任务需求信息至少一个目标原子任务;所述结构体获得模块,用于按各所述目标原子任务各自的可执行结构体所指示的下一个原子任务标识,组合各所述目标原子任务的可执行结构体,得到匹配所述任务需求信息的目标任务的可执行结构体。
在一些实施例中,所述结构体获得模块,用于通过大语言模型,将所述任务需求信息拆解为多个子需求信息;对于每个子需求信息,根据所述子需求信息和所述提示语料,依次确定匹配所述子需求信息的目标原子任务;根据匹配每个所述子需求信息的目标原子任务,确定匹配所述任务需求信息的至少一个目标原子任务。
在一些实施例中,所述结构体获得模块,用于通过所述大语言模型根据所述任务需求信息与所述提示语料输出一级预测结果,对所述一级预测结果进行可执行校验;当一级校验结果指示所述一级预测结果不包括可执行结构体时,则将所述任务需求信息拆解为多个二级子需求信息;对于每个二级子需求信息,通过所述大语言模型根据所述二级子需求信息、所述提示语料和所述一级预测结果输出二级预测结果,对所述二级预测结果进行可执行校验,当所述二级预测结果通过可执行校验时,根据所述二级预测结果得到匹配所述二级子需求信息的目标原子任务。
在一些实施例中,所述结构体获得模块,还用于当所述一级校验结果指示所述一级预测结果包括可执行结构体时,根据所述一级预测结果直接得到匹配所述任务需求信息的目标原子任务。
在一些实施例中,所述结构体获得模块,还用于获取匹配每个所述二级子需求信息的目标原子任务;将匹配每个所述二级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配所述任务需求信息的至少一个目标原子任务。
在一些实施例中,所述结构体获得模块,还用于当二级子需求信息对应的二级校验结果未通过可执行校验时,则将所述二级子需求信息拆解为多个三级子需求信息;对于每个三级子需求信息,通过所述大语言模型根据所述三级子需求信息、所述提示语料和每个二级子需求信息对应的二级预测结果,输出三级预测结果,对所述三级预测结果进行可执行校验,当所述三级预测结果通过可执行校验时,根据所述三级预测结果得到匹配所述三级子需求信息的目标原子任务。
在一些实施例中,所述结构体获得模块,还用于获取匹配每个所述三级子需求信息的目标原子任务;将匹配每个所述三级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配所述二级子需求信息的至少一个目标原子任务;将每个所述二级子需求信息所匹配的目标原子任务按相应的拆解顺序进行串接,得到匹配所述任务需求信息的至少一个目标原子任务。
在一些实施例中,所述系统还包括更新模块,所述更新模块,用于执行所述目标任务;当所述目标任务的执行状态发生更新时,在所述任务执行流程图中更新所述目标任务的执行状态。
在一些实施例中,所述更新模块,还用于响应于对所述执行进度查看链接的触发操作,跳转至执行进度查看界面;在所述执行进度查看界面中展示所述目标任务的执行进度。
在一些实施例中,所述系统还包括任务执行模块,所述任务执行模块,用于当触发执行所述目标任务的执行指令时,创建关于所述目标任务的任务实例,所述任务实例包括生成所述目标任务所需的至少一个目标原子任务对应的至少一个子任务实例;从所述任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各所述子任务实例。
在一些实施例中,所述任务执行模块,还用于在数据库的任务实例表中,创建与所述目标任务对应的任务实例;所述任务实例表用于记录任务实例标识、所述任务实例的流程数据结构,所述流程数据结构中包括子任务实例标识以及各所述子任务实例之间的指向关系;推送创建的所述任务实例的任务实例标识至任务实例消息队列;从任务实例消息队列中,消费任务实例标识后,执行所述从所述任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各所述子任务实例的步骤。
在一些实施例中,所述任务执行模块,还用于将首个子任务实例相应的子任务实例标识,推送至子任务实例消息队列;从所述子任务实例消息队列,消费子任务实例标识;根据所述子任务实例标识,加载并执行当前的子任务实例;在执行完当前的子任务实例后,确定当前的子任务实例指向的子任务实例;将所述指向的子任务实例相应的子任务实例标识,推送至子任务实例消息队列后,返回所述从所述子任务实例消息队列中,消费子任务实例标识的步骤继续执行,直至所述任务实例的子任务实例全部执行完成。
在一些实施例中,所述任务执行模块,还用于在所述当前的子任务实例指向多个子任务实例的情况下,将所述指向的多个子任务实例各自的子任务实例标识,均推送至子任务实例消息队列;所述工作流执行模块,还用于通过分布式的执行节点,从所述子任务实例消息队列中,消费所述多个子任务实例标识后,并发地加载并执行相应的多个子任务实例。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述基于大语言模型的任务生成的方法。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述基于大语言模型的任务生成的方法
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述基于大语言模型的任务生成的方法
上述基于大语言模型的任务生成方法、系统、计算机设备、存储介质和计算机程序产品,通过获取基于交互式任务生成界面输入的任务需求信息,直接调用大语言模型对任务需求信息进行语义理解,自动得到匹配任务需求信息的目标任务的可执行结构体;在任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成,从而,能够直观展示生成的目标任务的细节信息。在任务生成界面中显示目标任务的执行进度查看链接,执行进度查看链接用于查看目标任务的执行进度,以便于及时且直观的查看执行进度。也就是说,用户仅需要提供任务需求信息,就能够自动化生成用于完成某个任务,无需进行任何复杂的操作,简化了任务生成的步骤,提高了任务生成的效率。
附图说明
图1为一个实施例中基于大语言模型的任务生成方法的应用环境图;
图2为一个实施例中基于大语言模型的任务生成方法的流程示意图;
图3A为一个实施例中交互式任务生成界面的示意图;
图3B为另一个实施例中交互式任务生成界面的示意图;
图3C为一个实施例中执行进度查看界面的示意图;
图4为一个实施例中目标原子任务确定步骤的流程示意图;
图5为一个实施例中多级向量存储结构的示意图;
图6为一个实施例中目标任务的可执行结构体的生成流程示意图;
图7为一个实施例中任务实例消息队列的示意图;
图8为一个实施例中子任务实例消息队列的示意图;
图9为一个实施例中全局变量表的示意图;
图10为一个实施例中任务执行的流程示意图;
图11为一个实施例中基于大语言模型的任务生成系统的结构框图;
图12为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的基于大语言模型的任务生成方法,涉及人工智能(Artificial Intelligence,AI)技术,人工智能是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。本申请实施例提供的基于大语言模型的任务生成方法,具体涉及人工智能的深度学习技术。
相关技术中,在利用计算机实现工作流时,用户需要对待实现的工作流进行问题分析、流程设计、代码编写、执行环境搭建和代码执行等步骤,流程复杂且耗时,难以及时且迅速的生成工作流,即存在工作流任务生成效率低下的问题。
本申请实施例提供的基于大语言模型的任务生成方法,可应用于通用自动任务生成平台中,该方法通过获取基于交互式任务生成界面输入的任务需求信息,直接调用大语言模型对任务需求信息进行语义理解,自动得到匹配任务需求信息的目标任务的可执行结构体;在任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成,从而,能够直观展示生成的目标任务的细节信息。在任务生成界面中显示目标任务的执行进度查看链接,执行进度查看链接用于查看目标任务的执行进度,以便于及时且直观的查看执行进度。也就是说,用户仅需要提供任务需求信息,就能够自动化生成用于完成某个任务,无需进行任何复杂的操作,简化了任务生成的步骤,提高了任务生成的效率。
本申请实施例提供的基于大语言模型的任务生成方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。终端102和服务器104可以协同执行该基于大语言模型的任务生成方法,终端102和服务器104也可单独执行该基于大语言模型的任务生成方法。
以终端102和服务器104协同执行该基于大语言模型的任务生成方法为例进行说明。在一些实施例中,终端102展示交互式任务生成界面,并将在交互式任务生成界面中输入的任务需求信息发送给服务器104,服务器104获取基于交互式任务生成界面输入的任务需求信息;服务器104调用大语言模型对任务需求信息进行语义理解,得到匹配任务需求信息的目标任务的可执行结构体;在终端102的任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成;在终端102的任务生成界面中显示目标任务的执行进度查看链接,执行进度查看链接用于查看目标任务的执行进度。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种基于大语言模型的任务生成方法,以该方法应用于计算设备(可以是图1中的终端102,也可以是图1中的计算机设备104)为例进行说明,包括以下步骤:
步骤S202,获取基于交互式任务生成界面输入的任务需求信息。
其中,任务需求信息包含待生成的任务的信息。该任务需求信息是指文本信息。任务可以理解为工作流,工作流是一组有序的活动或步骤,用于实现一个或多个业务过程或项目。这些活动按照一定的顺序和规则进行,可以自动化或手动执行。工作流可以通过工作流执行引擎来执行,也可以通过软件来管理。相应地,在工作流场景下,任务需求信息是工作流需求信息。
交互式任务生成界面是支持人机交互的界面。该交互式任务生成界面是用于接收用户输入的任务需求信息的界面。任务生成界面可以采用网页的形式呈现,例如计算机设备可以获取在网页提供的搜索框中输入任务需求信息。任务生成界面还可以是社交应用提供的会话界面,如图3A所示,为一个实施例中任务生成界面的示意图。在该实施例中,为工作流场景,交互式任务生成界面展示了通过用户账号和工作流客服账号间进行会话时产生的关于工作流的语音信息,用户可以通过用户账号发送语音信息。本申请实施例中,该交互式任务生成界面中用户还可以通过用户账号发送的信息形式不限,可以是语音,也可以是文字信息、图文、音视频信息等等,具体不作限定,这些信息可转换化相应的任务需求信息被大语言模型进行语义理解即可。在一个示例中,任务需求信息是一段文本,其内容是:实现每天下午6点钟提醒群组内所有人写工作日报,若该日为周五,提醒群组内所有人写工作周报总结和下周工作计划。
可选地,计算机设备可以响应于对工作流客服账号的搜索操作,展示交互式任务生成界面。在任务生成界面中可展示通过用户账号发送的任务需求信息,计算机设备获取在交互式任务生成界面中输入的任务需求信息。可选地,上述的用户账号可以是具有任务生成权限的管理员账号。
示例性地,在以用户账号登录的即时通信应用中,响应于在搜索框对工作流客服账号的搜索操作,在即时通信应用中展示任务生成界面交互式任务生成界面。
计算机设备可以在任务生成界面交互式任务生成界面展示通过用户账号发送的语音,或者,展示通过用户账号发送的文字,或者,展示通过用户账号发送的图文信息,或者,在交互式任务生成界面展示通过用户账户发送的音视频。语音可以包含有目标语音信号,在工作流场景下,目标语音信号为“工作流”,文字或者图文信息可以是包含与目标任务相关的提示词,在工作流场景下,提示词可以为“制作”、“目标工作流”,可以理解,本申请实施例中,对任务需求信息的内容、格式均不作限制,用户可以输入任何需要自然语言模型可以理解的内容。
若输入的信息为语音形式,计算机设备将语音信息识别为文本后作为任务需求信息。若交互式任务生成界面展示的是文字,则计算机设备直接获取文字。若交互式任务生成界面展示的是音视频,则计算机设备进行图像识别获得相关的文本后,作为任务需求信息。如图3A所述,该图为工作流场景下的图,任务需求信息为语音形式,响应于对语音的输入操作,通过工作流客服账号发送语音识别进度提示信息,如“语音识别中…”,在计算机设备完成了语音识别后,得到任务需求信息后,通过工作流客服账号发送语音识别结果,如“语音识别结果:帮我制作一个工作流,可以实现每天下午6点钟提醒群组的成员写工作日报,如果是周五,就提醒大家写工作周报总结和下周工作计划”。
在一些实施例中,获取基于交互式任务生成界面输入的任务需求信息,包括:提供一可人机信息交互的交互式任务生成界面;接收并获取通过交互式任务生成界面输入的任务需求语音、文字或图文信息;对任务需求语音、文字或图文信息进行语义转化处理,得到任务需求信息。
其中,人机信息交互是指用户和机器间的信息交互过程。
可选地,计算机设备提供一可进行人机信息交互的交互式任务生成界面。该交互式任务生成界面可以是网页的界面,也可以是程序应用的界面,例如,即时通信应用。
计算机设备接收并获取通过用户账号发送的任务需求语音,并在任务生成界面中展示任务需要语音,并通过训练好的语音识别模型,对该工作流需求语音进行语音识别,得到第一识别文本。计算机设备根据该第一识别文本,确定为任务需求信息。
示例性地,在确定了第一识别文本后,计算机设备对该第一识别文本进行后处理,得到任务需求信息,后处理包括标点符号的添加和拼写纠错。
其中,训练好的语音识别模型的训练步骤,包括:计算机设备获取样本语音,样本语音是通过各种语音接收软件和硬件获得的。计算机设备对该样本语音进行预处理,得到预处理后的样本语音。预处理包括去除噪声、语音分段、语音特征提取中的至少一种处理。计算机设备对预处理后的样本语音进行特征提取,得到对应的目标信号。计算机设备将目标信号发送至待训练的语音识别模型中进行模型训练,得到训练好的语音识别模型。特征提取是将样本语音转化为数字信号。语音模型是一种统计模型,用于描述语音的各种特征。训练好的语音模型用于对目标信号进行语音识别,即将数字信号转化为文本。
或者,计算机设备接收并获取通过用户账号发送的图文信息,并在任务生成界面中展示图文信息,并通过训练好的图文识别模型,对图文信息进行图文识别,得到第二识别文本,并根据该第二识别文本,确定为任务需求信息。
示例性地,在确定了第二识别文本后,计算机设备对该第二识别文本进行后处理,得到任务需求信息,后处理包括标点符号的添加和拼写纠错。
在本实施例中,通过交互式任务生成界面中输入任务需求语音、文字或图文信息,可以对任务需求语音、文字或图文信息进行语义转化处理,得到更能体现任务需求的任务需求信息,更有利于后续大语言模型进行准确的语义理解,得到更加准确的目标任务的可执行结构体。
步骤S204,调用大语言模型对任务需求信息进行语义理解,得到匹配任务需求信息的目标任务的可执行结构体。
其中,大语言模型是一种基于深度学习的自然语言处理技术,通过训练大量的语料库数据,能够预测和生成文本。大语言模型一般采用循环神经网络(RNN)或变种,如长短时记忆网络(LSTM)和门控循环单元(GRU),以捕捉文本序列中的上下文信息,从而实现自然语言文本的生成、语言模型评估、文本分类、情感分析等任务。在自然语言处理领域,大语言模型已经被广泛应用,例如语音识别、机器翻译、自动摘要、对话系统、智能问答等。大语言模型用于生成与任务需求信息匹配的目标任务。
可执行结构体是指可以执行该原子任务的数据结构,例如,DSL Json(领域特定语言的数据交换格式的数据结构)结构体。
可选地,计算机设备通过至少一次调用大语言模型,对任务需求信息进行语义理解,得到匹配任务需求信息的目标任务的可执行结构体。
在一些实施例中,调用大语言模型对任务需求信息进行语义理解,得到匹配任务需求信息的目标任务的可执行结构体,包括:通过大语言模型调用针对工作流构造的提示语料,对任务需求信息进行语义理解,得到匹配任务需求信息的目标任务的可执行结构体;其中,提示语料包括为工作流的各原子任务构造的提示信息,提示信息包括原子任务的可执行结构体与运用信息。
其中,原子任务是可实现一个基础功能的任务,例如在工作流场景中,该原子任务可以是指工作流平台中的应用,每个应用可以理解是一个原子任务。示例性地,如表1所示,表1列举了工作流平台所支持的应用:
每个原子任务的提示信息(即prompt)用于解释该原子任务的应用场景和使用方式,包括原子任务的可执行结构体与运用信息,可用于解释该原子任务是如何使用的、使用时涉及到的参数,以及,该原子任务的输入和输出是什么。每个原子任务的提示信息可包括问题和回答。例如,下述举例了【发起API请求】这个原子任务和【发送邮件】这个原子任务各自的提示信息的内容:
上述举例中prompt是指提示信息,WEB API表示网络应用程序接口。从上述举例中可以看出,每个原子任务的提示信息包括问题和回答,回答部分包括完整且详细的可执行结构体。即,该提示信息的回答包括原子任务的可执行结构体和运用信息。运用信息包括脚本代码、编程代码、参数等。例如,若原子任务为执行一个编码语言代码,则,对应的提示信息如下表2所示:
表2中"id"表示原子任务id(身份标识),该id字段是随机生成的;"type"表示该原子任务的类型字段;"python"表示原子任务是【Python脚本执行】;"code":"print('123')"是指具体执行的代码,"version":"3.5"是指使用的编程语言版本为3.5版本,"param"是指执行编程语言所要使用到的运用参数;"preid"是指执行上一个原子任务(上一个应用)的id;"nextid"指执行下一个原子任务的id。基于此,可以知晓,对于每个原子任务的提示信息,不仅包含了执行该原子任务的参数和可执行结构体,还指示了执行该原子任务的前一个原子任务是哪一个,执行完该原子任务后的后一个原子任务是哪一个,即,通过preid和nextid来串联整个工作流形成有序执行。
可选地,计算机设备从语料库中获取针对工作流构造的提示语料,即,获取用于构造工作流的所有提示信息,每个原子任务的提示信息是事先构造好并存储的。计算机设备根据提示语料,通过至少调用一次大语言模型。对任务需求信息进行语义理解,确定匹配任务需求信息的目标任务的可执行结构体,并输出该目标任务的可执行结构体。
以工作流场景为例进行说明,在首次调用大语言模型之前,通过工作流客服账号发送关于大语言模型调用的提示信息,如图3A所示,工作流客服账号发送了“大语言模型识别中…”的关于大语言模型调用的提示信息,以提醒用户当前正在调用大语言模型生成匹配任务需求信息的目标任务。
需要说明的是,工作流平台的每一种原子任务都需要对应的提示信息,每个提示信息都是预先编写好的,可以用于不同工作流的构造,即,对于每个任务需求信息,都可以直接获取预先编写好的提示语料。每个原子任务都有对应的提示信息,这样,在生成目标工作任务的可执行结构体时,可以直接根据相应的原子任务的提示信息,迅速且准确的完成自动化生成目标任务的可执行结构体。
在一些实施例中,通过所述大语言模型根据针对工作流构造的提示语料,对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体,包括:通过大语言模型,根据任务需求信息和提示语料进行语义理解,确定匹配任务需求信息的至少一个目标原子任务,根据至少一个目标原子任务的可执行结构体,输出匹配任务需求信息的目标任务的可执行结构体。
可选地,计算机设备根据任务需求信息和提示语料,通过至少调用一次大语言模型,确定匹配任务需求信息的至少一个目标原子任务,并根据至少一个目标原子任务的可执行结构体,确定匹配任务需求信息的目标任务的可执行结构体,并输出该目标任务的可执行结构体。
示例性地,根据任务需求信息和提示语料,通过调用一次大语言模型,直接确定该任务需求信息为一个目标原子任务,此时,该大语言模型直接得到了该一个目标原子任务的可执行结构体,并将该一个目标原子任务的可执行结构体直接作为该目标任务的可执行结构体。该示例中输入的任务需求信息即为一个应用对应的需求信息,此时,仅需要一次调用该大语言模型即可得到目标任务的可执行结构体。
示例性地,根据任务需求信息和提示语料,通过至少调用一次大语言模型,确定匹配任务需求信息的多个目标原子任务。根据该多个目标原子任务、任务需求信息和提示语料,再次调用该大语言模型,得到多个目标原子任务的可执行结构体。计算机设备根据多个目标原子任务的可执行结构体,确定匹配任务需求信息的目标任务的可执行结构体,并输出该目标任务的可执行结构体。该示例中至少调用了两次大语言模型,即第一次调用,确定了该任务需求信息对应的至少两个目标原子任务,然后,进行了第二次调用,确定了各目标原子任务各自的可执行结构体,从而,确定了目标任务的可执行结构体。
在本实施例中,通过大语言模型,根据任务需求信息和提示语料进行语义理解,能够自动分解得到匹配任务需求信息的至少一个目标原子任务,根据至少一个目标原子任务的可执行结构体,直接就能获取到匹配任务需求信息的目标任务的可执行结构体。这样,简化了任务生成的步骤,用户仅需要提供任务需求信息,就能够自动化完成任务,无需进行任何复杂的操作,提高了任务生成的效率。
步骤S206,在任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成。
其中,任务执行流程图是目标任务的图像化表示,任务执行流程图反映了目标任务的执行过程。
可选地,在得到了目标任务的可执行结构体后,计算机设备对目标任务进行图形渲染,得到对应的任务执行流程图,并在交互式任务生成界面中显示目标任务的任务执行流程图。
示例性地,在得到了目标任务的可执行结构体后,通过工作流客服账号发送关于工作流图形渲染的提示信息,需要说明的是,该关于工作流图形渲染的提示信息还包括大语言模型响应完成的信息,即一旦接收到关于工作流图形渲染的提示信息,则说明目标任务的可执行结构体已生成,同时,准备对目标任务进行图形渲染操作,如图3A所示,在得到了目标任务的可执行结构体后,在交互式任务生成界面的关于大语言模型调用的提示信息之后,展示通过工作流客服账号发送关于工作流图形渲染的提示信息,如“大语言模型响应完成,工作流图形化渲染中”。这样,一旦在确定了目标任务的可执行结构体之后,通过图形渲染,可以让用户及时且清楚的知晓当前目标任务已自动生成,且通过任务执行流程图可以清楚反映目标任务的结构细节。
此时,在完成了渲染操作后,则通过工作流客服账号发送关于渲染操作结果的提示信息,如图3A中“渲染完成”。当然,为了确保用户能够及时知晓工作流的任务执行流程图,可以动态显示关于渲染操作结果的提示信息所在气泡,或者,闪烁关于渲染操作结果的提示信息所在气泡中的文字,或者,改变关于渲染操作结果的提示信息所在气泡中的文字颜色,具体不作限定。
示例性地,在工作流场景中,在通过工作流客服账号发送关于渲染操作结果的提示信息之后,直接发送目标工作流(即目标工作任务)的任务执行流程图。在工作流的任务执行流程图中,根据不同功能类型的应用,选择相应的图形进行显示,如,用于触发工作流的原子任务,其图形用圆形表示,如图3A中圆形“18时触发”表示的是触发功能类型的手动触发器原子任务;可运行功能类型的原子任务,其图形用方形表示,如图3A中方形“获取今日星期”、“提醒周报”和“提醒日报”表示的是可运行功能类型的原子任务;条件判断功能类型的原子任务,其图形用菱形表示,如图3A中菱形“条件判断”即判断今日是否是周五,若是周五,则提醒周报,若不是,则提醒日报。
这样,在交互式任务生成界面中展示目标任务的任务执行流程图,能够更加直观反映任务需求信息所对应的目标任务的结构。当目标任务的执行状态发生更新时,在任务执行流程图中实时更新目标任务的执行状态,以确保用户能够及时知晓当前执行进度,提高了用户体验。
在一些实施例中,在在任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图之后,方法还包括:执行目标任务;当目标任务的执行状态发生更新时,在任务执行流程图中更新目标任务的执行状态。
可选地,计算机设备执行目标任务,当校验到目标任务的执行状态由未执行变为正在执行时,在任务执行流程图中更新目标任务的执行状态为正在执行的执行状态。
示例性地,若目标任务的执行状态由未执行变更为正在执行,相应的,在任务执行流程图中显示正在执行的执行标识,例如,执行标识的颜色由第一颜色变为第二颜色时,则确定该执行标识为正在执行的执行标识,即第一颜色的执行标识表征的是未执行,第二颜色的执行标识表征的是正在执行,第一颜色和第二颜色不同。或者,在任务执行流程图中显示正在执行的文字信息,例如“正在执行”。或者,在任务执行流程图中闪烁执行标识。若执行标识不闪烁,则说明未执行,若执行标识闪烁,则说明正在执行。
若目标任务执行完成,则在任务执行流程图中显示执行完成的执行标识,例如,在任务执行流程图中显示执行完成的文字信息,如“执行完成”;可以理解的是,目标任务执行完成,则目标任务是结束执行的状态,可以认为是未执行的状态,此时,可以在任务执行流程图中显示未执行的执行标识,相应地,将执行标识的颜色由第二颜色变为第二颜色。又比如,若目标任务执行完成,在任务执行流程图中不闪烁执行标识。
在本实施例中,执行目标任务,当目标任务的执行状态发生更新时,在任务执行流程图中更新目标任务的执行状态。这样,用户能够直接根据任务执行流程图知晓当前目标任务的执行状态,后续可以根据需求,选择是否查看执行进度,提高了用户体验。
步骤S208,在任务生成界面中显示目标任务的执行进度查看链接,执行进度查看链接用于查看目标任务的执行进度。
示例性地,在目标任务开始执行时,在交互式任务生成界面中展示目标任务的执行进度查看链接。例如,如图3B所示,为另一个实施例中任务生成界面交互式任务生成界面的示意图。如图3B所示,为工作流场景,在目标工作流开始执行时,在任务生成界面交互式任务生成界面中通过工作流客服账号发送的执行进度查看链接,即图3B中的工作流地址:http://autoflow.woa.com/workflow/playbook/manage/read/151458。此时,用户可以通过点击该执行进度查看链接观看执行进度。
在一些实施例中,方法还包括:响应于对执行进度查看链接的触发操作,跳转至执行进度查看界面;在执行进度查看界面中展示目标任务的执行进度。
可选地,在目标任务开始执行时,在交互式任务生成界面中显示目标任务的执行进度查看链接。响应于对该执行进度查看链接的触发操作,跳转至执行进度查看界面,并在执行进度查看界面中展示目标任务的执行进度。目标任务每执行一个原子任务,在执行进度查看界面中展示正在执行的目标任务的任务执行流程图,在已执行完毕的原子任务对应的图形中显示已完成标志。
如图3C所示,为一个实施例中执行进度查看界面的示意图。已完成标志如图3C所示,当前已执行完毕的原子任务分别是触发原子任务“18时触发”、可执行原子任务“获取今日星期”。
在本实施例中,在交互式任务生成界面中显示目标任务的执行进度查看链接;响应于对执行进度查看链接的触发操作,能够迅速跳转至执行进度查看界面,这样,在执行进度查看界面中能够实时展示目标任务的执行进度,以确保用户能够及时知晓当前执行进度,提高了用户体验。
上述基于大语言模型的任务生成方法,通过获取基于交互式任务生成界面输入的任务需求信息,直接调用大语言模型对任务需求信息进行语义理解,自动得到匹配任务需求信息的目标任务的可执行结构体;在任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成,从而,能够直观展示生成的目标任务的细节信息。在任务生成界面中显示目标任务的执行进度查看链接,执行进度查看链接用于查看目标任务的执行进度,以便于及时且直观的查看执行进度。也就是说,用户仅需要提供任务需求信息,就能够自动化生成用于完成某个任务,无需进行任何复杂的操作,简化了任务生成的步骤,提高了任务生成的效率。
在一些实施例中,调用大语言模型,包括:根据任务需求信息和提示语料生成调用参数;根据调用参数构造模型调用请求;根据模型调用请求,调用大语言模型。
可选地,若首次调用大语言模型,则计算机设备将任务需求信息和提示语料合成为首次调用的调用参数,并根据首次调用的调用参数,构造首次调用的模型调用请求。计算机设备根据首次调用的模型调用请求,调用该大语言模型。
若非首次调用大语言模型,则计算机设备获取上次调用所输出的上次输出结果,将需要文本、提示语料和上次输出结果,得到当前调用(非首次调用)的调用参数。计算机设备根据当前调用的调用参数,构造当前调用的模型调用请求。计算机设备根据当前调用的模型调用请求,调用该大语言模型。
对于非首次调用大语言模型,通过将上次调用所输出的输出结果作为当次调用的上下文信息,然后结合上下文信息来确定当前调用的可执行结构体,提高了目标任务生成的准确性和可靠性。
大语言模型对外提供的是http(Hyper Text Transfer Protocol,超文本传输协议)接口的调用方式,因此,模型调用请求是http请求,将调用参数直接写在http请求的正文部分,以构建模型调用请求。在通过大语言模型进行理解和预测后,会将目标任务的可执行结构体通过http响应报文方式返回给计算机设备。
若计算机设备为终端,则在得到了模型调用请求后,终端发送该模型调用请求至服务器,通过服务器根据该模型调用请求,调用大语言模型。
在本实施例中,通过根据任务需求信息和提示语料生成调用参数,从而,能够根据调用参数构造用于调用大语言模型的模型调用请求,根据模型调用请求,通过调用大语言模型,能够使得大语言模型得到任务需求信息匹配的至少一个目标原子任务,进而,能够自动根据至少一个目标原子任务的可执行结构体,得到目标任务的可执行结构体,简化了任务生成的步骤,用户仅需要提供任务需求信息,就能够自动化完成任务,无需进行任何复杂的操作,提高了任务生成的效率。
在一些实施例中,通过大语言模型,根据任务需求信息和提示语料进行语义理解,确定匹配任务需求信息的至少一个目标原子任务,包括:通过大语言模型,根据任务需求信息和提示语料,依次确定匹配任务需求信息的至少一个目标原子任务。
其中,每个原子任务都有唯一与之对应的原子任务标识。
可选地,计算机设备根据任务需求信息和提示语料,通过至少调用一次大语言模型,依次确定匹配任务需求信息的至少一个目标原子任务。在目标原子任务的数量为一个时,计算机设备自动将该一个目标原子任务的执行顺序默认为首个,从提示语料中确定该一个目标原子任务的可执行结构体,并将该一个目标原子任务的可执行结构体,作为目标任务的可执行结构体。若目标原子任务的数量为多个时,计算机设备确定各目标原子任务的执行顺序。
在本实施例中,通过大语言模型,根据任务需求信息和提示语料,依次确定匹配任务需求信息的至少一个目标原子任务,即,确定实现工作流需求所需的至少一个目标原子任务的顺序,这样,后续可以按各目标原子任务各自的可执行结构体所指示的下一个原子任务标识,组合各目标原子任务的可执行结构体,得到匹配任务需求信息的目标任务的可执行结构体。这样,根据大语言模型,能够自动对任务需求信息进行问题分析和设计流程,确定各目标原子任务的可执行结构体的顺序,无需代码编写工作,极大地提升了目标任务生成的效率。
在一些实施例中,根据至少一个目标原子任务的可执行结构体,输出匹配任务需求信息的目标任务的可执行结构体,包括:按各目标原子任务各自的可执行结构体所指示的下一个原子任务标识,组合各目标原子任务的可执行结构体,得到匹配任务需求信息的目标任务的可执行结构体。
可选地,在获取到了每个目标原子任务的执行顺序后,计算机设备根据执行顺序,确定每个目标原子任务的可执行结构所指示的下一个原子任务标识。计算机设备按各目标原子任务各自的可执行结构体所指示的下一个原子任务标识,组合各目标原子任务的可执行结构体,将组合后的可执行结构体,作为匹配任务需求信息的目标任务的可执行结构体。
示例性地,计算机设备确定了匹配任务需求信息的m个目标原子任务之后,按执行的前后的顺序,依次为目标原子任务1至目标原子任务m,目标原子任务1为首个执行的原子任务,目标原子任务m为最后一个执行的原子任务。基于此,计算机设备依次将目标原子任务1的可执行结构体、目标原子任务2的可执行结构体、…、目标原子任务m的可执行结构体进行组合,得到目标任务的可执行结构体。
在本实施例中,通过大语言模型,根据任务需求信息和提示语料,依次确定匹配任务需求信息的至少一个目标原子任务,即,确定实现工作流需求所需的至少一个目标原子任务的顺序,并按各目标原子任务各自的可执行结构体所指示的下一个原子任务标识,组合各目标原子任务的可执行结构体,得到匹配任务需求信息的目标任务的可执行结构体。这样,根据大语言模型,能够自动对任务需求信息进行问题分析和设计流程,确定各目标原子任务的可执行结构体的顺序,无需代码编写工作,极大地提升了任务生成的效率。
在一些实施例中,通过大语言模型,根据任务需求信息和提示语料,依次确定匹配任务需求信息的至少一个目标原子任务,包括:通过大语言模型,将任务需求信息拆解为多个子需求信息;对于每个子需求信息,根据子需求信息和提示语料,依次确定匹配子需求信息的目标原子任务;根据匹配每个子需求信息的目标原子任务,确定匹配任务需求信息的至少一个目标原子任务。
其中,任务需求信息对应一个原始任务,原始任务是生成与任务需求信息对应的目标任务。大语言模型可以调用多次,此时,相应地,将任务需求信息进行多级的拆解,例如,第一次调用,对任务需求信息进行第一次拆解,得到二级子需求信息。第二次调用,对每个二级子需求信息进行第二次拆解,得到三级子需求信息;…;第x次调用,对每个x级子需求信息进行第x次拆解,得到x+1级子需求信息,0≤x≤n。x和n均为非负整数,x为0。子需求信息包括每次拆解对应的级别子需求信息,例如,子需求信息包括二级子需求信息、…、n+1级子需求信息,最后一次拆解得到的n+1级子需求信息可以视为原子需求信息,即原子需求信息是与原子任务对应的信息,即,每个原子需求信息与原子任务对应。通过至少一次调用大语言模型,能够将任务需求信息拆分为最小信息单元的原子需求信息的组合。
可选地,计算机设备通过至少调用一次大语言模型,将任务需求信息拆解为多个子需求信息,每个子需求信息存在对应的执行序号。对于每个子需求信息,根据该子需求信息和提示语料,确定与该子需求信息对应的目标原子任务,并根据子需求信息的执行序号,确定目标原子任务的执行顺序。计算机设备根据匹配每个子需求信息的目标原子任务,确定匹配任务需求信息的至少一个目标原子任务。
示例性地,计算机设备调用了n次大语言模型,将任务需求信息拆解为n+1个级别的子需求信息,对于每个级别的子需求信息,包括至少一个该级别的子需求信息。从n+1级子需求信息开始,对于每个n+1级子需求信息,计算机设备根据匹配该n+1级子需求信息的目标原子任务,确定n级子需求信息的至少一个目标原子任务。对于每个n级子需求信息,计算机设备根据匹配该n级子需求信息的目标原子任务,确定n-1级子需求信息的至少一个目标原子任务,按类似处理过程,得到每个二级子需求所匹配的目标原子任务。计算机设备根据每个匹配二级子需求的目标原子任务,确定匹配任务需求信息的至少一个目标原子任务。
在本实施例中,通过大语言模型,将任务需求信息拆解为多个子需求信息,即,将任务需求信息转换为最小信息单元的需求信息。对于每个子需求信息,根据子需求信息和提示语料,依次确定匹配子需求信息的目标原子任务,将任务需求信息对应的原始任务细分为最小任务单元的目标原子任务,这样,根据匹配每个子需求信息的目标原子任务,确定匹配任务需求信息的至少一个目标原子任务,后续能够基于此,自动且准确输出目标任务的可执行结构体。简化了任务生成的步骤,用户仅需要提供任务需求信息,就能够自动化完成任务,无需进行任何复杂的操作,提高了任务生成的效率。
在一些实施例中,如图4所示,为一个实施例中目标原子任务确定步骤的流程示意图。通过大语言模型,将任务需求信息拆解为多个子需求信息;对于每个子需求信息,根据子需求信息和提示语料,依次确定匹配子需求信息的目标原子任务,包括:
步骤S402,通过大语言模型根据任务需求信息与提示语料输出一级预测结果,对一级预测结果进行可执行校验。
其中,一级预测结果为第一次调用大语言模型得到的预测结果。可执行校验是用于校验该预测结果是否为可执行结构体。若i级预测结果的可执行校验通过,则i级预测结果包括位于i级预测结果之前的i-1级预测结果,由于i-1级预测结果的可执行校验是不通过的,则i-1级预测结果包括匹配原子需求信息的目标原子任务,此时,i级预测结果还包括匹配原子需求信息的目标原子任务对应的可执行结构体。综上,若i级预测结果的可执行校验通过,则i级预测结果包括匹配原子需求信息的目标原子任务和匹配原子需求信息的目标原子任务对应的可执行结构体。
可选地,计算机设备通过第一次调用大语言模型,根据任务需求信息与提示语料,输出一级预测结果。计算机设备在校验到该一级预测结果的格式是合法的情况下,对该一级预测结果进行可执行校验,得到一级校验结果。一级校验结果表征对一级预测结果进行可执行校验得到的结果。
示例性地,计算机设备在得到一级预测结果之后,计算机设备对该一级预测结果进行格式校验,若对应的格式校验结果表征通过,则计算机设备返回对该一级预测结果进行可执行校验,得到一级校验结果步骤进行执行。格式校验是用于校验预测结果是否为结构体,若对应的格式校验结果表征通过,则说明该一级预测结果为结构体,且该结构体的格式是合法的。若格式校验结果表征不通过,则该一级预测结果不为结构体,或者该一级预测结果为不合法的结构体,此时,计算机设备无需对一级预测结果进行可执行校验,计算机设备直接对任务需求信息进行拆解,拆解为多个二级子需求信息。
步骤S404,当一级校验结果指示一级预测结果不包括可执行结构体时,则将任务需求信息拆解为多个二级子需求信息;对于每个二级子需求信息,通过大语言模型根据二级子需求信息、提示语料和一级预测结果输出二级预测结果,对二级预测结果进行可执行校验,当二级预测结果通过可执行校验时,根据二级预测结果得到匹配二级子需求信息的目标原子任务。
可选地,当一级校验结果指示一级预测结果不包括可执行结构体时,则计算机设备将任务需求信息拆解为多个二级子需求信息。计算机设备第二次调用大语言模型,并将各二级子需求信息、提示语料和一级预测结果均输入至大语言模型。对于每个二级子需求信息,计算机设备通过大语言模型,根据该二级子需求信息、提示语料和一级预测结果输出二级预测结果。计算机设备在校验到该二级预测结果的格式是合法的情况下,对该二级预测结果进行可执行校验,得到二级校验结果。二级校验结果表征对二级预测结果进行可执行校验得到的结果。当二级预测结果通过可执行校验时,计算机设备根据二级预测结果,获取匹配二级子需求信息的目标原子任务。
示例性地,计算机设备在得到二级预测结果之后,计算机设备对该二级预测结果进行格式校验,若对应的格式校验结果表征通过,则计算机设备返回对该二级预测结果进行可执行校验,得到二级校验结果步骤进行执行。若对应的格式校验结果表征通过,则说明该二级预测结果为结构体,且该结构体的格式是合法的。若对应的格式校验结果表征不通过,则该二级预测结果不为结构体,或者该二级预测结果为不合法的结构体,此时,计算机设备无需对二级预测结果进行可执行校验,计算机设备直接对二级子需求信息进行拆解,拆解为多个三级子需求信息。
在本实施例中,通过大语言模型,根据任务需求信息与提示语料输出一级预测结果,对一级预测结果进行可执行校验,即校验一级预测结果中是否有目标原子任务的可执行结构体。当一级校验结果指示一级预测结果不包括可执行结构体时,则反映了需要二次调用大语言模型,在此之前,需要将任务需求信息拆解为多个二级子需求信息;对于每个二级子需求信息,通过大语言模型根据二级子需求信息、提示语料和一级预测结果输出二级预测结果,对二级预测结果再次进行可执行校验,当二级预测结果通过可执行校验时,根据二级预测结果得到匹配二级子需求信息的目标原子任务。这样,能够将任务需求信息对应的原始任务细分为最小任务单元的目标原子任务,从而,能够自动且准确输出目标任务的可执行结构体。简化了任务生成的步骤,用户仅需要提供任务需求信息,就能够自动化完成任务,无需进行任何复杂的操作,提高了任务生成的效率。
在一些实施例中,方法还包括:当一级校验结果指示一级预测结果包括可执行结构体时,根据一级预测结果直接得到匹配任务需求信息的目标原子任务。
需要说明的是,当一级校验结果指示一级预测结果包括可执行结构体,则说明该任务需求信息对应的任务即为目标原子任务,此时,如前所述,一级预测结果对应的一级校验结果表征通过,则一级预测结果包括匹配原子需求信息(在本实施例中原子需求信息即为任务需求信息)的目标原子任务和匹配原子需求信息的目标原子任务对应的可执行结构体。
在本实施例中,当一级校验结果指示一级预测结果包括可执行结构体时,根据一级预测结果直接得到匹配任务需求信息的目标原子任务。也即是,此时,任务需求信息对应的任务即为目标原子任务,则可以迅速且准确的判断出该目标原子任务的可执行结构体即为目标任务的可执行结构体,无需进行复杂的编码操作,简化了可执行结构体的获取流程,提高了目标任务生成的效率。
在一些实施例中,根据匹配每个子需求信息的目标原子任务,确定匹配任务需求信息的至少一个目标原子任务,包括:获取匹配每个二级子需求信息的目标原子任务;将匹配每个二级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配任务需求信息的至少一个目标原子任务。
其中,对于每个二级子需求信息,匹配该二级子需求信息的目标原子任务的串接顺序即为该二级子需求信息的拆解顺序。
可选地,计算机设备获取匹配的每个二级子需求信息的目标原子任务,计算机设备根据各二级子需求信息的拆解顺序,确定各二级子需求信息各自的目标原子任务的串接顺序。计算机设备从首个串接顺序的目标原子任务开始,按各二次子需求信息各自的目标原子任务的串接顺序,依次串接各二次子需求信息各自的目标原子任务,得到匹配任务需求信息的至少一个目标原子任务。
示例性地,将对于任务需求信息P拆解为N个二级子需求信息,其拆解顺序依次是二级子需求信息P2.1、二级子需求信息P2.2、…、二级子需求信息P2.N,则各二级子需求信息对应的二级子任务的串接顺序依次是二级子需求信息P2.1对应的二级子任务F2.1、…、二级子需求信息P2.N对应的二级子任务F2.N。此时,匹配任务需求信息的至少一个目标原子任务依次是二级子任务F2.1、…、二级子任务F2.N。
在本实施例中,通过获取匹配每个二级子需求信息的目标原子任务,这样,根据每个二级子需求信息的拆解顺序,能够迅速将匹配每个二级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配任务需求信息的至少一个目标原子任务,后续可以自动且准确输出目标任务的可执行结构体。简化了任务生成的步骤,用户仅需要提供任务需求信息,就能够自动化完成任务,无需进行任何复杂的操作,提高了任务生成的效率。
在一些实例中,方法还包括:当二级子需求信息对应的二级校验结果未通过可执行校验时,则将二级子需求信息拆解为多个三级子需求信息;对于每个三级子需求信息,通过大语言模型根据三级子需求信息、提示语料和每个二级子需求信息对应的二级预测结果,输出三级预测结果,对三级预测结果进行可执行校验,当三级预测结果通过可执行校验时,根据三级预测结果得到匹配三级子需求信息的目标原子任务。
可选地,当该二级子需求信息对应的二级预测结果未通过可执行校验时,则计算机设备将该二级子需求信息拆解为多个三级子需求信息。对于每个三级子需求信息,计算机设备再次调用大语言模型,并将各三级子需求信息、提示语料和各二级子需求信息对应的二级预测结果均输入至大语言模型。对于每个三级子需求信息,计算机设备通过大语言模型,根据该三级子需求信息、提示语料和该二级子需求信息对应的二级预测结果,输出与该三级子需求信息对应的三级预测结果。计算机设备在校验到该三级预测结果的格式是合法的情况下,对该三级预测结果进行可执行校验,得到三级校验结果。若该三级校验结果表征对应的三级预测结果通过可执行校验时,计算机设备根据该三级预测结果,获取匹配三级子需求信息的目标原子任务。
在每次调用大语言模型之后,都需要将该次调用产生的预测结果存储在向量数据库中,作为下次调用的上下文信息。例如,在前文中提及的,第一次调用产生的一级预测结果作为第二次调用产生的二级预测结果的上下文信息,第二次调用产生的二级预测结果作为第三次调用产生的三级预测结果的上下文。如前文所述,由于每次调用大语言模型都可能产生次级子任务(即,为前次调用对应的级别子需求信息对应的子任务的次级任务),因此,调用记录上下文的存储结构是多级向量形式,如图4所示,为一个实施例中多级向量存储结构的示意图。原始任务是指任务需求信息对应的任务,在进行第一次调用大语言模型之后,一级预测结果的格式不合法或者可执行校验不通过时,将任务需求信息拆解为二级子需求信息P2.1至二级子需求信息P2.N;在进行第二次调用大语言模型之后,二级预测结果的格式不合法或者可执行校验不通过时,将每个二级子需求信息进行拆解,如将二级子需求信息P2.1拆解为三级子需求信息P2.1.1至三级子需求信息P2.1.M;又如,将二级子需求信息P2.N拆解为三级子需求信息P2.N.1至三级子需求信息P2.N.K。通过多级向量的存储结构,能够清晰描述问题的层级分析拆解过程,后续循环调用大语言模型的时候带上调用上下文信息,就可以更加准确地获取到目标任务的可执行结构体。
当然,若三级预测结果的格式不合法或者可执行校验不通过,则说明三级子需求信息还不是最小的信息单元,还可以将三级子需求信息继续拆解,直至拆解到i级子需求信息对应的i级预测结果的格式和可执行校验均通过为止,此时,i级子需求信息可视为最小的信息单元,即对应的任务为匹配i级子需求信息的目标原子任务。
在本实施例中,当二级子需求信息对应的二级校验结果未通过可执行校验时,则反映了需要三次调用大语言模型,在此之前,需要将二级子需求信息拆解为多个三级子需求信息,即进一步细化二级子需求信息。对于每个三级子需求信息,通过大语言模型根据三级子需求信息、提示语料和每个二级子需求信息对应的二级预测结果,输出三级预测结果,对三级预测结果进行可执行校验,当三级预测结果通过可执行校验时,则,说明三级子需求信息已经细化为最小的信息单元,基于此,根据三级预测结果得到匹配三级子需求信息的目标原子任务,也就是将任务需求信息对应的原始任务细分为最小任务单元的目标原子任务,从而,能够自动且准确输出目标任务的可执行结构体。简化了任务生成的步骤,用户仅需要提供任务需求信息,就能够自动化生成任务,无需进行任何复杂的操作,提高了任务生成的效率。
在一些实施例中,根据匹配每个子需求信息的目标原子任务,确定匹配任务需求信息的至少一个目标原子任务,包括:获取匹配每个三级子需求信息的目标原子任务;将匹配每个三级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配二级子需求信息的至少一个目标原子任务;将每个二级子需求信息所匹配的目标原子任务按相应的拆解顺序进行串接,得到匹配任务需求信息的至少一个目标原子任务。
其中,对于每个三级子需求信息,匹配该三级子需求信息的目标原子任务的串接顺序即为该二级子需求信息在二次拆解中的拆解顺序。对于每个二级子需求信息,匹配该二级子需求信息的目标原子任务的串接顺序即为该二级子需求信息在三次拆解中的拆解顺序。
可选地,计算机设备根据各三级子需求信息在二次拆解中的拆解顺序,确定匹配各三级子需求信息的目标原子任务的串接顺序。对于每个二级子需求信息,计算机设备从首个第一串接顺序的目标原子任务开始,按各三次子需求信息各自的目标原子任务的串接顺序,依次串接各三次子需求信息各自的目标原子任务,得到该二级子需求信息的至少一个目标原子任务。计算机设备从首个第二串接顺序的目标原子任务开始,按各二次子需求信息各自的目标原子任务的串接顺序,依次串接各二次子需求信息各自的目标原子任务,得到匹配任务需求信息的至少一个目标原子任务。第一串接顺序是指各匹配三级子需求信息的目标原子任务中第一个串接的顺序,第二串接顺序是指各匹配二级子需求信息的目标原子任务中第一个串接的顺序。
示例性地,以图5为例进行说明,对于二级子需求信息P2.1,对应有三级子需求信息P2.1.1至三级子需求信息P2.1.M,计算机设备按各匹配三级子需求信息的目标原子任务的串接顺序进行串接,即依次串接子任务1.1、…、子任务1.n,得到匹配二级子需求信息P2.1的各目标原子任务,即子任务1.1、…、子任务1.n。(子任务1.1、…、子任务1.n分别为匹配三级子需求信息P2.1.1的目标原子任务、…、匹配三级子需求信息P2.1.M的目标原子任务)。同样地,对其他的二级子需求信息的三级子需求信息的目标原子任务进行串接,得到匹配各二级子需求信息各自的目标原子任务,如匹配二级子需求信息P2.N的各目标原子任务,即子任务n.1、…、子任务n.n。对于任务需求信息而言,对应有二级子需求信息P2.1至二级需求信息P2.N,则匹配任务需求信息的各目标原子任务为:子任务1.1、…、子任务1.n、…、子任务n.1、…、子任务n.n。
在本实施例中,通过将匹配每个三级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配与之对应的二级子需求信息的至少一个目标原子任务,基于此,通过与同一二级子需求信息对应的多个三级子需求信息的目标原子任务的拼接结果,确定位于上一级别的该二级子需求信息的至少一个目标原子任务。将每个二级子需求信息所匹配的目标原子任务按相应的拆解顺序进行串接,得到匹配任务需求信息的至少一个目标原子任务。也即是说,从最小的信息单元对应的目标原子开始,逐级拼接,最终得到实所有按序拼接目标原子任务,这样,后续可以根据目标原子任务的拼接顺序依次执行每个目标原子任务,以自动实现目标任务的执行。
在一些实施例中,如图6所示,为一个实施例中目标任务的可执行结构体的生成流程示意图。在获取到了任务需求信息和提示语料之后,若首次调用为大语言模型,根据工作需求信息和提示语料生成调用参数,将调用参数输入至大语言模型中,得到一级预测结果,对该一级预测结果进行可执行校验,当一级校验结果指示一级预测结果不包括可执行结构体,即不可执行时,或者一级预测结果的格式是不合法,将工作需求信息拆解为多个二级子需求信息,并作为第二次调用大语言模型的上下文信息,并保存至多级向量的方式存储在数据库中。若在校验到一级预测结果的格式是合法的,且一级校验结果指示一级预测结果包括可执行结构体,则输出结果,即输出目标任务的可执行结构体。
若当前调用为非首次调用大语言模型,计算机设备获取当前调用的上下文信息(如,当前为第二次调用,则当前调用的上下文信息为二级子需求信息;当前为第三次调用,则当前调用的上下文信息为三级子需求信息),并将当前调用的上下文信息、提示语料和前次调用对应的级别预测结果作为当前调用的调用参数(当前调用为第二次,则前次调用对应级别预测结果为一次级别预测结果;当前调用为第三次,则前次调用对应级别预测结果为二级预测结果),将当前调用的调用参数输入至大语言模型,得到当前调用的级别预测结果(当前调用为第二次,则当前调用的级别预测结果为二级预测结果;当前调用为第三次,则当前调用的级别预测结果为三级预测结果,以此类推)。若当前调用的级别预测结果进行格式校验和可执行校验均不通过,则对当前调用的上下文信息进行拆解,得到当前调用拆解的结果,将当前调用拆解的结果(如,当前调用为第二次,则当前调用拆解的结果为三级子需求信息),通过多级向量的方式存储在数据库中,作为下次调用的上下文信息,进行反复循环迭代,直至得到可执行结构体。
在本实施例中,通过获取在任务生成界面交互式任务生成界面中输入的任务需求信息,用户可以直接在任务生成界面交互式任务生成界面输入工作流需求的信息。获取针对工作流构造的提示语料,提示语料包括为工作流的各原子任务构造的提示信息,提示信息包括原子任务的可执行结构体与运用信息;通过大语言模型,根据任务需求信息和提示语料进行语义理解,能够自动且准确匹配任务需求信息的至少一个目标原子任务,根据至少一个目标原子任务的可执行结构体,自动且准确输出匹配任务需求信息的目标任务的可执行结构体。这样,简化了任务成的步骤,用户仅需要提供任务需求信息,就能够自动化完成任务,无需进行任何复杂的操作,提高了任务生成的效率。
在一些实施例中,方法还包括:当触发执行目标任务的执行指令时,创建关于目标任务的任务实例,任务实例包括生成目标任务所需的至少一个目标原子任务对应的至少一个子任务实例;从任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各子任务实例。
可选地,在得到了目标任务的可执行结构体之后,可以直接触发执行目标任务的执行指令,也可以存储该目标任务的可执行结构体,等待预设时间段后触发执行目标任务的执行,或者,响应于对目标任务的触发操作,触发执行目标任务的执行指令。
在一些实施例中,创建关于目标任务的任务实例之后,方法还包括:在数据库的任务实例表中,创建与目标任务对应的任务实例;任务实例表用于记录任务实例标识、任务实例的流程数据结构(即目标任务的可执行结构体),流程数据结构中包括子任务实例标识以及各子任务实例之间的指向关系;推送创建的任务实例的任务实例标识至任务实例消息队列;从任务实例消息队列中,消费任务实例标识后,执行从所述任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各子任务实例的步骤。
其中,在数据库的任务实例(execution)表中创建的与目标任务对应的任务实例,记录了该任务实例的相关信息,包括任务实例标识、任务实例的流程数据结构,还可以包括目标任务标识、该任务实例的运行状态,执行该任务实例的开始时间、结束时间、触发该任务实例执行的执行人,等等。该任务实例的流程数据结构,记录了该任务实例的执行流程,即各个子任务实例之间的指向关系。计算机设备依次加载并执行各个子任务实例,就是依据该流程数据结构所包括子任务实例之间的指向关系进行遍历执行。每个子任务实例是对应一个目标原子任务。子任务实例2的执行关系反映了在该子任务实例2之前的子任务实例是哪一个,以及反映了在该子任务实例2之后的子任务实例是哪一个。
在一个实施例中,任务实例表中每个任务实例包括如下字段:
id:任务实例标识;
workflow_id:工作流标识;
name:名称;
executor:执行人;
status:任务实例的运行状态;
start_at:开始时间;
end_at:结束时间;
apps:该任务实例的可执行结构体;
其中,该任务实例的可执行结构体,可以包括如下信息:
StartAppInstId:起始子任务实例;
DestAppInstId:结束子任务实例;
Apps:子任务实例数组,其中每个子任务实例包括如下信息:
Name:子任务实例描述的名称或描述;
Parameters:子任务实例的参数,包括参数、参数值、参数类型和参数描述;
Template:子任务实例采用的子任务模板,如HTTP请求或Python脚本;
Position:子任务实例在前端画布的坐标位置;
InstId:子任务实例的标识;
PrevAppInstIds:指向的上一个子任务实例的标识;
NextAppInstIds:指向的下一个子任务实例的标识;
Output:子任务实例的输出结果;
Error:子任务实例如果执行中出错的错误信息;
Status:子任务实例的运行状态;
StartTime:子任务实例执行的开始时间;
EndTime:子任务实例执行的结束时间;
可见,任务实例中包含多个子任务实例,每个子任务实例都有一个唯一的标识用来定位具体是任务实例中的哪个子任务实例。
具体地,计算机设备接收到触发目标任务的执行指令时,创建相应的任务实例,包括任务实例标识、任务实例的执行人、任务实例的流程数据结果、任务实例的状态等等相关信息,在数据库中任务实例表中,持久化存储创建的该任务实例。之后,计算机设备还将该任务实例对应的任务实例标识推送至任务实例消息队列中,例如,该队列中的消息格式为:RPUSH execution#queue executionId,以供分布式的执行节点,从该任务实例消息队列中消费任务实例标识,并根据消费到的该任务实例标识,读取数据库中的任务实例表,获取该任务实例标识对应的任务实例,读取该任务实例的相关信息后开始执行该任务实例。
如图7所示,为一个实施例中任务实例消息队列的示意图。如图7,为工作流场景下,其中,每触发执行一个工作流,就会在数据库的任务实例表中创建相应的任务实例,并将创建的任务实例对应的任务实例标识推送至任务实例消息队列中,计算机设备对该任务实例消息队列进行监测,具体地,根据计算设备中部署的分布式工作流引擎的消费集群中各个容器(可以理解为各分布式的执行节点)对该任务实例消息队列进行监测,一旦该消息队列中存在新的任务实例标识,就会按照先进先出的顺序,依次被消费并执行相应的任务实例。
当消费到目标任务的任务实例时,从任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各所述子任务实例。
在一些实施例中,从任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各所述子任务实例,包括:将首个子任务实例相应的子任务实例标识,推送至子任务实例消息队列;从子任务实例消息队列,消费子任务实例标识;根据子任务实例标识,加载并执行当前的子任务实例;在执行完当前的子任务实例后,确定当前的子任务实例指向的子任务实例;将指向的子任务实例相应的子任务实例标识,推送至子任务实例消息队列后,返回从子任务实例消息队列中,消费子任务实例标识的步骤继续执行,直至任务实例的子任务实例全部执行完成。
如图8所示,为一个实施例中子任务实例消息队列的示意图。图8中,以任务实例包括p个子任务实例为例进行说明:从该任务实例的首个子任务实例开始,将相应的子任务实例标识1推送至子任务实例消息队列,获取相应的子任务实例标识1的子任务实例表,被容器消费后,加载相应的子任务实例到内存中执行,执行结束后,更新该子任务实例的运行状态、执行数据,并将该子任务实例存储至数据库中对应的子任务实例表,并获取所指向的下一个字任务实例,类似地,将相应的子任务实例标识2推送至子任务实例消息队列,被容器消费后,加载相应的子任务实例到内存中执行,执行结束后获取所指向的下一个字任务实例,类似地,将相应的子任务实例标识p推送至子任务实例消息队列,被容器消费后,加载该子任务实例到内存中执行,执行结束后,整个任务实例执行完成。执行过程中,每个容器都会运行一个守护进程来监测该子任务实例消息队列,即命令:BLPOP appinst#queue,一旦该消息队列中存在新的子任务实例标识,就会按照先进先出的顺序,依次被消费并执行相应的子任务实例。先消费到的容器会执行新的子任务实例。
在本实施例中,依次对目标任务对应的任务实例对应的多个子任务实例,加载执行,在该多个子任务实例中包括需与外部交互的耗时子任务的情况下,不需要一次性加载整个任务实例等待耗时子任务的执行而整个任务实例长时间占用内存和消耗运行资源,能够极大提高了资源的利用效率。
计算机设备在从子任务实例消息队列消费并获取待处理的子任务实例后,对将该子任务实例对应的数据库中的数据状态更新为处理中,并设置开始执行时间,该子任务实例是以对应的子任务实例表进行存储的,每个子任务实例表的字段如下:
id:自增长主键id,即为工作流系统的应用ID;
execution_id:执行任务实例的ID;
app_inst_id:子任务实例ID;
name App:子任务实例名称;
template App:使用的模板类型(例如HTTP请求、python脚本等),不同子任务实例模板支持不同的功能;
status:子任务实例的运行状态;
start_at:子任务实例执行的开始时间;
end_at:子任务实例执行的结束时间;
apps:子任务实例的可执行结构体,它记录了当前子任务实例在某次的执行结果、指向的上一个子任务实例、指向的下一个子任务实例、入参以及运行时数据等信息。对于apps字段已在前文进行了说明,在此不再重复。
在一些实例中,将指向的子任务实例相应的子任务实例标识,推送至子任务实例消息队列,包括:在当前的子任务实例指向多个子任务实例的情况下,将指向的多个子任务实例各自的子任务实例标识,均推送至子任务实例消息队列;从子任务实例消息队列中,消费子任务实例标识,包括:通过分布式的执行节点,从子任务实例消息队列中,消费多个子任务实例标识后,并发地加载并执行相应的多个子任务实例。
其中,当前的子任务实例指向多个子任务实例,通常是该多个子任务实例相互独立,可以并发执行,此时,计算机设备可以将该指向的多个子任务实例各自的子任务实例标识,均推送至子任务实例消息队列,以供分布式的执行节点,分别从该消息队列中消费该多个子任务实例标识后,并发地加载执行该多个子任务实例。例如,若子任务实例A指向子任务实例B与C,且执行子任务实例B与C相互独立的,那么计算机设备可以将该两个子任务实例推送至子任务实例消息队列,由分布式的执行节点1从该消息队列中消费子任务实例B的标识,由执行节点2从该消息队列中消费子任务实例C的标识,而后在不同的执行节点上并发执行该2个子任务实例,可以实现真正的并发加载与执行。
相比于通过某个执行节点一次性加载整个任务实例至内存中执行,只能按该任务实例的子任务实例的指向关系依次执行各个子任务实例,显然同一个节点上一次只能执行一个子任务实例,无法实现真正的并发,而本实施例中,由于将任务实例的多个子任务实例拆分开,依次加载执行,在某个子任务实例指向的子任务实例的数量为多个的情况下,可以由不同的分布式的执行节点分别加载执行,实现真正的并发执行。
在一个实施例中,计算机设备在确定当前的子任务实例指向的子任务实例之后,将指向的子任务实例持久化至数据库的子任务实例表;子任务实例表用于记录子任务实例标识、子任务实例的运行状态以及执行数据;初始化子任务实例的运行状态为未处理;在执行完子任务实例后,在子任务实例表中,更新子任务实例的运行状态为已完成,以及更新子任务实例的执行数据。
在本实施例中,一旦在执行完一个子任务实例之后,直接该子任务实例表中子任务实例的运行状态进行更新,并实时更新子任务实例的执行数据,如执行子任务实例所输出的数据。
在一个实施例中,工作流处理方法还包括:解析任务实例,得到所包括的各个子任务实例的全局变量,形成全局变量表并存储,全局变量包括全局输入变量与全局输出变量;在执行完当前的子任务实例后,根据相应的执行数据更新全局变量表中的全局输出变量;加载更新的全局变量表,获得指向的子任务实例的全局输入变量对应的输入数据,根据输入数据执行指向的子任务实例。
在依次加载执行目标任务的执行实例的子任务实例的过程中,若存在一个子任务实例的输入数据是在位于该子任务实例之前的在前子任务实例的输出数据,如在前子任务实例可以是该子任务实例指向的上一个子任务实例输出数据,又如,在前子任务实例可以是该子任务实例指向的上两个子任务实例输出数,但由于采用了将任务实例的多个子任务实例拆分开依次加载执行的方式,每个子任务实例的输出数据无法直接传输。为此,为了顺利执行加载到的每个子任务实例,计算机设备可以解析任务实例的各个子任务实例的全局变量,形成全局变量表并存储,即将每个子任务实例的标识与相应的全局变量(包括全局输入变量与全局输出变量)对应存储。可以理解,在未执行该任务实例时,全局变量中每个变量都是默认参数值,每次加载并执行子任务实例得到执行数据后,就根据执行数据更新新该全局变量表,在每次执行指向的子任务实例之前,将前次更新的全局变量表加载到内存中,根据该指向的子任务实例的标识,读取该全局变量表,获取到该子任务实例的全局输入变量对应的输入数据,接下来就可以根据该输入数据执行该子任务实例。
如图9所示,为一个实施例中全局变量表的示意图。如图9,将当前处理的任务实例的各个子任务实例的全局变量加载到内存中,形成一个子任务实例标识与全局变量的映射表。
在一个实施例中,子任务实例的全局变量,可以使用常量,也可以使用路径语法表达式引用前面任一个子任务实例的输出数据。在需要执行指向的子任务实例时,计算机设备通过子任务实例的标识,定位到全局变量表中相应的全局变量,若为路径语法表达式,则根据该全局变量表中该路径语法表达式所包括的全局变量对应的数据,将该路径语法表达式解析为相应的数据,得到指向的子任务实例的输入数据。
例如,子任务实例的数据结构中,包括参数字段,其结构如下:
<参数key,参数value,参数类型,参数描述>
其中参数类型有:string、boolean、number等。参数中value既可以使用常量(数字或字符串),也可以使用路径语法表达式引用前面任意一个子任务实例的输出结果。例如下面:
<子任务实例Id>.data;
<子任务实例Id>.parameter.<参数key值>;
这样,根据自任务实例的标识,能够定位出对应子任务实例的输入数据、输出数据,而每一个子任务实例的执行数据都会存储到数据库中,从而可以将各个子任务实例的执行数据加载到内存中,更新该全局变量表,以解析出子任务实例的输入参数中使用的路径语法表达式对应的数据。这样,一旦存在一个子任务实例的输入数据是在位于该子任务实例之前的在前子任务实例的输出数据,则通过本地内存存储的全局变量表,能够快速读取出对应的在前子任务实例的输出数据,提高了数据读取的速度。
在一些实施例中,方法还包括:获取与工作流相关的训练语料,训练语料包括多个工作流样本文本和各所述工作流样本文本对应的标签;通过待训练的语义理解模型,根据训练语料进行语义理解,得到各工作流样本文本对应的预测结果;根据各工作流样本文本对应的预测结果和标签,对待训练的语义理解模型进行模型训练,得到训练好的语义理解模型,将训练好的语义理解模型作为大语言模型。
可选地,计算机设备获取与工作流相关的训练语料,该训练语料是关于工作流引起以及运行实例相关的技术性语料。计算机设备还获取了常规的自然语料,自然语料包括网页、新闻、小说等相关的自然样本文本。计算机设备将训练语料和自然语料分别进行数据预处理,例如,对各工作流样本文本和自然样本文本进行清洗、分词、去除停用词等处理,得到处理后的工作流样本文本和处理后的自然样本文本。计算机设备将所有处理后的工作流样本文本和处理后的自然样本文本中出现的词进行统计和技术,建立词典,词典中的每个词都有唯一对应的编号。计算机设备将处理后的工作流样本文本和处理后的自然样本文本分别输入至待训练的语义理解模型中进行训练,得到各处理后的工作流样本文本分别对应的预测结果和各处理后的自然样本文本分别对应的预测结果。计算机设备根据各处理后的工作流样本文本分别对应的预测结果和标签、各处理后的自然样本文本分别对应的预测结果和标签,确定目标损失,并通过调整待训练的语义理解模型的模型参数,以最小化目标损失为目标,得到训练好的语义理解模型,将训练好的语义理解模型作为大语言模型。待训练的语义例模型是通过神经网络模型来构建的。
当然,在训练过程中,计算机设备还可以通过的dropout(丢弃法)、批量归一化来丰富用于模型训练的训练文本,提高模型的训练效果。
在本实施例中,通过大量且丰富的与工作流相关的训练语料以及大量的计算资源,训练待训练的语义理解模型的语义理解能力,确保训练好的语义理解模型应用于自然语言生成、机器翻译、语音识别等领域。这样,将训练好的语义理解模型作为大语言模型,能够精准对任务需求信息进行原子细粒度的分解,得到目标原子任务,能够准确生成与任务需求信息相匹配的目标任务的可执行结构体,以此,实现自动执行目标任务。
本申请还提供一种应用场景,该应用场景应用上述的基于大语言模型的任务生成方法。具体地,该基于大语言模型的任务生成方法在该应用场景的应用例如如下所述:在即时通信应用的场景中,为了便于管理人员管理某个业务项目,需要生成目标任务,即需要生成与业务项目相关的目标工作流。管理人员可以根据与该业务项目对应的任务需求信息,可以通过本申请实施例提供的基于大语言模型的任务生成方式,自动生成与该业务项目相关的目标任务的可执行结构体。这样,可以通过该目标任务的可执行结构体来管理该业务项目。具体地,获取基于交互式任务生成界面输入的任务需求信息;调用大语言模型对任务需求信息进行语义理解,得到匹配任务需求信息的目标任务的可执行结构体;在任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成;在任务生成界面中显示目标任务的执行进度查看链接,执行进度查看链接用于查看目标任务的执行进度。这样,无需人为的对目标任务进行额外的编程,能够自动化生成匹配的可执行结构体,提高了目标任务生成的效率。
当然并不局限于此,本申请提供的基于大语言模型的任务生成方法还可以应用在其他应用场景中,例如,通过本申请实施例提供的基于大语言模型的任务生成方法预先生成目标任务的可执行结构体,并预先存储至数据库中,开发技术人员现需要开发某种产品,该产品的正常运行涉及到目标任务的正常执行。基于此,可以直接调用该目标任务的可执行结构体进行运用。无需额外花费时间编码生成目标任务,提高了编码效率。
上述应用场景仅为示意性的说明,可以理解,本申请各实施例所提供的基于大语言模型的任务生成方法的应用不局限于上述场景。
在一个具体的实施例中,提供了一种基于大语言模型的任务生成方法,该方法由计算机设备执行。如图10所示,为一个实施例中工作流执行的流程示意图,为图10中的(a),即步骤S1002a至步骤S1010a。
步骤S1002a,通过语音识别确定任务需求信息。
具体地,计算机设备可以获取在交互式任务生成界面中输入的任务需求语音、文字或图文信息;对任务需求语音、文字或图文信息进行语义转化处理,得到任务需求信息。
下述以任务需求语音转换为任务需求信息为例进行说明。
步骤S1002a的具体过程参照(b),即步骤S1002b至步骤S1014b:
步骤S1002b,获取样本语音。
其中,样本语音是通过各种语音接收软件和硬件获得的。
步骤S1004b,语音预处理。
具体地,计算机设备对该样本语音进行语音预处理,得到预处理后的样本语音。预处理包括去除噪声、语音分段、语音特征提取中的至少一种处理。
步骤S1006b:特征提取。
具体地,计算机设备对预处理后的样本语音进行特征提取,得到对应的目标信号。
步骤S1008b:语音识别模型训练。
具体地,将目标信号发送至待训练的语音识别模型中进行模型训练,得到训练好的语音识别模型。
在计算机设备获取在交互式任务生成界面中通过用户账号发送的工作流需求语音之后,执行步骤S1010b。
步骤S1010b:语音识别。
具体地,计算机设备获取该任务需求语音,并通过训练好的语音识别模型,对该任务需求语音进行语音识别,得到第一识别文本。
步骤S1012b:文本处理。
具体地,计算机设备对该第一识别文本进行后处理,得到任务需求信息,后处理包括标点符号的添加和拼写纠错。
其中,后处理包括标点符号的添加和拼写纠错,等等。
步骤S1014b:输出任务需求信息。
步骤S1004a:获取提示语料。
具体地,计算机设备可以从工作流语料库中获取针对工作流构造的提示语料,提示语料包括为工作流的各原子任务构造的提示信息,提示信息包括原子任务的可执行结构体与运用信息。
步骤S1006a:根据任务需求信息和提示语料进行语义理解,得到目标任务的可执行结构体。
步骤S1006a为每次调用大语言模型的过程,以每次调用为例进行说明,具体过程参照(c),即步骤S1002c至步骤S1010c:
步骤S1002c,根据任务需求信息和提示语料,确定当前调用的调用参数;若当前调用为非首次调用,则历史调用上下文信息。
具体地,计算机设备将前次输出结果作为当前调用的上下文信息(如,当前为第二次调用,则当前调用的上下文信息为二级子需求信息;当前为第三次调用,则当前调用的上下文信息为三级子需求信息),并将当前调用的上下文信息、提示语料和前次调用对应的级别预测结果作为当前调用的调用参数(当前调用为第二次,则前次调用对应级别预测结果为一次级别预测结果;当前调用为第三次,则前次调用对应级别预测结果为二级预测结果)。
步骤S1004c:将当前调用的调用参数输入大语言模型,得到当前调用的级别预测结果。
步骤S1006c:可执行校验的判断。
具体地,在校验到当前调用的预测结果的格式是合法的情况下,计算机设备对当前调用的级别预测结果进行可执行校验。若可执行校验不通过,或者,当前调用的级别预测结果的格式不合法,执行步骤S1008c。若可执行校验通过,执行步骤1010c。
步骤S1008c:将当前调用拆解的结果,通过多级向量的方式存储在数据库中,作为下次调用的上下文信息。
具体地,计算机设备对当前调用的上下文信息进行拆解,得到当前调用拆解的结果,将当前调用拆解的结果(如,当前调用为第二次,则当前调用拆解的结果为三级子需求信息),通过多级向量的方式存储在数据库中,作为下次调用的上下文信息。
步骤1010c:输出目标任务的可执行结构体。
具体地,计算机设备在校验到当前调用的级别预测结果的格式是合法,且可执行校验通过的情况下,根据当前调用的级别预测结果,确定目标任务的可执行结构体,输出目标任务的可执行结构体。
举例说明:通过第一次调用大语言模型,根据任务需求信息与提示语料,输出一级预测结果。在得到一级预测结果之后,对该一级预测结果进行格式校验,若对应的格式校验结果表征通过,则对该一级预测结果进行可执行校验,得到一级校验结果。若格式校验结果表征不通过,则该一级预测结果不为结构体,或者该一级预测结果为不合法的结构体,此时,无需对一级预测结果进行可执行校验,直接对任务需求信息进行拆解,拆解为多个二级子需求信息。
当一级校验结果指示一级预测结果包括可执行结构体时,根据一级预测结果直接得到匹配任务需求信息的目标原子任务。当一级校验结果指示一级预测结果不包括可执行结构体时,则计算机设备将任务需求信息拆解为多个二级子需求信息。第二次调用大语言模型,并将各二级子需求信息、提示语料和一级预测结果均输入至大语言模型。对于每个二级子需求信息,通过大语言模型,根据该二级子需求信息、提示语料和一级预测结果输出二级预测结果。对该二级预测结果进行格式校验,若对应的格式校验结果表征通过,则返回对该二级预测结果进行可执行校验,得到二级校验结果步骤进行执行。若对应的格式校验结果表征通过,则说明该二级预测结果为结构体,且该结构体的格式是合法的。获取匹配的每个二级子需求信息的目标原子任务,计算机设备根据各二级子需求信息的拆解顺序,确定各二级子需求信息各自的目标原子任务的串接顺序。计算机设备从首个串接顺序的目标原子任务开始,按各二次子需求信息各自的目标原子任务的串接顺序,依次串接各二次子需求信息各自的目标原子任务,得到匹配任务需求信息的至少一个目标原子任务。
若对应的格式校验结果表征不通过,则该二级预测结果不为结构体,或者该二级预测结果为不合法的结构体,此时,无需对二级预测结果进行可执行校验,直接对二级子需求信息进行拆解,拆解为多个三级子需求信息。对于每个三级子需求信息,再次调用大语言模型,并将各三级子需求信息、提示语料和各二级子需求信息对应的二级预测结果均输入至大语言模型。对于每个三级子需求信息,计算机设备通过大语言模型,根据该三级子需求信息、提示语料和该二级子需求信息对应的二级预测结果,输出与该三级子需求信息对应的三级预测结果。在校验到该三级预测结果的格式是合法的情况下,对该三级预测结果进行可执行校验,得到三级校验结果。若该三级校验结果表征对应的三级预测结果通过可执行校验时,根据该三级预测结果,获取匹配三级子需求信息的目标原子任务。根据各三级子需求信息在二次拆解中的拆解顺序,确定匹配各三级子需求信息的目标原子任务的串接顺序。对于每个二级子需求信息,从首个第一串接顺序的目标原子任务开始,按各三次子需求信息各自的目标原子任务的串接顺序,依次串接各三次子需求信息各自的目标原子任务,得到该二级子需求信息的至少一个目标原子任务。从首个第二串接顺序的目标原子任务开始,按各二次子需求信息各自的目标原子任务的串接顺序,依次串接各二次子需求信息各自的目标原子任务,得到匹配任务需求信息的至少一个目标原子任务。第一串接顺序是指各匹配三级子需求信息的目标原子任务中第一个串接的顺序,第二串接顺序是指各匹配二级子需求信息的目标原子任务中第一个串接的顺序。根据匹配任务需求信息的至少一个目标原子任务的可执行结构体,确定匹配任务需求信息的目标任务的可执行结构体,输出目标任务的可执行结构体。
步骤S1008a:执行目标任务。
具体地,在交互式任务生成界面中渲染显示目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成;计算机设备执行目标任务;当目标任务的执行状态发生更新时,在任务执行流程图中更新所述目标任务的执行状态。
执行目标任务的具体过程参照(d),即步骤S1002d至步骤S1012d:
步骤S1002d:创建任务对应的执行实例。
具体地,计算机设备直接触发执行目标任务的执行指令,也可以存储该目标任务的可执行结构体,等待预设时间段后触发执行目标任务的执行,或者,响应于对目标任务的触发操作,触发执行目标任务的执行指令。当触发执行目标任务的执行指令时,在数据库的任务实例表中,创建与目标任务对应的任务实例。
步骤S1004d:获取执行实例并初始化。
具体地,计算机设备将创建的任务实例对应的任务实例标识推送至任务实例消息队列中,对该任务实例消息队列进行监测,具体地,根据计算机设备中部署的分布式工作流引擎的消费集群中各个容器(可以理解为各分布式的执行节点)对该任务实例消息队列进行监测,一旦该消息队列中存在新的任务实例标识,就会按照先进先出的顺序,依次被消费并执行相应的任务实例。
步骤S1006d:获取子任务实例表。
具体地,当消费到目标任务的任务实例时,计算机设备将首个子任务实例相应的子任务实例标识,推送至子任务实例消息队列;从子任务实例消息队列,消费子任务实例标识;根据子任务实例标识,获取对应的子任务实例表,加载并执行当前的子任务实例;在执行完当前的子任务实例后,将该子任务实例存储至数据库中对应的子任务实例表,并确定当前的子任务实例指向的子任务实例;将指向的子任务实例相应的子任务实例标识,推送至子任务实例消息队列后,返回从子任务实例消息队列中,消费子任务实例标识的步骤继续执行,直至任务实例的子任务实例全部执行完成。在确定当前的子任务实例指向的子任务实例之后,获取执行的子任务实例的子任务实例表,将指向的子任务实例持久化存储至数据库的子任务实例表;初始化子任务实例的运行状态为未处理;在执行完子任务实例后,在子任务实例表中,更新子任务实例的运行状态为已完成,以及更新子任务实例的执行数据。在当前的子任务实例指向多个子任务实例的情况下,将指向的多个子任务实例各自的子任务实例标识,均推送至子任务实例消息队列;通过分布式的执行节点,从子任务实例消息队列中,消费多个子任务实例标识后,并发地加载并执行相应的多个子任务实例。目标任务处理方法还包括:解析任务实例,得到所包括的各个子任务实例的全局变量,形成全局变量表并存储,全局变量包括全局输入变量与全局输出变量;在执行完当前的子任务实例后,根据相应的执行数据更新全局变量表中的全局输出变量;加载更新的全局变量表,获得指向的子任务实例的全局输入变量对应的输入数据,根据输入数据执行指向的子任务实例。
步骤S1010d:解析路径语法表达式。
具体地,在依次加载执行目标任务的执行实例的子任务实例的过程中,若存在一个子任务实例的输入数据是在位于该子任务实例之前的在前子任务实例的输出数据。此时,可以通过解析路径语法表达式,获取该子任务实例的输入数据,即获取该子任务实例之前的在前子任务实例的输出数据。计算机设备根据该子任务实例的输入数据执行该子任务实例。
步骤S1012d:判断执行实例是否结束。
具体地,将执行后得到的输出数据存储在数据库中,并判断目标任务的执行实例是否结束,即判断目标任务的执行实例中的所有子执行实例是否都已执行完成,若所有子执行实例的执行状态均为已执行,则确定目标工作的执行实例已完成。
步骤S1010a:展示执行进度查看链接。
具体地,在目标任务开始执行时,在任务生成界面交互式任务生成界面中显示目标任务的执行进度查看链接。响应于对该执行进度查看链接的触发操作,跳转至执行进度查看界面,并在执行进度查看界面中展示目标任务的执行进度。目标任务每执行一个应用,在在执行进度查看界面中展示执行状态的目标任务的任务执行流程图,该执行状态的目标任务的任务执行流程图中已执行完毕的应用对应的图像中显示已完成标志。
在本实施例中,
通过获取基于交互式任务生成界面输入的任务需求信息,直接调用大语言模型对任务需求信息进行语义理解,自动得到匹配任务需求信息的目标任务的可执行结构体;在任务生成界面中显示经过图形渲染处理的目标任务的任务执行流程图;目标任务根据至少一个目标原子任务构成,从而,能够直观展示生成的目标任务的细节信息。在任务生成界面中显示目标任务的执行进度查看链接,执行进度查看链接用于查看目标任务的执行进度,以便于及时且直观的查看执行进度。也就是说,用户仅需要提供任务需求信息,就能够自动化生成用于完成某个任务,无需进行任何复杂的操作,简化了任务生成的步骤,提高了任务生成的效率。此外,在生成任务的过程中,运行环境可以复用,可以执行不同任务,执行任务可以并发,有效降低了成本。在执行目标任务的过程中,通过进行原子任务激波的细粒度执行机制,实现了应用执行的并发,通过并发汇聚应用的方式,使得工作流引擎的执行接近于编码编程的运行特性(比如并发等待控制)。与此同时,可执行结构体DSL Json这种低代码的设计理念,使得学习和使用成本大大降低,极大提高了效率。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的基于大语言模型的任务生成方法的基于大语言模型的任务生成系统。该系统所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个基于大语言模型的任务生成系统实施例中的具体限定可以参见上文中对于基于大语言模型的任务生成方法的限定,在此不再赘述。
在一个实施例中,如图11所示,提供了一种基于大语言模型的任务生成系统1100,包括:信息获取模块1102、结构体获得模块1104、任务执行流程图显示模块块1106和链接显示模块1108,其中:
信息获取模块1102,用于获取基于交互式任务生成界面输入的任务需求信息;
结构体获得模块1104,用于调用大语言模型对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体;
任务执行流程图显示模块1106,用于在所述任务生成界面中显示经过图形渲染处理的所述目标任务的任务执行流程图;所述目标任务根据至少一个目标原子任务构成;
链接显示模块1108,用于在所述任务生成界面中显示所述目标任务的执行进度查看链接,所述执行进度查看链接用于查看所述目标任务的执行进度。
在一些实施例中,信息获取模块1102,用于获取在任务生成界面交互式任务生成界面中输入的工作流需求语音;对工作流需求语音进行语音识别,得到任务需求信息;结构体获得模块1104,用于通过所述大语言模型根据针对工作流构造的提示语料,对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体。
在一些实施例中,结构体获得模块1104,用于根据任务需求信息和提示语料生成调用参数;根据调用参数构造模型调用请求;根据模型调用请求,调用大语言模型。
在一些实施例中,信息获取模块1102,用于提供一可人机信息交互的交互式任务生成界面;接收并获取通过交互式任务生成界面输入的任务需求语音、文字或图文信息;对任务需求语音、文字或图文信息进行语义转化处理,得到任务需求信息。
在一些实施例中,信息获取模块1102,用于通过大语言模型调用针对工作流构造的提示语料,对任务需求信息进行语义理解,得到匹配任务需求信息的目标任务的可执行结构体;其中,提示语料包括为工作流的各原子任务构造的提示信息,提示信息包括原子任务的可执行结构体与运用信息。
在一些实施例中,结构体获得模块1104,用于根据任务需求信息和提示语料生成调用参数;根据调用参数构造模型调用请求;根据模型调用请求,调用大语言模型。
在一些实施例中,结构体获得模块,用于通过大语言模型,根据任务需求信息和提示语料进行语义理解,确定匹配任务需求信息的至少一个目标原子任务;根据至少一个目标原子任务的可执行结构体,输出匹配任务需求信息的目标任务的可执行结构体。
在一些实施例中,结构体获得模块,用于通过大语言模型,根据任务需求信息和提示语料,依次确定匹配任务需求信息至少一个目标原子任务;结构体获得模块,用于按各目标原子任务各自的可执行结构体所指示的下一个原子任务标识,组合各目标原子任务的可执行结构体,得到匹配任务需求信息的目标任务的可执行结构体。
在一些实施例中,结构体获得模块,用于通过大语言模型,将任务需求信息拆解为多个子需求信息;对于每个子需求信息,根据子需求信息和提示语料,依次确定匹配子需求信息的目标原子任务;根据匹配每个子需求信息的目标原子任务,确定匹配任务需求信息的至少一个目标原子任务。
在一些实施例中,结构体获得模块,用于通过大语言模型根据任务需求信息与提示语料输出一级预测结果,对一级预测结果进行可执行校验;当一级校验结果指示一级预测结果不包括可执行结构体时,则将任务需求信息拆解为多个二级子需求信息;对于每个二级子需求信息,通过大语言模型根据二级子需求信息、提示语料和一级预测结果输出二级预测结果,对二级预测结果进行可执行校验,当二级预测结果通过可执行校验时,根据二级预测结果得到匹配二级子需求信息的目标原子任务。
在一些实施例中,结构体获得模块,还用于当一级校验结果指示一级预测结果包括可执行结构体时,根据一级预测结果直接得到匹配任务需求信息的目标原子任务。
在一些实施例中,结构体获得模块,还用于获取匹配每个二级子需求信息的目标原子任务;将匹配每个二级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配任务需求信息的至少一个目标原子任务。
在一些实施例中,结构体获得模块,还用于当二级子需求信息对应的二级校验结果未通过可执行校验时,则将二级子需求信息拆解为多个三级子需求信息;对于每个三级子需求信息,通过大语言模型根据三级子需求信息、提示语料和每个二级子需求信息对应的二级预测结果,输出三级预测结果,对三级预测结果进行可执行校验,当三级预测结果通过可执行校验时,根据三级预测结果得到匹配三级子需求信息的目标原子任务。
在一些实施例中,结构体获得模块,还用于获取匹配每个三级子需求信息的目标原子任务;将匹配每个三级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配二级子需求信息的至少一个目标原子任务;将每个二级子需求信息所匹配的目标原子任务按相应的拆解顺序进行串接,得到匹配任务需求信息的至少一个目标原子任务。
在一些实施例中,系统还包括更新模块,更新模块,用于执行目标任务;当目标任务的执行状态发生更新时,在任务执行流程图中更新目标任务的执行状态。
在一些实施例中,更新模块,还用于响应于对执行进度查看链接的触发操作,跳转至执行进度查看界面;在执行进度查看界面中展示目标任务的执行进度。
在一些实施例中,系统还包括任务执行模块,任务执行模块,用于当触发执行目标任务的执行指令时,创建关于目标任务的任务实例,任务实例包括生成目标任务所需的至少一个目标原子任务对应的至少一个子任务实例;从任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各子任务实例。
在一些实施例中,任务执行模块,还用于在数据库的任务实例表中,创建与目标任务对应的任务实例;任务实例表用于记录任务实例标识、任务实例的流程数据结构,流程数据结构中包括子任务实例标识以及各子任务实例之间的指向关系;推送创建的任务实例的任务实例标识至任务实例消息队列;从任务实例消息队列中,消费任务实例标识后,执行从任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各子任务实例的步骤。
在一些实施例中,任务执行模块,还用于将首个子任务实例相应的子任务实例标识,推送至子任务实例消息队列;从子任务实例消息队列,消费子任务实例标识;根据子任务实例标识,加载并执行当前的子任务实例;在执行完当前的子任务实例后,确定当前的子任务实例指向的子任务实例;将指向的子任务实例相应的子任务实例标识,推送至子任务实例消息队列后,返回从子任务实例消息队列中,消费子任务实例标识的步骤继续执行,直至任务实例的子任务实例全部执行完成。
在一些实施例中,任务执行模块,还用于在当前的子任务实例指向多个子任务实例的情况下,将指向的多个子任务实例各自的子任务实例标识,均推送至子任务实例消息队列;工作流执行模块,还用于通过分布式的执行节点,从子任务实例消息队列中,消费多个子任务实例标识后,并发地加载并执行相应的多个子任务实例。
上述基于大语言模型的任务生成系统中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,也可以是终端,其内部结构图可以如图12所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于大语言模型的任务生成方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (22)

1.一种基于大语言模型的任务生成方法,其特征在于,所述方法包括:
获取基于交互式任务生成界面输入的任务需求信息;
调用大语言模型对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体;
在所述任务生成界面中显示经过图形渲染处理的所述目标任务的任务执行流程图;所述目标任务根据至少一个目标原子任务构成;
在所述任务生成界面中显示所述目标任务的执行进度查看链接,所述执行进度查看链接用于查看所述目标任务的执行进度。
2.根据权利要求1所述的方法,其特征在于,所述获取基于交互式任务生成界面输入的任务需求信息,包括:
提供一可人机信息交互的所述交互式任务生成界面;
接收并获取通过所述交互式任务生成界面输入的任务需求语音、文字或图文信息;
对所述任务需求语音、文字或图文信息进行语义转化处理,得到所述任务需求信息。
3.根据权利要求1或2所述的方法,其特征在于,所述调用大语言模型对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体,包括:
通过所述大语言模型调用针对工作流构造的提示语料,对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体;其中,所述提示语料包括为工作流的各原子任务构造的提示信息,所述提示信息包括原子任务的可执行结构体与运用信息。
4.根据权利要求3所述的方法,其特征在于,所述调用大语言模型,包括:
根据所述任务需求信息和所述提示语料生成调用参数;
根据所述调用参数构造模型调用请求;
根据所述模型调用请求,调用大语言模型。
5.根据权利要求3所述的方法,其特征在于,所述通过所述大语言模型调用针对工作流构造的提示语料,对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体,包括:
通过大语言模型,根据所述任务需求信息和所述提示语料进行语义理解,确定匹配所述任务需求信息的至少一个目标原子任务;
根据所述至少一个目标原子任务的可执行结构体,输出匹配所述任务需求信息的目标任务的可执行结构体。
6.根据权利要求5所述的方法,其特征在于,所述通过大语言模型,根据所述任务需求信息和所述提示语料进行语义理解,确定匹配所述任务需求信息的至少一个目标原子任务,包括:
通过大语言模型,根据所述任务需求信息和所述提示语料,依次确定匹配所述任务需求信息的至少一个目标原子任务;
所述根据所述至少一个目标原子任务的可执行结构体,输出匹配所述任务需求信息的目标任务的可执行结构体,包括:
按各所述目标原子任务各自的可执行结构体所指示的下一个原子任务标识,组合各所述目标原子任务的可执行结构体,得到匹配所述任务需求信息的目标任务的可执行结构体。
7.根据权利要求6所述的方法,其特征在于,所述通过大语言模型,根据所述任务需求信息和所述提示语料,依次确定匹配所述任务需求信息的至少一个目标原子任务,包括:
通过大语言模型,将所述任务需求信息拆解为多个子需求信息;对于每个子需求信息,根据所述子需求信息和所述提示语料,依次确定匹配所述子需求信息的目标原子任务;根据匹配每个所述子需求信息的目标原子任务,确定匹配所述任务需求信息的至少一个目标原子任务。
8.根据权利要求7所述的方法,其特征在于,所述通过大语言模型,将所述任务需求信息拆解为多个子需求信息;对于每个子需求信息,根据所述子需求信息和所述提示语料,依次确定匹配所述子需求信息的目标原子任务,包括:
通过所述大语言模型根据所述任务需求信息与所述提示语料输出一级预测结果,对所述一级预测结果进行可执行校验;
当一级校验结果指示所述一级预测结果不包括可执行结构体时,则
将所述任务需求信息拆解为多个二级子需求信息;
对于每个二级子需求信息,通过所述大语言模型根据所述二级子需求信息、所述提示语料和所述一级预测结果输出二级预测结果,对所述二级预测结果进行可执行校验,当所述二级预测结果通过可执行校验时,根据所述二级预测结果得到匹配所述二级子需求信息的目标原子任务。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当所述一级校验结果指示所述一级预测结果包括可执行结构体时,根据所述一级预测结果直接得到匹配所述任务需求信息的目标原子任务。
10.根据权利要求8所述的方法,其特征在于,所述根据匹配每个所述子需求信息的目标原子任务,确定匹配所述任务需求信息的至少一个目标原子任务,包括:
获取匹配每个所述二级子需求信息的目标原子任务;
将匹配每个所述二级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配所述任务需求信息的至少一个目标原子任务。
11.根据权利要求8所述的方法,其特征在于,所述方法还包括:
当二级子需求信息对应的二级校验结果未通过可执行校验时,则
将所述二级子需求信息拆解为多个三级子需求信息;
对于每个三级子需求信息,通过所述大语言模型根据所述三级子需求信息、所述提示语料和每个二级子需求信息对应的二级预测结果,输出三级预测结果,对所述三级预测结果进行可执行校验,当所述三级预测结果通过可执行校验时,根据所述三级预测结果得到匹配所述三级子需求信息的目标原子任务。
12.根据权利要求11所述的方法,其特征在于,所述根据匹配每个所述子需求信息的目标原子任务,确定匹配所述任务需求信息的至少一个目标原子任务,包括:
获取匹配每个所述三级子需求信息的目标原子任务;
将匹配每个所述三级子需求信息的目标原子任务按相应的拆解顺序进行串接,得到匹配所述二级子需求信息的至少一个目标原子任务;
将每个所述二级子需求信息所匹配的目标原子任务按相应的拆解顺序进行串接,得到匹配所述任务需求信息的至少一个目标原子任务。
13.根据权利要求1所述的方法,其特征在于,在所述在所述任务生成界面中显示经过图形渲染处理的所述目标任务的任务执行流程图之后,所述方法还包括:
执行所述目标任务;
当所述目标任务的执行状态发生更新时,在所述任务执行流程图中更新所述目标任务的执行状态。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
响应于对所述执行进度查看链接的触发操作,跳转至执行进度查看界面;
在所述执行进度查看界面中展示所述目标任务的执行进度。
15.根据权利要求13所述的方法,其特征在于,所述执行所述目标任务,包括:
当触发执行所述目标任务的执行指令时,创建关于所述目标任务的任务实例,所述任务实例包括生成所述目标任务所需的至少一个目标原子任务对应的至少一个子任务实例;
从所述任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各所述子任务实例。
16.根据权利要求15所述的方法,其特征在于,所述创建关于所述目标任务的任务实例之后,所述方法还包括:
在数据库的任务实例表中,创建与所述目标任务对应的任务实例;所述任务实例表用于记录任务实例标识、所述任务实例的流程数据结构,所述流程数据结构中包括子任务实例标识以及各所述子任务实例之间的指向关系;
推送创建的所述任务实例的任务实例标识至任务实例消息队列;
从任务实例消息队列中,消费任务实例标识后,执行所述从所述任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各所述子任务实例的步骤。
17.根据权利要求16所述的方法,其特征在于,所述从所述任务实例的首个子任务实例开始,根据子任务实例的可执行结构体依次执行各所述子任务实例,包括:
将首个子任务实例相应的子任务实例标识,推送至子任务实例消息队列;
从所述子任务实例消息队列,消费子任务实例标识;
根据所述子任务实例标识,加载并执行当前的子任务实例;
在执行完当前的子任务实例后,确定当前的子任务实例指向的子任务实例;
将所述指向的子任务实例相应的子任务实例标识,推送至子任务实例消息队列后,返回所述从所述子任务实例消息队列中,消费子任务实例标识的步骤继续执行,直至所述任务实例的子任务实例全部执行完成。
18.根据权利要求17所述的方法,其特征在于,所述将所述指向的子任务实例相应的子任务实例标识,推送至子任务实例消息队列,包括:
在所述当前的子任务实例指向多个子任务实例的情况下,将所述指向的多个子任务实例各自的子任务实例标识,均推送至子任务实例消息队列;
所述从所述子任务实例消息队列中,消费子任务实例标识,包括:
通过分布式的执行节点,从所述子任务实例消息队列中,消费所述多个子任务实例标识后,并发地加载并执行相应的多个子任务实例。
19.一种基于大语言模型的任务生成系统,其特征在于,所述系统包括:
信息获取模块,用于获取基于交互式任务生成界面输入的任务需求信息;
结构体获得模块,用于调用大语言模型对所述任务需求信息进行语义理解,得到匹配所述任务需求信息的目标任务的可执行结构体;
任务执行流程图显示模块,用于在所述任务生成界面中显示经过图形渲染处理的所述目标任务的任务执行流程图;所述目标任务根据至少一个目标原子任务构成;
链接显示模块,用于在所述任务生成界面中显示所述目标任务的执行进度查看链接,所述执行进度查看链接用于查看所述目标任务的执行进度。
20.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至18任一项所述的方法的步骤。
21.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至18中任一项所述的方法的步骤。
22.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至18中任一项所述的方法的步骤。
CN202310645825.8A 2023-05-31 2023-05-31 基于大语言模型的任务生成方法、系统、设备及存储介质 Pending CN116775183A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310645825.8A CN116775183A (zh) 2023-05-31 2023-05-31 基于大语言模型的任务生成方法、系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310645825.8A CN116775183A (zh) 2023-05-31 2023-05-31 基于大语言模型的任务生成方法、系统、设备及存储介质

Publications (1)

Publication Number Publication Date
CN116775183A true CN116775183A (zh) 2023-09-19

Family

ID=87987051

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310645825.8A Pending CN116775183A (zh) 2023-05-31 2023-05-31 基于大语言模型的任务生成方法、系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116775183A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116992006A (zh) * 2023-09-26 2023-11-03 武汉益模科技股份有限公司 一种大语言模型驱动的链式自然语言交互方法与系统
CN117111917A (zh) * 2023-10-23 2023-11-24 福建自贸试验区厦门片区Manteia数据科技有限公司 医疗辅助系统的交互方法、装置、电子设备及存储介质
CN117217238A (zh) * 2023-11-09 2023-12-12 成都理工大学 一种基于大型语言模型的智能交互系统及方法
CN117472478A (zh) * 2023-12-22 2024-01-30 科大讯飞股份有限公司 自动化流程生成方法及相关装置和系统、设备和存储介质
CN117524192A (zh) * 2023-11-08 2024-02-06 北京中科深智科技有限公司 一种语音识别中说话人停顿处理的方法
CN117556864A (zh) * 2024-01-12 2024-02-13 阿里云计算有限公司 信息处理方法、电子设备及存储介质

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116992006A (zh) * 2023-09-26 2023-11-03 武汉益模科技股份有限公司 一种大语言模型驱动的链式自然语言交互方法与系统
CN116992006B (zh) * 2023-09-26 2024-01-12 武汉益模科技股份有限公司 一种大语言模型驱动的链式自然语言交互方法与系统
CN117111917A (zh) * 2023-10-23 2023-11-24 福建自贸试验区厦门片区Manteia数据科技有限公司 医疗辅助系统的交互方法、装置、电子设备及存储介质
CN117111917B (zh) * 2023-10-23 2024-02-27 福建自贸试验区厦门片区Manteia数据科技有限公司 医疗辅助系统的交互方法、装置、电子设备及存储介质
CN117524192A (zh) * 2023-11-08 2024-02-06 北京中科深智科技有限公司 一种语音识别中说话人停顿处理的方法
CN117217238A (zh) * 2023-11-09 2023-12-12 成都理工大学 一种基于大型语言模型的智能交互系统及方法
CN117217238B (zh) * 2023-11-09 2024-01-30 成都理工大学 一种基于大型语言模型的智能交互系统及方法
CN117472478A (zh) * 2023-12-22 2024-01-30 科大讯飞股份有限公司 自动化流程生成方法及相关装置和系统、设备和存储介质
CN117472478B (zh) * 2023-12-22 2024-04-26 科大讯飞股份有限公司 自动化流程生成方法及相关装置和系统、设备和存储介质
CN117556864A (zh) * 2024-01-12 2024-02-13 阿里云计算有限公司 信息处理方法、电子设备及存储介质
CN117556864B (zh) * 2024-01-12 2024-04-16 阿里云计算有限公司 信息处理方法、电子设备及存储介质

Similar Documents

Publication Publication Date Title
CN116775183A (zh) 基于大语言模型的任务生成方法、系统、设备及存储介质
US11948058B2 (en) Utilizing recurrent neural networks to recognize and extract open intent from text inputs
EP3244312B1 (en) A personal digital assistant
US11087094B2 (en) System and method for generation of conversation graphs
CN115423070A (zh) 用于训练模型的基于有向无环图的框架
US20170337261A1 (en) Decision Making and Planning/Prediction System for Human Intention Resolution
Wan et al. Are machine learning cloud apis used correctly?
US20150286943A1 (en) Decision Making and Planning/Prediction System for Human Intention Resolution
CN112256537B (zh) 模型运行状态的展示方法、装置、计算机设备和存储介质
CN111382228A (zh) 用于输出信息的方法和装置
US9361582B2 (en) Efficient binary protocol marshalling for rule engine sessions
US20200159526A1 (en) Methods and systems for automatically updating software functionality based on natural language input
CN115989490A (zh) 用于为文本分类提供解释的技术
CN117520514A (zh) 一种问答任务处理方法、装置、设备及可读存储介质
US20230244878A1 (en) Extracting conversational relationships based on speaker prediction and trigger word prediction
Körner et al. Mastering Azure Machine Learning: Perform large-scale end-to-end advanced machine learning in the cloud with Microsoft Azure Machine Learning
US20230111633A1 (en) Lead conversion using conversational virtual avatar
WO2020006090A1 (en) Skill-generating method, apparatus, and electonic device
CN116737964B (zh) 一种人工智能大脑系统
CN116028038B (zh) 基于dag图表的可视化流水线编排方法及相关组件
US11403556B2 (en) Automated determination of expressions for an interactive social agent
CN118069932A (zh) 配置信息的推荐方法、装置、计算机设备
CN117975946A (zh) 语义识别方法、装置、设备、介质和程序产品
CN113703819A (zh) 一种动态消息解析方法、装置、设备和介质
CN117271553A (zh) 一种监管报送数据质量规则生成及运行方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40092365

Country of ref document: HK