代码生成方法和装置、电子设备与流程

文档序号:36387338发布日期:2023-12-15 02:20阅读:21来源:国知局
代码生成方法和装置与流程

本申请涉及工业控制领域,具体而言,涉及一种代码生成方法和装置、电子设备、非瞬时性计算机可读存储介质。


背景技术:

1、目前,基于大模型的情景式代码自动生成模型均面向c/c++/java/python等文本型通用语言,尚未涉及符合工业控制领域国际标准(例如,iec61131-3)的专用语言。工控专用语言保护文本、图形等标准程序,可获取的数据集极少。对于图形程序,由于存储描述方式并不能直接表达和被理解识别,目前尚没有模型可直接输出符合iec61131-3标准的功能块图。


技术实现思路

1、本申请旨在提出一种代码生成方法和装置、电子设备、非瞬时性计算机可读存储介质。以解决目前基于大模型的情景式代码自动生成模型不能生成符合工业控制领域国际标准的专用语言的问题。

2、根据本申请的一方面,提出一种代码生成方法,包括构建符合预设的工控国际标准语言的结构化文本代码数据集;利用所述结构化文本代码数据集对预设的模型进行训练;根据用户的输入数据,利用训练后的所述模型生成符合所述工控国际标准语言的结构化文本代码。

3、根据一些实施例,所述模型包括chatglm-6b、llama2-7b和/或codet5+模型。

4、根据一些实施例,构建符合预设的工控国际标准语言的结构化文本代码数据集包括:基于所述工控国际标准语言的工控程序资产库,生成结构化文本算法库。

5、根据一些实施例,所述结构化文本算法库包括符合iec61131-3标准定义的函数和功能块代码。

6、根据一些实施例,构建符合预设的工控国际标准语言的结构化文本代码数据集包括:利用预设的转换工具生成符合所述工控国际标准语言的结构化文本代码数据集,其中,所述转换工具用于将c语言转换为符合所述工控国际标准语言的结构化文本语言。

7、根据一些实施例,所述代码生成方法还包括:将生成的符合所述工控国际标准语言的结构化文本代码转化为功能块图形程序。

8、根据一些实施例,将生成的符合所述工控国际标准语言的文本代码转化为功能块图形程序包括:构建所述结构化文本代码的四则运算、逻辑运算、移位运算、循环语句和/或流程控制语句对应的代码块映射表,所述代码映射表包括函数映射表和/或功能块映射表;解析所述结构化文本代码,以生成语法树;遍历所述语法树,根据构建的所述代码块映射表,将所述结构化文本代码中的四则运算、逻辑运算、移位运算、循环语句和/或流程控制语句转换为功能块符号与数据连线拓扑图。

9、根据本申请的一方面,提出一种符合工控国际标准语言的代码生成装置,包括:结构化文本代码数据集构建单元,用于构建符合预设的工控国际标准语言的结构化文本代码数据集;模型训练单元,用于利用所述结构化文本代码数据集对预设的模型进行训练;结构化文本代码生成单元,用于根据用户的输入数据,利用训练后的所述模型生成符合所述工控国际标准语言的结构化文本代码。

10、根据本申请的一方面,提出一种电子设备,包括:处理器;以及

11、存储器,存储有计算机程序,当所述计算机程序被所述处理器执行时,使得所述处理器执行如前任一实施例所述的代码生成方法。

12、根据本申请的一方面,提出一种非瞬时性计算机可读存储介质,其上存储有计算机可读指令,当所述指令被处理器执行时,使得所述处理器执行如前任一实施例所述的代码生成方法。

13、根据本申请的实施例,首先构建符合工业控制领域国际标准的结构化文本代码数据集,并利用构建的结构化文本代码数据集对基于大模型的情景式代码自动生成模型(也即,开源低参数量大模型)进行训练,以使得基于大模型的情景式代码自动生成模型能够输出符合标准的结构化文本语言代码。

14、应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本申请。



技术特征:

1.一种代码生成方法,其特征在于,包括:

2.根据权利要求1所述的代码生成方法,其特征在于,所述模型包括:

3.根据权利要求1所述的代码生成方法,其特征在于,构建符合预设的工控国际标准语言的结构化文本代码数据集包括:

4.根据权利要求3所述的代码生成方法,其特征在于,所述结构化文本算法库包括符合iec61131-3标准定义的函数和功能块代码。

5.根据权利要求1所述的代码生成方法,其特征在于,构建符合预设的工控国际标准语言的结构化文本代码数据集包括:

6.根据权利要求1所述的代码生成方法,其特征在于,还包括:

7.根据权利要求6所述的代码生成方法,其特征在于,将生成的符合所述工控国际标准语言的文本代码转化为功能块图形程序包括:

8.一种符合工控国际标准语言的代码生成装置,其特征在于,包括:

9.一种电子设备,包括:

10.一种非瞬时性计算机可读存储介质,其上存储有计算机可读指令,当所述指令被处理器执行时,使得所述处理器执行如权利要求1-7中任一项所述的代码生成方法。


技术总结
本申请提出一种代码生成方法和装置、电子设备、非瞬时性计算机可读存储介质,所述代码生成方法包括构建符合预设的工控国际标准语言的结构化文本代码数据集;利用所述结构化文本代码数据集对预设的模型进行训练;根据用户的输入数据,利用训练后的所述模型生成符合所述工控国际标准语言的结构化文本代码。根据本申请的实施例,首先构建符合工业控制领域国际标准的结构化文本代码数据集,并利用构建的结构化文本代码数据集对基于大模型的情景式代码自动生成模型(也即,开源低参数量大模型)进行训练,以使得基于大模型的情景式代码自动生成模型能够输出符合标准的结构化文本语言代码。

技术研发人员:曾凯,陈宏君,张磊,李响,叶立文,周强,洪礼鑫,杨丰毓,韩科文
受保护的技术使用者:南京南瑞继保电气有限公司
技术研发日:
技术公布日:2024/1/15
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1