买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:重庆大学;国科础石(重庆)软件有限公司
摘要:本发明涉及一种基于大模型的代码静态分析警告自动修复方法,该方法利用基于代码的大模型,通过模型在预训练阶段学习到的代码理解能力和生成能力,结合静态代码扫描分析工具对潜在异味的精准定位,能够有效地识别和修复软件代码中的潜在异味。这种方法可以显著提高软件开发的效率和代码质量,减少人工干预,同时确保更高的代码安全性和可维护性。该技术不仅适用于传统的软件开发过程,也适应于持续集成和持续部署CICD环境中的动态代码。通过这种方式,可以有效地管理和优化大规模软件项目的代码库。
主权项:1.一种基于大模型的代码静态分析警告自动修复方法,其特征在于:包括如下步骤:S101:构建异味代码修复数据集,每条异味修复数据由存在异味的代码块、修复后的代码补丁、违反的规则名称、异味起始行号和异味结束行号;构建异味代码修复数据集的过程包括:收集现有代码数据集,利用静态代码分析工具对代码数据集中的代码进行扫描,检测出潜在的异味代码问题;此过程包括记录每个发现异味的代码块、具体违反的规则名称以及违反规则的代码行号;提取异味代码完整信息,异味代码完整信息包括异味代码起始行号与异味代码结束行号;通过存在异味的代码块、规则名称、异味的起始行号和异味的结束行号构造特定prompt输入GPT模型生成近似的重构代码;验证近似的重构代码,将有效且符合编码规范的重构代码作为这一条异味代码数据的修复后的代码补丁;S102:选择经过预训练的代码大模型作为基座模型;S103:对每条异味修复数据构建提示词;通过标签明确标记异味代码的开始和结束位置、违反的规则名称;S104:将提示词输入基座模型,对基座模型进行训练,并采用加权交叉熵损失函数来计算基座模型损失,当根据基座模型损失更新基座模型的参数,当基座模型损失不再下降得到训练好的基座模型;S105:新的代码块采用S101的方法得到对应的异味修复数据,再采用S103的方法构建新的代码块对应的提示词,将新的代码块对应的提示词多次输入训练好的基座模型,输出多个补丁,将warning和warning标签间的原始代码替换为模型生成的修复补丁,再使用编译器及静态代码分析工具对修复后的代码块进行检验,从而验证补丁的正确性。
全文数据:
权利要求:
百度查询: 重庆大学 国科础石(重庆)软件有限公司 一种基于大模型的代码静态分析警告自动修复方法
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。