CN119396464A 一种代码生成方法、装置和计算设备集群 (深圳华为云计算技术有限公司)_第1页
CN119396464A 一种代码生成方法、装置和计算设备集群 (深圳华为云计算技术有限公司)_第2页
CN119396464A 一种代码生成方法、装置和计算设备集群 (深圳华为云计算技术有限公司)_第3页
CN119396464A 一种代码生成方法、装置和计算设备集群 (深圳华为云计算技术有限公司)_第4页
CN119396464A 一种代码生成方法、装置和计算设备集群 (深圳华为云计算技术有限公司)_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

道万科城社区华为公司华为总部办公进行相似度匹配,得到第一行数代码的提示信的对应的多个提示信息中不存在相同的代码标识时,第一行数代码和第二行数代码为合规代代码生成模型重新生成合规的当前行代码和其2当所述第一行数代码的提示信息与第二行数代码对应的多个提示信息中不存在相同当所述第一行数代码的提示信息与所述第二行数代码对应的多个提示信息中存在相检测所述相同的代码标识对应的代码信息是否为在所述代码库中创建倒排索引;所述倒排索引包括所述代所述根据所述第一行数代码和代码库中的代码进行相似度匹配,基于所述第一行数代码的代码特征,从所述倒排索引中获取所述生成模型在生成所述第一行数代码之前生成的代码,且与所述第一行数代码为连续代码,码库中的代码相同的代码的行数大于或等于所述设定行数的获取所述代码文件中的设定位置的第三行数代码,所述设定位3当所述第一行数代码的提示信息与第三行数代码对应的多个提示信息中不存在相同第二处理模块,用于当获取到所述代码生成模型生成的第一行第三处理模块,用于当所述第一行数代码的提示信息与第二当所述第一行数代码的提示信息与所述第二行数代码对应的多个提示信息中存在相检测所述相同的代码标识对应的代码信息是否为在所述代码库中创建倒排索引;所述倒排索引包括所述代所述根据所述第一行数代码和代码库中的代码进行相似度匹配,基于所述第一行数代码的代码特征,从所述倒排索引中获取所述所述至少一个计算设备的处理器用于执行所述至少一个计算设备的存储器中存储的4所述指令在由计算设备集群执行时,使得所述计算设备集群实施权利要求1_7任意一项所5些开源代码中,有些许可证对商业使用并不友好,例如,使用通用公共许可证(general6特征,从倒排索引中获取第一行数代码的代码特征相同的代码特征的至少一个代码标识,由于倒排索引记载代码特征和代码标识间的关联关系,所以该方法利用代码特征进行匹合规的代码片段是指与代码库中的代码相同的代码的行数大于或等于设定行数的代码片7合规的代码片段是指与代码库中的代码相同的代码的行数大于或等于设定行数的代码片89每个token的时间延迟大约在20_50毫秒(ms这个时间包括了模型计算和生成下一个出完整代码片段后才能执行扫描,并在几百毫秒后告知用户是否存在许可证风险。例如,[0043]类似于GitHubCopilot的方法在识别大模型生成代码的请求模块110可以对不具有合规性的代码进行渲染,如将不具有合规性的代码以红色字体[0048]代码管理模块120是指部署在云管理平台的一个服务,用于在接收到代码生成和[0049]代码管理模块120可以接收代码生成模型130生成的新代码。在接收代码的过程理模块120在生成一行代码预设的设定时间内没有得到合规的该行代码后,可以将最后一[0055]代码库150可以包括开源代码库和许可证库,开源数据库用于存储大量的开源代[0056]代码匹配模块140在接收到的一行代码时,可以对接收到的一行代码进行特征分代码库150中的倒排索引中查找相同代码特征的至少[0057]如果代码匹配模块140匹配出有与当前行代码相同代码特征的至少一个代码标[0058]代码匹配模块140可以自定义代码片段是否为不合规的规则,如代码片段中至少第N行代码并生成第N行代码的提示信息后,可以将第N行代码的提示信息与保存的代码标[0063]代码匹配模块140可以检测代码信息是否为合规的代码信息,如许可证是否为合[0064]下面通过流程图的方式,来介绍代码匹配模块140实现本申请保护的技术方案实[0068]代码匹配模块140可以将第n行代码与代码库150中的开源代码进行相似度匹配,库150还预先存储有文件索引。文件索引可以将文件标识与一行代码的所属的开源软件的[0070]代码匹配模块140在接收到的第n行代码时,可以对接收到的第n行代码进行特征代码库150中的倒排索引中查找相同代码特征的[0071]如果代码匹配模块140匹配出有与第n行代码相同代码特征的至少一个代码标以生成表明第n行代码没有相同或相似的代代码匹配模块140可以将相同的代码标识存储在代码缓存16[0081]待代码匹配模块140得到N_1行的对比信息后,可以将第n行代码的提示信息与保[0086]代码匹配模块140可以检测代码信息是否为合规的代码信息,如许可证是否为合将N_1行原始代码对代码库150中的代码进行相似度匹配,以得到N_1行原始代码的提示信N_1行原始代码的对比信息进行比对,判断N行代码的提示信息中是否存在相同的代码标将一行代码的提示信息与另一行代码的提示信息进行对比的时间为t3。代码匹配模块140[0092]由于M行代码已经生成,所以代码匹配模块检测到M行代码中有一个或几个N行代第N行代码的合规性进行检测的时间T3=t1+[0095]如果代码管理模块120接收到的匹配结果表示当前行代码为不合规代码,可以指[0096]下面通过流程图的方式,来介绍代码匹配模块140实现本申请保护的技术方案实[0097]图4为本申请实施例中提供的代码生成系统生成代码的过全的请求,并向代码管理模块120发送的代码生成请求。代码生成请求用于请求后端服务合规性进行检测的过程可以参考图2和图2描述[0106]步骤S407,代码管理模块120根据匹配结果,判断生成的一行代码是否为合规代会接收到代码生成模型130发送到下一行代码,然后再次执行步骤S405_S408、或者步骤码发送至代码匹配模块140。代码匹配模块140对接收到的一行代码进行合规性检测的同当前行代码为不合规代码,可以指示代码生成模型130重新生成合规的当前行代码和其他生成服务时,可以通过云管理平台500提供的配置界面、应用程序接口(application[0122]另外,代码生成系统100中的模块也可以一部分配置在云侧,另一部分配置在端块620用于当获取到代码生成模型生成的第一行数代码时,将第一行数代码和代码库中的三处理模块630用于当第一行数代码的提示信息与第二行数代码对应的多个提示信息中不[0124]在一种实施方式中,第三处理模块630还用于当第一行数代码的提示信息与第二[0125]在一种实施方式中,第三处理模块630还用于当相同的代码标识对应的代码信息[0126]在一种实施方式中,第二处理模块620在当获取到代码生成模型生成的第一行数合规的代码片段是指与代码库中的代码相同的代码的行数大于或等于设定行数的代码片三处理模块630还用于获取代码文件中的设定位置的第三行数代码,设定位置为代码生成[0129]在一种实施方式中,第一处理模块610在当获取到代码生成模型生成的第一行数[0131]模块作为软件功能单元的一种举例,第一处理模块610可以包括运行在计算实例[0132]同样,用于运行该代码的多个主机/虚拟机/容器可以分布在同一个虚拟私有云[0133]模块作为硬件功能单元的一种举例,第一处理模块610可以包括至少一个计算设备,如服务器等。或者,第一处理模块610也可以是利用专用集成电路(application_device,PLD)实现的设备等。其中,上述PLD可以是复杂程序逻辑器件(complex[0134]第一处理模块610包括的多个计算设备可以分布在相同的region中,也可以分布处理模块620、以及第三处理模块630分别实现如图2所示的方法中不同的步骤来实现装置[0138]处理器720可以中央处理器(centralprocessingunit,CPU)、图形处理器[0139]存储器730可以包括易失性存储器(volatilememory),例如随机存取存储器(randomaccessmemory,RAM)。存储器730还可以包括非易失性存储器(non_volatile多个计算设备700中的存储器730中可以存有相同的用于执[0145]在一些可能的实现方式中,该计算设备集群中的一个或多个计算设备700的存储设备700的组合可以共同执行用于执行如图2所示的中的存储器730中存有执行上述第一处理模块610和第二处理模块620中的部分模块的功能[0148]图9所示的计算设备集群之间的连接方式可以是考虑到本申请提供的如图2所示处理模块630中的另外一部分模块实现的功能交由计算设备70群中的一个或多个计算设备700中的存储器730中可以存有相同的用于执行如图2所示的方[0151]在一些可能的实现方式中,该计算设备集群中的一个或多个计算设备700的存储设备700的组合可以共同执行用于执行如图2所示的储的指令可以实现上述第一处理模块610、第二处理模块620和第三处理模块630中的一个算机程序产品在至少一个计算设备上运行时,使得至少一个计算设备执行如图2所

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论