一种私域数据的生成方法、装置、设备和存储介质与流程

文档序号:36428404发布日期:2023-12-21 00:21阅读:23来源:国知局
一种私域数据的生成方法与流程

本发明涉及计算机领域,尤其是涉及一种私域数据的生成方法、装置、设备和存储介质。


背景技术:

1、openai开发了一种聊天机器人chatgpt,包括gpt4,gpt3.5,统称为chatgpt,当其主要应用在企业的私有代码生成方面时会遇到两个主要问题,导致其无法落地,具体体现在如下两个方面:

2、一方面,chatgpt作为闭源模型无法进行本地部署。企业如果想要使用chatgpt必须将用户数据(如私有代码/信息)交给chatgpt的运营商(例如openai或者微软)。这些数据因此可能泄密,例如有可能被openai/微软用来继续训练chatgpt或者其他模型,而攻击者可以通过被训练的模型获取企业的私有信息。

3、另一方面,chatgpt使用公域数据(如开源代码)进行训练,缺少企业私域相关的知识,导致在私域特有的任务上表现不好。例如代码生成任务上,chatgpt由于不知道私域相关api定义/业务逻辑等信息,无法正确生成代码。

4、针对代码生成领域,目前一种做法是,如图1所示,根据私域api数据源在其包含的基础数据集上通过chatgpt(特别是gpt4)进行不断演化,构造出大量的高质量sft(supervised fine tuning,有监督微调)数据集,这种方法对于需要保密的私域代码来存在弊端,因为将这些私域代码信息存储时存在泄露的风险,容易被截获和盗用。此外,chatgpt缺少私域知识,无法做广度扩展,即无法组合多个私有领域组合扩展。


技术实现思路

1、有鉴于此,本发明提供了一种私域数据的生成方法、装置和设备,用以提高私域代码安全性,且同时增加私域数据源的广度。

2、第一方面,本发明提供了一种私域数据的生成方法,该方法包括:

3、获取应用程序编程接口api数据源,api数据源中包括私域的api数据以及用于描述api数据的数据结构;

4、根据私域的api数据组合出若干条目,以及根据若干条目和数据结构,得到至少一个第一qa对;

5、按照预设规则,对至少一个第一qa对进行模糊化处理,得到至少一个第二qa对和映射关系表,所述映射关系表用于描述模糊化处理前后第一qa对与第二qa对之间的对应关系;

6、对至少一个第二qa对进行深化拓展,得到至少一个第三qa对;

7、根据映射关系表,对所述至少一个第三qa对进行清晰化处理,得到至少一个第四qa对,第四qa对为符合私域api的有监督微调sft数据集;

8、将所述至少一个第四qa对作为符合私域api的有监督微调sft数据集传输至训练模型,以使训练模型利用sft数据集训练出大语言模型。

9、结合第一方面,在一种可能的实施方式中,私域的api数据包括:第一api基础数据和第二api基础数据,第一api基础数据对应第一api集合,第二api基础数据对应第二api集合,每个api集合中包含一个或多个api子集;

10、根据所述私域的api数据组合出若干条目,具体包括:将从第一api集合中选择出的一个或多个的api子集,与,从第二api集合中选择出的一个或多个的api子集进行组合,生成一个条目,该条目具有被选出的所有api子集的功能。

11、结合第一方面,在另一种可能的实施方式中,根据若干条目和数据结构,生成至少一个第一qa对,具体包括:将所述组合生成的条目填充至预设模板中,生成第一指令;将所述第一指令输入至ai算法模型中,输出第一qa对。

12、结合第一方面,在又一种可能的实施方式中,按照预设规则,对至少一个第一qa对进行模糊化处理,得到至少一个第二qa对,具体包括:获取每个第一qa对所对应的代码;改变每个第一qa对的代码所在的条件空间、或者改变代码的函数风格、或者改变代码的函数参数,得到至少一个第二qa对。

13、结合第一方面,在又一种可能的实施方式中,改变每个第一qa对的代码所在的条件空间,包括:利用本地大语言模型llm将第一qa对的代码所在的条件空间变换为与当前领域不同的领域。

14、改变代码的函数风格,包括:将代码的函数命名风格改变。

15、改变代码的函数参数,包括:在函数参数中随机添加至少一个无实质作用的参数,和/或,改变函数参数之间的顺序。

16、结合第一方面,在又一种可能的实施方式中,根据映射关系表对至少一个第三qa对进行清晰化处理,得到至少一个第四qa对,包括:利用映射关系表,对至少一个第三qa对做逆向变换,得到至少一个第四qa对,并将至少一个第四qa对作为sft数据集。

17、第二方面,本发明提供了一种私域数据的生成装置,所述装置包括:

18、获取模块,用于获取应用程序编程接口api数据源,api数据源中包括私域的api数据以及用于描述所述api数据的数据结构;

19、混合模块,用于根据私域的api数据组合出若干条目,并根据所述若干条目和所述数据结构,得到至少一个第一qa对,其中,每个第一qa对包括问题和答案;

20、模糊化模块,用于按照预设规则,对所述至少一个第一qa对进行模糊化处理,得到至少一个第二qa对和映射关系表,所述映射关系表用于描述模糊化处理前后第一qa对与第二qa对之间的关系;

21、拓展模块,用于对所述至少一个第二qa对进行深化拓展,生成至少一个第三qa对;

22、清晰化模块,用于根据所述映射关系表,对至少一个第三qa对进行清晰化处理,得到至少一个第四qa对,第四qa对为符合私域api的有监督微调sft数据集;

23、输出模块,用于将至少一个第四qa对作为符合私域api的有监督微调sft的数据集传输至训练模型,以使所述训练模型利用所述sft的数据集训练出大语言模型。

24、结合第二方面,在一种可能的实施方式中,私域的api数据包括:第一api基础数据和第二api基础数据,第一api基础数据对应第一api集合,第二api基础数据对应第二api集合,每个api集合中包含一个或多个api子集;

25、模糊化模块,具体用于将从第一api集合中选择出的一个或多个的api子集,与,从第二api集合中选择出的一个或多个的api子集进行组合,生成一个条目,条目具有被选出的所有api子集的功能。

26、结合第二方面,在另一种可能的实施方式中,模糊化模块,具体用于将组合生成的条目填充至预设模板中,生成第一指令,以及将第一指令输入至ai算法模型中,输出第一qa对。

27、结合第二方面,在又一种可能的实施方式中,模糊化模块,具体用于获取每个第一qa对所对应的代码;改变每个第一qa对的代码所在的条件空间、或者改变代码的函数风格、或者改变代码的函数参数,生成至少一个第二qa对。

28、结合第二方面,在又一种可能的实施方式中,模糊化模块,具体用于利用本地大语言模型llm将第一qa对的代码所在的条件空间变换为与当前领域不同的领域;将代码的函数命名风格改变;以及在函数参数中随机添加至少一个无实质作用的参数,和/或,改变函数参数之间的顺序。

29、结合第二方面,在又一种可能的实施方式中,清晰化模块,具体用于利用映射关系,对至少一个第三qa对做逆向变换,得到至少一个第四qa对,并将至少一个第四qa对作为sft数据集。

30、第三方面,本发明提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的私域数据的生成方法。

31、第四方面,本发明提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,计算机指令用于使计算机执行上述第一方面或其对应的任一实施方式的私域数据的生成方法。

32、本发明提供的方法、装置和设备,通过对私域的api数据进行组合,生成若干条目,以此增加了chatgpt私域数据源的广度,对私域的基础数据进行广度上扩展,得到高质量的私域数据集。并且,通过对生成的至少一个qa对进行模糊化处理,增加每个qa对的复杂度和多样性,防止私域api数据在演化过程中被窃取和信息泄露,本方法提高了私域代码的安全性,以及在构建阶段将模糊化的qa对清晰化处理,生成符合私域api的sft数据集,为后续模型训练提供依据。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1