基于大语言模型的多源信息融合的代码生成方法及系统

    公开(公告)号:CN119512524A

    公开(公告)日:2025-02-25

    申请号:CN202411185891.2

    申请日:2024-08-27

    Applicant: 北京大学

    Abstract: 本发明提供一种基于大语言模型的多源信息融合的代码生成方法及系统,该方法包括:根据待补全代码的代码结构内容,从第一代码文件路径和多个第二代码文件路径中的代码文件中获取所述待补全代码对应的应用程序编程接口信息和代码关系信息;根据所述应用程序编程接口信息和所述代码关系信息,从目标代码库中匹配得到待定上下文代码片段;将所述待定上下文代码片段输入至代码评价模型,得到由所述代码评价模型输出的目标补全代码片段;根据所述待补全代码对应的代码输入光标位置信息,获取所述待补全代码的前序代码和后缀代码,并根据所述前序代码、所述后缀代码和所述目标补全代码片段,生成代码补全提示词。本发明得到更为准确的代码补全结果。

    一种基于大模型的代码分析与生成方法及系统

    公开(公告)号:CN119396400A

    公开(公告)日:2025-02-07

    申请号:CN202411192606.X

    申请日:2024-08-28

    Applicant: 北京大学

    Inventor: 叶蔚 张世琨 谢睿

    Abstract: 本发明提供一种基于大模型的代码分析与生成方法及系统,其中方法包括:获取用户输入的生成需求;基于所述生成需求,从代码功能模块集合中,确定待调用的目标功能模块,以及确定所述目标功能模块的执行顺序,所述代码功能模块集合包括代码分析模块和各种代码生成功能的大模型代理模块。基于所述执行顺序依次调用所述目标功能模块,得到与所述生成需求对应的代码。本发明通过自动生成符合规范的代码片段,减轻了开发人员的编码负担,降低了开发成本,提升了开发效率。同时,高效利用大模型代理技术,通过自动化代码分析,提高了分析的准确性。此外,系统能够适应不同的编程语言和开发框架,满足多样化的开发需求。

    分级多特征的代码同源分析方法及系统

    公开(公告)号:CN114968351B

    公开(公告)日:2022-10-21

    申请号:CN202210913259.X

    申请日:2022-08-01

    Applicant: 北京大学

    Abstract: 本发明涉及软件代码分析领域,公开了一种分级多特征的代码同源分析方法及系统,使用值依赖分析技术,脱离了特征提取对于结构的依赖,更准确地发现代码中的不可达路径、并更精确地计算变量常量值和变量之间的依赖关系,从而更加全面、准确构建代码在控制流和数据流上的归一化模型,使用分级的方法,将项目按照粒度由大到小划分为项目、包、文件、类和函数五层,此外按照分析精度由低到高划分为文本、标识、语法、语义四层,通过流水线由项目向函数逐级分解、再从函数向项目逐级推导和综合结果,通过流水线的方式有机组合不同粒度和不同分析层次,利用不同分析方法的优点,加速代码匹配过程,提高匹配速度和匹配精度。

    增量代码的静态检测方法及检测系统

    公开(公告)号:CN114510722A

    公开(公告)日:2022-05-17

    申请号:CN202210147761.4

    申请日:2022-02-17

    Applicant: 北京大学

    Abstract: 本发明涉及计算机科学技术领域,尤其涉及一种增量代码的静态检测方法及检测系统。静态检测方法具体包含以下步骤:识别所述待测代码的增量部分,构建抽象语法树,合成待测代码的函数调用图,构建增量部分的值依赖图和待测代码的值依赖图,对待测代码值依赖图进行漏洞检测得增量代码的静态检测结果;还包含步骤:将原代码进行静态分析和将原代码和增量代码的静态检测结果结合得到待测代码的静态检测结果。本发明解决了现有技术中静态检测方法精度差容易漏报或误报及代码更新后全检测周期长、资源消耗大、经济性差的问题,具有以下优点:大幅减少分析时间和内存,效率高,成本低和精度高的特点。

    基于自适应图神经网络的敏感文本检测方法及系统

    公开(公告)号:CN113946682B

    公开(公告)日:2022-03-11

    申请号:CN202111565272.2

    申请日:2021-12-21

    Applicant: 北京大学

    Abstract: 本发明涉及一种基于自适应图神经网络的敏感文本检测方法及系统,方法包括:采集网络敏感文本,将敏感文本以及敏感文本的类型保存至数据库;解析敏感文本,过滤解析后的敏感文本,得到高质量敏感文本语料库;对语料库进行预处理,得到模型训练需要的敏感语句输入序列以及目标敏感类型序列;将敏感语句输入序列和目标敏感类型序列输入模型进行训练,训练后经过验证得到分类模型;将数据库中用于测试的文本信息输入分类模型,输出分类结果。本发明提出基于采用强化学习的自适应图神经网络,改模型基于图神经网络,能够很好的从敏感文本中提取有用特征,用强化学习来生成图,并输入图神经网络,提升文本分类的准确率。

    一种基于守卫计算的区间信息分析方法

    公开(公告)号:CN108984843B

    公开(公告)日:2021-02-09

    申请号:CN201810634710.8

    申请日:2018-06-20

    Abstract: 本发明提供一种基于守卫计算的区间信息分析方法,包括:S1,对于值依赖图中任一结点,根据该结点与该结点的任一前驱结点间的守卫条件获取守卫条件对应的条件判断结点;S2,根据条件判断结点的前驱结点的区间信息,计算条件判断结点的区间信息,进一步确认条件判断结点的属性;属性为假、真和可满足中的一种;S3,根据条件判断结点的属性,确认条件判断结点对应的守卫条件的区间信息;S4,根据该结点的各前驱结点的区间信息和该结点与该结点的各前驱结点间的守卫条件的区间信息,获取该结点的区间信息。本发明提供的方法,补偿了值依赖图缺少控制流信息的不足,提高了分析精度。

    C/C++程序中不可达代码的静态检测方法及系统

    公开(公告)号:CN109446066B

    公开(公告)日:2020-11-03

    申请号:CN201811101415.2

    申请日:2018-09-20

    Abstract: 本发明实施例提供一种C/C++程序中不可达代码的静态检测方法及系统,其中,所述方法包括:构建待检测C/C++程序的控制依赖图和值依赖图;在所述值依赖图上进行常量分析,并根据常量分析的结果更新所述控制依赖图;对更新后的所述控制依赖图中所有守卫结点的约束表达式的可满足性进行求解;若存在不可满足的约束表达式,则从所述控制依赖图中获取与所述不可满足的约束表达式相对应的守卫结点的所有直接和间接后继结点所对应的程序代码。本发明可以检测千万行级的代码,检测速度可达到每小时百万行以上,并且检测精度超过利用符号执行技术的检测精度,具有较低的误报率和漏报率。

    一种基于值依赖图的污染数据分析方法、系统与电子设备

    公开(公告)号:CN109002712B

    公开(公告)日:2020-11-03

    申请号:CN201810650652.8

    申请日:2018-06-22

    Abstract: 本发明提供一种基于值依赖图的污染数据分析方法、系统与电子设备,所述方法包括:S1,将目标计算机程序转换为守卫值依赖图,并通过自定义外部输入函数摘要和外部输入函数摘要用户定义接口,在所述守卫值依赖图上确定多个污染传播起始点;S2,基于污染传播规则、用户自定义漏洞特征的节点特征以及所述污染传播起始点,构成污染传播图;S3,基于所述污染传播图,通过对各所述污染传播起始点进行向下的广搜计算,获取对应的污染传播路径和每一条所述污染传播路径的污染类型。本发明能够清晰且便利的表达污染数据传播范围、传播关系和每一条路径的污染传播类型,保证污染数据传播范围的全面性。

    基于文档上下文的机器翻译方法及装置

    公开(公告)号:CN111666774A

    公开(公告)日:2020-09-15

    申请号:CN202010334379.5

    申请日:2020-04-24

    Applicant: 北京大学

    Abstract: 本发明实施例提供一种基于文档上下文的机器翻译方法及装置,方法包括:基于句子级Encoder获取当前句子的源端上下文表征、目标端上下文草稿表征和当前句子的草稿译文表征;基于文档级Encoder获取当前句子的源端句子表征,在源端句子表征中融合源端上下文表征,获取融合后的所述源端句子表征;基于文档级Decoder获取所述当前句子的目标端句子表征,在目标端句子表征中融合当前句子的草稿译文表征和目标端上下文草稿表征,根据融合后的目标端句子表征和融合后的源端句子表征,获取当前句子的最终翻译结果。本发明实施例引入文档级信息进行上下文知识推理,以此对句子级别的草稿译文进行修正,改善了翻译质量,得到更好的译文。

    一种基于路径追踪的漏洞检测方法及系统

    公开(公告)号:CN109063483B

    公开(公告)日:2020-05-12

    申请号:CN201810643006.9

    申请日:2018-06-21

    Abstract: 本发明提供一种基于路径追踪的漏洞检测方法及系统,其中方法包括:对于当前测试用例,获取当前测试用例在待检测程序中运行时产生的第一运行路径;将第一运行路径与预设漏洞路径进行匹配,若第一运行路径与预设漏洞路径完全匹配,则根据当前测试用例检测待检测程序中的漏洞。该方法及系统以预设漏洞路径为标准,当且仅当某一个当前测试用例在待检测程序中运行时产生的第一运行路径与预设漏洞路径完全匹配时,才确定该当前测试用例为能够触发待检测程序中漏洞的测试用例,最终确定的测试用例能够有效检测出待检测程序中的漏洞,克服了现有的模糊测试工具在进行程序漏洞检测时难以确保有效检测出漏洞的问题,一定程度上提高了漏洞检测的效率。

Patent Agency Ranking