本公開涉及人工智能領(lǐng)域,尤其涉及一種代碼的生成方法及裝置、電子設(shè)備和存儲介質(zhì)。
背景技術(shù):
1、在軟件開發(fā)中,流程化引擎是一種軟件設(shè)計(jì)框架,可以將一個軟件拆分成多個獨(dú)立的代碼模塊,并定義不同代碼模塊之間的執(zhí)行順序,使得軟件開發(fā)過程更加模塊化,提高了軟件開發(fā)的效率。
2、在代碼的生成相關(guān)技術(shù)中,代碼的生成方法是通過人工來選擇需要使用的代碼模塊,并建立不同代碼模塊之間的執(zhí)行順序,導(dǎo)致代碼的生成效率較低。
技術(shù)實(shí)現(xiàn)思路
1、本公開提供了一種代碼的生成方法及裝置、電子設(shè)備和存儲介質(zhì)。其主要目的在于解決代碼的生成效率較低的問題。
2、根據(jù)本公開的第一方面,提供了一種代碼的生成方法,其中,包括:
3、獲取第一代碼需求文本;
4、將所述第一代碼需求文本輸入預(yù)設(shè)文本擴(kuò)展模型,得到第二代碼需求文本;
5、將所述第二代碼需求文本輸入預(yù)設(shè)代碼生成模型,得到所述第二代碼需求文本對應(yīng)的代碼文件,其中,所述代碼文件包括至少一個代碼模塊及不同代碼模塊之間的執(zhí)行順序。
6、可選的,在將所述第一代碼需求文本輸入預(yù)設(shè)文本擴(kuò)展模型,得到第二代碼需求文本之前,所述方法還包括:
7、獲取訓(xùn)練用代碼需求文本集;
8、利用所述訓(xùn)練用代碼需求文本集對初始文本擴(kuò)展模型進(jìn)行訓(xùn)練,得到所述預(yù)設(shè)文本擴(kuò)展模型;
9、在將所述第二代碼需求文本輸入預(yù)設(shè)代碼生成模型,得到所述第二代碼需求文本對應(yīng)的代碼文件之前,所述方法還包括:
10、獲取訓(xùn)練用代碼集;所述訓(xùn)練用代碼集包括第一訓(xùn)練用代碼模塊及對應(yīng)的第一代碼說明文本;
11、利用所述第一訓(xùn)練用代碼模塊及所述代碼說明文本對初始代碼生成模型進(jìn)行訓(xùn)練,得到所述預(yù)設(shè)代碼生成模型。
12、可選的,所述獲取訓(xùn)練用代碼集包括:
13、獲取第二訓(xùn)練用代碼模塊,并提取所述第二訓(xùn)練用代碼模塊中的第二代碼說明文本;
14、遍歷所述第二訓(xùn)練用代碼模塊中的變量信息、連接信息、輸入節(jié)點(diǎn)信息、輸出節(jié)點(diǎn)信息;
15、對所述第二訓(xùn)練用代碼模塊中的所述變量信息、連接信息、輸入節(jié)點(diǎn)信息、輸出節(jié)點(diǎn)信息進(jìn)行掩碼處理,得到所述第一訓(xùn)練用代碼模塊;
16、將所述第二代碼說明文本作為所述第一代碼說明文本,并將所述第一訓(xùn)練用代碼模塊及所述第一代碼說明文本存儲于所述訓(xùn)練用代碼集中。
17、可選的,所述獲取第一代碼需求文本包括:
18、獲取用戶輸入的第三代碼需求文本;
19、對所述第三代碼需求文本進(jìn)行屬性分析,得到屬性信息,并將所述屬性信息添加至所述第三代碼需求文本中;
20、在添加后的第三代碼需求文本中刪除與代碼需求無關(guān)的文本,得到刪除后的第三代碼需求文本;
21、將所述刪除后的第三代碼需求文本作為所述第一代碼需求文本。
22、可選的,所述在所述添加后的第三代碼需求文本中刪除與代碼需求無關(guān)的文本,得到刪除后的第三代碼需求文本包括:
23、將所述添加后的第三代碼需求文本中的每個第一文本分別與預(yù)先建立的代碼需求無關(guān)文本庫中的第二文本進(jìn)行對比;
24、若所述第一文本與所述第二文本相同,則在所述添加后的第三代碼需求文本中刪除所述第一文本,得到所述刪除后的第三代碼需求文本。
25、可選的,所述將所述第一代碼需求文本輸入預(yù)設(shè)文本擴(kuò)展模型,得到第二代碼需求文本包括:
26、將所述第一代碼需求文本輸入所述預(yù)設(shè)文本擴(kuò)展模型,得到至少兩個第四代碼需求文本;
27、響應(yīng)于對目標(biāo)第四代碼需求文本的選擇指令,在所述至少兩個第四代碼需求文本中選擇所述目標(biāo)第四代碼需求文本;
28、將所述目標(biāo)第四代碼需求文本作為所述第二代碼需求文本。
29、根據(jù)本公開的第二方面,提供了一種代碼的生成裝置,包括:
30、第一獲取單元,用于獲取第一代碼需求文本;
31、第一輸入單元,用于將所述第一代碼需求文本輸入預(yù)設(shè)文本擴(kuò)展模型,得到第二代碼需求文本;
32、第二輸入單元,用于將所述第二代碼需求文本輸入預(yù)設(shè)代碼生成模型,得到所述第二代碼需求文本對應(yīng)的代碼文件,其中,所述代碼文件包括至少一個代碼模塊及不同代碼模塊之間的執(zhí)行順序。
33、可選的,所述裝置還包括:
34、第二獲取單元,用于在將所述第一代碼需求文本輸入預(yù)設(shè)文本擴(kuò)展模型,得到第二代碼需求文本之前,獲取訓(xùn)練用代碼需求文本集;
35、第一訓(xùn)練單元,用于利用所述訓(xùn)練用代碼需求文本集對初始文本擴(kuò)展模型進(jìn)行訓(xùn)練,得到所述預(yù)設(shè)文本擴(kuò)展模型;
36、第三獲取單元,用于在將所述第二代碼需求文本輸入預(yù)設(shè)代碼生成模型,得到所述第二代碼需求文本對應(yīng)的代碼文件之前,獲取訓(xùn)練用代碼集;所述訓(xùn)練用代碼集包括第一訓(xùn)練用代碼模塊及對應(yīng)的第一代碼說明文本;
37、第二訓(xùn)練單元,用于利用所述第一訓(xùn)練用代碼模塊及所述代碼說明文本對初始代碼生成模型進(jìn)行訓(xùn)練,得到所述預(yù)設(shè)代碼生成模型。
38、可選的,所述第三獲取單元包括:
39、提取模塊,用于獲取第二訓(xùn)練用代碼模塊,并提取所述第二訓(xùn)練用代碼模塊中的第二代碼說明文本;
40、遍歷模塊,用于遍歷所述第二訓(xùn)練用代碼模塊中的變量信息、連接信息、輸入節(jié)點(diǎn)信息、輸出節(jié)點(diǎn)信息;
41、處理模塊,用于對所述第二訓(xùn)練用代碼模塊中的所述變量信息、連接信息、輸入節(jié)點(diǎn)信息、輸出節(jié)點(diǎn)信息進(jìn)行掩碼處理,得到所述第一訓(xùn)練用代碼模塊;
42、存儲模塊,用于將所述第二代碼說明文本作為所述第一代碼說明文本,并將所述第一訓(xùn)練用代碼模塊及所述第一代碼說明文本存儲于所述訓(xùn)練用代碼集中。
43、可選的,所述第一獲取單元包括:
44、獲取模塊,用于獲取用戶輸入的第三代碼需求文本;
45、添加模塊,用于對所述第三代碼需求文本進(jìn)行屬性分析,得到屬性信息,并將所述屬性信息添加至所述第三代碼需求文本中;
46、刪除模塊,用于在添加后的第三代碼需求文本中刪除與代碼需求無關(guān)的文本,得到刪除后的第三代碼需求文本;
47、第一作為模塊,用于將所述刪除后的第三代碼需求文本作為所述第一代碼需求文本。
48、可選的,所述刪除模塊還用于,
49、將所述添加后的第三代碼需求文本中的每個第一文本分別與預(yù)先建立的代碼需求無關(guān)文本庫中的第二文本進(jìn)行對比;
50、當(dāng)所述第一文本與所述第二文本相同時,在所述添加后的第三代碼需求文本中刪除所述第一文本,得到所述刪除后的第三代碼需求文本。
51、可選的,所述第一輸入單元包括:
52、輸入模塊,用于將所述第一代碼需求文本輸入所述預(yù)設(shè)文本擴(kuò)展模型,得到至少兩個第四代碼需求文本;
53、選擇模塊,用于響應(yīng)于對目標(biāo)第四代碼需求文本的選擇指令,在所述至少兩個第四代碼需求文本中選擇所述目標(biāo)第四代碼需求文本;
54、第二作為模塊,用于將所述目標(biāo)第四代碼需求文本作為所述第二代碼需求文本。
55、根據(jù)本公開的第三方面,提供了一種電子設(shè)備,包括:
56、至少一個處理器;以及
57、與所述至少一個處理器通信連接的存儲器;其中,
58、所述存儲器存儲有可被所述至少一個處理器執(zhí)行的指令,所述指令被所述至少一個處理器執(zhí)行,以使所述至少一個處理器能夠執(zhí)行前述第一方面所述的方法。
59、根據(jù)本公開的第四方面,提供了一種存儲有計(jì)算機(jī)指令的非瞬時計(jì)算機(jī)可讀存儲介質(zhì),其中,所述計(jì)算機(jī)指令用于使所述計(jì)算機(jī)執(zhí)行前述第一方面所述的方法。
60、根據(jù)本公開的第五方面,提供了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序在被處理器執(zhí)行時實(shí)現(xiàn)如前述第一方面所述的方法。
61、本公開提供的代碼的生成方法及裝置、電子設(shè)備和存儲介質(zhì),獲取第一代碼需求文本;將所述第一代碼需求文本輸入預(yù)設(shè)文本擴(kuò)展模型,得到第二代碼需求文本;將所述第二代碼需求文本輸入預(yù)設(shè)代碼生成模型,得到所述第二代碼需求文本對應(yīng)的代碼文件,其中,所述代碼文件包括至少一個代碼模塊及不同代碼模塊之間的執(zhí)行順序。與相關(guān)技術(shù)相比,本公開實(shí)施例通過獲取第一代碼需求文本,并將第一代碼需求文本輸入預(yù)設(shè)文本擴(kuò)展模型,得到第二代碼需求文本,將所述第二代碼需求文本輸入預(yù)設(shè)代碼生成模型,得到所述第二代碼需求文本對應(yīng)的代碼文件,所述代碼文件包括至少一個代碼模塊及不同代碼模塊之間的執(zhí)行順序,實(shí)現(xiàn)了根據(jù)第一代碼需求文本,自動生成代碼,提高了代碼的生成效率。
62、應(yīng)當(dāng)理解,本部分所描述的內(nèi)容并非旨在標(biāo)識本技術(shù)的實(shí)施例的關(guān)鍵或重要特征,也不用于限制本技術(shù)的范圍。本技術(shù)的其它特征將通過以下的說明書而變得容易理解。