目标代码确定方法、代码补全方法、计算机程序产品与流程
- 国知局
- 2024-09-05 14:25:14
本说明书实施例涉及计算机,特别涉及目标代码确定方法、代码补全方法、计算机程序产品。
背景技术:
1、在当今的代码生成工具中,尽管大模型的崛起极大地推动了自动编码技术的发展,但计算资源的局限性依然制约着大模型上下文处理能力的边界。对于代码生成质量而言,上下文内容的相关度至关重要,如引入不合时宜或缺乏关联性的内容至提示(prompt)中,不仅会削弱生成代码的精确度,还可能削弱用户对代码补全插件的信任。
2、在多文件编码的复杂场景下,用户正在编写的代码与先前编辑或浏览的文件间往往存在某种程度的逻辑联系;然而本地计算资源的有限性和对即时反馈的高度需求之间存在冲突,往往确定出的相似代码片段准确率较低,因此亟需一种目标代码确定方法,能够迅速准确的锚定与用户正在编写的代码、相似的相似代码段。
技术实现思路
1、有鉴于此,本说明书实施例提供了一种目标代码确定方法。本说明书一个或者多个实施例同时涉及一种目标代码确定装置,一种代码补全方法,一种计算设备,一种计算机可读存储介质以及一种计算机程序产品,以解决现有技术中存在的、在搜索相似代码片段时,搜索出的相似代码片段准确率低的技术缺陷。
2、根据本说明书实施例的第一方面,提供了一种目标代码确定方法,包括:
3、确定目标处理代码以及、与所述目标处理代码关联的目标关联代码;
4、利用预设滑动窗口以及预设滑动步长,对所述目标处理代码进行窗口滑动,获得多个子处理代码,以及对所述目标关联代码进行窗口滑动,获得多个子关联代码;
5、将各子处理代码与各子关联代码进行相似度计算,获得所述各子处理代码与所述各子关联代码之间的相似结果;
6、根据所述相似结果,从所述多个子处理代码以及所述多个子关联代码中,确定目标子处理代码与目标子关联代码。
7、根据本说明书实施例的第二方面,提供了一种目标代码确定装置,包括:
8、第一确定模块,被配置为确定目标处理代码以及、与所述目标处理代码关联的目标关联代码;
9、代码获得模块,被配置为利用预设滑动窗口以及预设滑动步长,对所述目标处理代码进行窗口滑动,获得多个子处理代码,以及对所述目标关联代码进行窗口滑动,获得多个子关联代码;
10、结果获得模块,被配置为将各子处理代码与各子关联代码进行相似度计算,获得所述各子处理代码与所述各子关联代码之间的相似结果;
11、第二确定模块,被配置为根据所述相似结果,从所述多个子处理代码以及所述多个子关联代码中,确定目标子处理代码与目标子关联代码。
12、根据本说明书实施例的第三方面,提供了一种代码补全方法,包括:
13、接收客户端发送的代码补全请求,根据所述代码补全请求确定目标处理代码,其中,所述代码补全请求通过用户在所述客户端的用户交互界面进行的交互操作触发;
14、根据所述目标处理代码确定目标子关联代码,其中,所述目标子关联代码通过上述目标代码确定方法确定;
15、将所述目标处理代码以及所述目标子关联代码输入代码补全模型,利用所述代码补全模型获得补全代码,并将所述补全代码返回至所述客户端,以使所述客户端在所述用户交互界面向所述用户展示所述补全代码。
16、根据本说明书实施例的第四方面,提供了一种代码补全装置,包括:
17、接收模块,被配置为接收客户端发送的代码补全请求,根据所述代码补全请求确定目标处理代码,其中,所述代码补全请求通过用户在所述客户端的用户交互界面进行的交互操作触发;
18、确定模块,被配置为根据所述目标处理代码确定目标子关联代码,其中,所述目标子关联代码通过上述目标代码确定方法确定;
19、获得模块,被配置为将所述目标处理代码以及所述目标子关联代码输入代码补全模型,利用所述代码补全模型获得补全代码,并将所述补全代码返回至所述客户端,以使所述客户端在所述用户交互界面向所述用户展示所述补全代码。
20、根据本说明书实施例的第五方面,提供了一种计算设备,包括:
21、存储器和处理器;
22、所述存储器用于存储计算机程序/指令,所述处理器用于执行所述计算机程序/指令,该计算机程序/指令被处理器执行时实现上述目标代码确定方法、代码补全方法的步骤。
23、根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机程序/指令,该计算机程序/指令被处理器执行时实现上述目标代码确定方法、代码补全方法的步骤。
24、根据本说明书实施例的第七方面,提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述目标代码确定方法、代码补全方法的步骤。
25、本说明书一个实施例提供的目标代码确定方法,通过确定目标处理代码以及与目标处理代码关联的目标关联代码,能够引入与目标处理代码关联的、能够提供全局代码上下文视图的目标关联代码,并通过窗口滑动的方式,针对目标处理代码获得其对应的多个子处理代码,针对目标关联代码获得其对应的多个子关联代码,从而在计算各子处理代码与各子关联代码之间的相似度的情况下,能够获得代码间更全面的相似结果,且基于相似结果,能够获得更精准的目标子处理代码与目标子关联代码,从而提高代码检索的准确度以及效率。
技术特征:1.一种目标代码确定方法,包括:
2.根据权利要求1所述的目标代码确定方法,所述确定目标处理代码以及、与所述目标处理代码关联的目标关联代码之后,还包括:
3.根据权利要求2所述的目标代码确定方法,所述利用预设滑动窗口以及预设滑动步长,对所述目标处理代码进行窗口滑动,获得多个子处理代码,以及对所述目标关联代码进行窗口滑动,获得多个子关联代码,包括:
4.根据权利要求3所述的目标代码确定方法,利用所述第一预设滑动窗口,从所述目标处理代码分词序列的起始位置,根据所述预设滑动步长开始窗口滑动,直至滑动到所述目标处理代码分词序列的末尾位置结束窗口滑动,包括:
5.根据权利要求3所述的目标代码确定方法,所述将各子处理代码与各子关联代码进行相似度计算,获得所述各子处理代码与所述各子关联代码之间的相似结果,包括:
6.根据权利要求3所述的目标代码确定方法,所述将各子处理代码与各子关联代码进行相似度计算,获得所述各子处理代码与所述各子关联代码之间的相似结果,包括:
7.根据权利要求6所述的目标代码确定方法,所述第二目标子处理代码分词序列为n个,所述多个子关联代码分词序列为m个,且n和m均为正整数;
8.根据权利要求5-7任意一项的目标代码确定方法,所述根据所述相似结果,从所述多个子处理代码以及所述多个子关联代码中,确定目标子处理代码与目标子关联代码,包括:
9.一种代码补全方法,包括:
10.一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现权利要求1至9任意一项所述方法的步骤。
技术总结本说明书实施例提供目标代码确定方法、代码补全方法、计算机程序产品,其中目标代码确定方法包括:确定目标处理代码以及、与目标处理代码关联的目标关联代码;利用预设滑动窗口以及预设滑动步长,对目标处理代码进行窗口滑动,获得多个子处理代码,以及对所述目标关联代码进行窗口滑动,获得多个子关联代码;将各子处理代码与各子关联代码进行相似度计算,获得所述各子处理代码与所述各子关联代码之间的相似结果;根据所述相似结果,从所述多个子处理代码以及所述多个子关联代码中,确定目标子处理代码与目标子关联代码;获得代码间更全面的相似结果,从而能够获得更精准的目标子处理代码与目标子关联代码,从而提高代码检索的准确度以及效率。技术研发人员:力晶鑫,向邦宇受保护的技术使用者:阿里巴巴(中国)有限公司技术研发日:技术公布日:2024/9/2本文地址:https://www.jishuxx.com/zhuanli/20240905/286367.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。