广东工业大学苏庆获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉广东工业大学申请的专利一种基于检索增强与多模态相结合的代码补全方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN119806502B 。
龙图腾网通过国家知识产权局官网在2025-09-09发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202411857009.4,技术领域涉及:G06F8/33;该发明授权一种基于检索增强与多模态相结合的代码补全方法是由苏庆;杨智程;程林峰;郑靖轩;谢国波;林志毅;黄剑锋;卢致晖;周旭;陈勇;袁海军设计研发完成,并于2024-12-17向国家知识产权局提交的专利申请。
本一种基于检索增强与多模态相结合的代码补全方法在说明书摘要公布了:本发明公开的属于代码补全技术领域,具体为一种基于检索增强与多模态相结合的代码补全方法,包括具体步骤如下:构建代码补全数据集、构建代码补全模型、划分代码补全数据集并训练代码补全模型、应用代码补全模型进行代码补全。本发明对待补全代码进行检索增强,检索出相似的代码片段来辅助待补全代码进行补全,能够很好地利用代码的外在相似性,提高代码补全效率。提取从抽象语法树的叶子节点到待补全节点的路径特征,能够很好的利用路径上的语法结构信息,同时也能够一定程度上缓解路径爆炸问题。
本发明授权一种基于检索增强与多模态相结合的代码补全方法在权利要求书中公布了:1.一种基于检索增强与多模态相结合的代码补全方法,其特征在于,包括具体步骤如下: S1:构建代码补全数据集; S2:构建代码补全模型; S3:划分代码补全数据集并训练代码补全模型; S4:应用代码补全模型进行代码补全; 所述S2的具体步骤如下: S21:检索与待补全代码c最相似的代码片段m,并计算c与m的语义相似度; S22:如果待补全代码c与代码片段m的语义相似度高于阈值,执行S221来生成代码补全结果,否则执行S222来生成代码补全结果; 所述S221的具体步骤为:运用补全代码生成器生成代码补全结果,具体如下: 如果待补全代码c与代码片段m的语义相似度高于阈值,根据m的索引值从源代码数据库中得到m的下一个代码片段m1,拼接m和m1得到m'=[m,m1],其中m'能够辅助c进行补全;然后拼接c和m'得到x'=[c,m'],将x'作为补全代码生成器的输入,其中补全代码生成器由CodeGPT模型构建而成,最后输出代码补全结果; 所述S222的具体步骤为:提取待补全代码c的多模态特征,并生成代码补全结果,具体如下: 如果待补全代码c与代码片段m的语义相似度低于阈值,则提取待补全代码c的多模态特征,包括c的AST节点序列特征、AST的叶子节点到待补全节点的路径特征和信息增强图特征; 所述S222中提取待补全代码c的AST的信息增强图特征Fg的具体步骤如下: S22231,构造信息增强图: S222311:使用ASDL规则中的字段为TA-AST的边添加类型信息,所述类型信息表示其边两端节点之间的关系,其中,在Moudle节点与FunctionDef节点之间添加函数体边body,在FunctionDef节点与Assign节点和Return节点之间也添加函数体边body,在FunctionDef节点与标识符节点之间添加函数名字边name,在FunctionDef节点与Args节点之间添加函数参数边args,在Args节点与标识符节点之间添加参数边arg,在Assign节点与标识符节点之间添加目标边targets,在Assign节点与BinOp节点之间添加取值边value,在BinOp节点与左右标识符节点之间添加计算边left和right,在BinOp节点与操作符节点之间操作符边op; S222312:接着在TA-AST中添加下一个记号边nextToken,其边是根据待补全代码c的文本顺序从一个叶子节点指向另一个叶子节点;同时添加赋值边assign_edge表示将一个标识符的值赋给另一个标识符; S222313:然后根据驼峰命名规则将TA-AST中的叶子节点按值拆分为多个子节点,以能够一定程度上解决超词表问题;同时在TA-AST中引入了新的节点类型subtoken和子节点边subToken_of; S222314:最后形成AST的信息增强图; S22232,使用HetSheaf模型来提取信息增强图的各个节点特征: S222321:对信息增强图中的节点和边进行特征嵌入: F'n=ReLUWn·Fn+bn F'e=ReLUWe·Fe+be 其中,F'n为嵌入后的节点特征,F'e为嵌入后的边特征,ReLU为激活函数,Fn为初始化的节点特征,Fe为初始化的边特征,Wn和We为权重参数,bn和be为偏置值; S222322:在各个节点间进行消息传递并更新节点特征: 其中,Ni为节点i的邻居集合,和为节点i和节点j的特征,为节点i和节点j之间的边的特征,We1和We2为权重参数,b'为偏置值; S222323:使用平均聚合函数来融合各个节点特征,得到信息增强图特征Fg; 其中,Fg为1×512大小的特征向量; 将多模态特征融合并生成代码补全结果。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人广东工业大学,其通讯地址为:510000 广东省广州市东风东路729号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。