当前位置: 首页 > 专利查询>南通大学专利>正文

一种基于上下文学习和大语言模型的Solidity注释生成方法技术

技术编号:40304894 阅读:26 留言:0更新日期:2024-02-07 20:50
本发明专利技术提供了基于上下文学习和大语言模型的Solidity代码注释生成方法,属于软件工程技术领域。解决了主流方法不能生成新注释,依赖数据集和泛化能力不足的技术问题。其技术方案为:包括以下步骤:(1)通过智能合约代码社区搜集语料库;(2)检索出最相似的前n个代码片段。(3)为支持大语言模型的上下文学习,结合检索到的示范与定制的提示词构造提示模板。(4)调用大语言模型API,结合提示模板完成注释生成。本发明专利技术的有益效果:本发明专利技术无需额外训练,可显著提高自动生成的代码注释质量。

【技术实现步骤摘要】

本专利技术涉及软件工程,尤其涉及基于上下文学习和大语言模型在注释生成领域的应用。


技术介绍

1、智能合约是运行在区块链技术上的自动执行的数字合约。它们在没有中介机构的情况下自动化、验证和执行协议条款,从而提供了透明度和安全性。然而,研究发现,大多数智能合约代码注释都不可用,这使得开发人员很难理解代码的逻辑、目的和预期功能。此外,智能合约也很容易受到漏洞的影响,因为智能合约代码中使用到大量的代码克隆,而在之前的一项研究中发现10%的漏洞是由代码克隆引起的。如果智能合约代码缺乏解释潜在风险的注释,那么就很难识别和解决安全漏洞,这可能会增加黑客攻击的机会。

2、基于以上分析,为智能合约代码自动生成简洁流畅的注释变得极为重要。目前在智能合约领域,深度学习方法和信息检索方法都有很好的表现。然而,对于基于微调范式的深度学习方法,性能可能会受到下游任务收集的数据集质量的限制,存在知识遗忘问题,这会降低训练模型的泛化性。而对于基于信息检索的方法,如果在历史存储库中不存在类似的智能合同代码,它们就很难生成高质量的注释。因此,急需一种不依赖于微调范式,并且可以自主本文档来自技高网...

【技术保护点】

1.基于上下文学习和大语言模型的Solidity注释生成方法,其特征在于,包括以下步骤为:

2.权利要求1提出的基于上下文学习和大语言模型的Solidity注释生成方法,其特征在于,所述步骤(2)中结合代码语义、词汇和语法的示范选择策略,包括以下步骤:

3.权利要求1提出的基于上下文学习和大语言模型的Solidity代码注释生成方法,其特征在于,所述步骤(3)中构造提示模板,包括如下步骤:

4.权利要求1提出的基于上下文学习和大语言模型的Solidity注释生成方法,其特征在于,所述步骤(4)中调用大语言模型API,即选用OpenAI提供的API接口g...

【技术特征摘要】

1.基于上下文学习和大语言模型的solidity注释生成方法,其特征在于,包括以下步骤为:

2.权利要求1提出的基于上下文学习和大语言模型的solidity注释生成方法,其特征在于,所述步骤(2)中结合代码语义、词汇和语法的示范选择策略,包括以下步骤:

3.权利要求1提出的基于上下文学习和大语言模型的solidity代码注释生成方法,其特...

【专利技术属性】
技术研发人员:赵俊杰陈翔陆桂龙裴文龙蔡之龙黄一麟蔡永维
申请(专利权)人:南通大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1