System.ArgumentOutOfRangeException: 索引和長(zhǎng)度必須引用該字符串內(nèi)的位置。 參數(shù)名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術(shù)實(shí)現(xiàn)步驟摘要】
本申請(qǐng)涉及計(jì)算機(jī)軟件,尤其涉及一種軟件代碼生成方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)。
技術(shù)介紹
1、目前,在對(duì)軟件進(jìn)行開發(fā)時(shí),為了降低工作量,提高軟件開發(fā)效率,并生成高質(zhì)量的代碼程序,開發(fā)人員一般通過低代碼生成裝置生成待開發(fā)軟件的源代碼。
2、現(xiàn)有技術(shù)中,用戶在使用低代碼平臺(tái)進(jìn)行軟件開發(fā)時(shí),一般通過視圖拖拽的方式將所需的功能組件拖到對(duì)應(yīng)的界面,低代碼平臺(tái)根據(jù)用戶拖拽的功能組件生成對(duì)應(yīng)的前端需求代碼。
3、然而,這種方式需要用戶熟悉平臺(tái)所支持的功能組件、每個(gè)功能組件的配置項(xiàng)屬性以及功能組件的使用規(guī)則等信息,這就導(dǎo)致用戶需要付出一定的學(xué)習(xí)和應(yīng)用成本用來熟悉低代碼平臺(tái),尤其待開發(fā)的軟件需要大量的功能需求時(shí),對(duì)于用戶來說則需要付出大量學(xué)習(xí)和應(yīng)用成本,這不僅提高了工作量,降低了軟件開發(fā)效率,而且影響用戶體驗(yàn)。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)?zhí)峁┝艘环N軟件代碼生成方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì),以解決現(xiàn)有技術(shù)中用戶在進(jìn)行軟件開發(fā)時(shí),需要付出大量學(xué)習(xí)和應(yīng)用成本,這不僅提高了工作量,降低了軟件開發(fā)效率,而且影響用戶體驗(yàn)的技術(shù)問題。
2、第一方面,本申請(qǐng)?zhí)峁┝艘环N軟件代碼生成方法,所述方法包括:
3、接收用戶輸入的功能需求語言;
4、利用預(yù)先訓(xùn)練的大語言模型,對(duì)所述功能需求語言進(jìn)行解析,生成對(duì)應(yīng)的前端需求代碼;
5、對(duì)所述前端需求代碼進(jìn)行解析,生成目標(biāo)語法樹;
6、基于所述目標(biāo)語法樹,生成可編譯執(zhí)行的目標(biāo)軟件代碼。
8、將所述功能需求語言輸入預(yù)先訓(xùn)練的所述大語言模型,獲取所述大語言模型輸出的提示信息;
9、輸出所述提示信息;
10、接收用戶針對(duì)所述提示信息輸入的應(yīng)答語言;
11、將所述應(yīng)答語言輸入所述大語言模型,得到所述大語言模型輸出的前端需求代碼。
12、作為一個(gè)可能的實(shí)現(xiàn)方式,所述大語言模型通過以下方式生成所述提示信息:
13、接收所述功能需求語言;
14、對(duì)所述功能需求語言進(jìn)行識(shí)別,得到所述功能需求語言對(duì)應(yīng)的目標(biāo)功能需求;
15、根據(jù)所述目標(biāo)功能需求,從預(yù)設(shè)的組件庫中確定初始功能組件;
16、根據(jù)所述初始功能組件生成與所述初始功能組件對(duì)應(yīng)的提示信息。
17、作為一個(gè)可能的實(shí)現(xiàn)方式,所述大語言模型通過以下方式生成所述前端需求代碼:
18、接收用戶的應(yīng)答語言;
19、對(duì)所述應(yīng)答語言進(jìn)行識(shí)別,得到所述應(yīng)答語言對(duì)應(yīng)的應(yīng)答功能需求;
20、根據(jù)所述應(yīng)答功能需求,從所述初始功能組件中確定所述應(yīng)答功能需求對(duì)應(yīng)的目標(biāo)功能組件以及所述目標(biāo)功能組件對(duì)應(yīng)的目標(biāo)屬性;
21、生成所述目標(biāo)功能組件和所述目標(biāo)屬性對(duì)應(yīng)的前端需求代碼。
22、作為一個(gè)可能的實(shí)現(xiàn)方式,在所述生成對(duì)應(yīng)的前端需求代碼之后,在所述對(duì)所述前端需求代碼進(jìn)行解析,生成目標(biāo)語法樹之前,還包括:
23、基于所述前端需求代碼,通過可視化界面展示所述前端需求代碼對(duì)應(yīng)的功能組件;
24、在檢測(cè)到用戶針對(duì)所述功能組件的確認(rèn)操作的情況下,執(zhí)行所述對(duì)所述前端需求代碼進(jìn)行解析,生成目標(biāo)語法樹的步驟。
25、作為一個(gè)可能的實(shí)現(xiàn)方式,所述基于所述目標(biāo)語法樹,生成可編譯執(zhí)行的目標(biāo)軟件代碼,包括:
26、根據(jù)所述目標(biāo)語法樹,生成所述目標(biāo)軟件代碼的前端源代碼;
27、獲取與所述前端源代碼對(duì)應(yīng)的功能代碼;
28、將所述前端源代碼與所述功能代碼進(jìn)行合并,得到可編譯執(zhí)行的目標(biāo)軟件代碼。
29、作為一個(gè)可能的實(shí)現(xiàn)方式,所述大語言模型通過以下方式訓(xùn)練得到:
30、獲取用戶不同功能需求的語言樣本,以及所述語言樣本對(duì)應(yīng)的標(biāo)準(zhǔn)前端需求代碼,所述語言樣本包括功能需求語言樣本和應(yīng)答語言樣本;
31、針對(duì)每一所述語言樣本,將所述語言樣本包括的功能需求語言樣本輸入預(yù)設(shè)的初始大語言模型,得到所述初始大語言模型輸出的初始提示信息;其中,所述初始大語言模型包括預(yù)設(shè)的組件庫,所述組件庫包括多個(gè)功能組件,每個(gè)所述功能組件存在對(duì)應(yīng)的功能屬性;
32、將所述語言樣本包括的應(yīng)答語言樣本輸入所述初始大語言模型,得到所述初始大語言模型輸出的初始前端需求代碼;
33、確定所述標(biāo)準(zhǔn)前端需求代碼和所述初始前端需求代碼之間的損失值;
34、在所述損失值小于預(yù)設(shè)的損失值閾值的情況下,得到所述大語言模型。
35、第二方面,本申請(qǐng)實(shí)施例提供一種軟件代碼生成裝置,所述裝置包括:
36、接收模塊,用于接收用戶輸入的功能需求語言;
37、第一解析模塊,用于利用預(yù)先訓(xùn)練的大語言模型,對(duì)所述功能需求語言進(jìn)行解析,生成對(duì)應(yīng)的前端需求代碼;
38、第二解析模塊,用于對(duì)所述前端需求代碼進(jìn)行解析,生成目標(biāo)語法樹;
39、生成模塊,用于基于所述目標(biāo)語法樹,生成可編譯執(zhí)行的目標(biāo)軟件代碼。
40、作為一個(gè)可能的實(shí)現(xiàn)方式,所述第一解析模塊,包括:
41、獲取子模塊,用于將所述功能需求語言輸入預(yù)先訓(xùn)練的所述大語言模型,獲取所述大語言模型輸出的提示信息;
42、輸出子模塊,用于輸出所述提示信息;
43、接收子模塊,用于接收用戶針對(duì)所述提示信息輸入的應(yīng)答語言;
44、輸入子模塊,用于將所述應(yīng)答語言輸入所述大語言模型,得到所述大語言模型輸出的前端需求代碼。
45、作為一個(gè)可能的實(shí)現(xiàn)方式,所述裝置還包括:
46、第一生成模塊,用于所述大語言模型通過以下方式生成所述提示信息:
47、接收所述功能需求語言;
48、對(duì)所述功能需求語言進(jìn)行識(shí)別,得到所述功能需求語言對(duì)應(yīng)的目標(biāo)功能需求;
49、根據(jù)所述目標(biāo)功能需求,從預(yù)設(shè)的組件庫中確定初始功能組件;
50、根據(jù)所述初始功能組件生成與所述初始功能組件對(duì)應(yīng)的提示信息。
51、作為一個(gè)可能的實(shí)現(xiàn)方式,所述裝置還包括:
52、第二生成模塊,用于所述大語言模型通過以下方式生成所述前端需求代碼:
53、接收用戶的應(yīng)答語言;
54、對(duì)所述應(yīng)答語言進(jìn)行識(shí)別,得到所述應(yīng)答語言對(duì)應(yīng)的應(yīng)答功能需求;
55、根據(jù)所述應(yīng)答功能需求,從所述初始功能組件中確定所述應(yīng)答功能需求對(duì)應(yīng)的目標(biāo)功能組件以及所述目標(biāo)功能組件對(duì)應(yīng)的目標(biāo)屬性;
56、生成所述目標(biāo)功能組件和所述目標(biāo)屬性對(duì)應(yīng)的前端需求代碼。
57、作為一個(gè)可能的實(shí)現(xiàn)方式,所述裝置還包括:
58、展示模塊,用于在所述生成對(duì)應(yīng)的前端需求代碼之后,在所述對(duì)所述前端需求代碼進(jìn)行解析,生成目標(biāo)語法樹之前,基于所述前端需求代碼,通過可視化界面展示所述前端本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種軟件代碼生成方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述利用預(yù)先訓(xùn)練的大語言模型,對(duì)所述功能需求語言進(jìn)行解析,生成對(duì)應(yīng)的前端需求代碼,包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述大語言模型通過以下方式生成所述提示信息:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述大語言模型通過以下方式生成所述前端需求代碼:
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述生成對(duì)應(yīng)的前端需求代碼之后,在所述對(duì)所述前端需求代碼進(jìn)行解析,生成目標(biāo)語法樹之前,還包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述基于所述目標(biāo)語法樹,生成可編譯執(zhí)行的目標(biāo)軟件代碼,包括:
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述大語言模型通過以下方式訓(xùn)練得到:
8.一種軟件代碼生成裝置,其特征在于,所述裝置包括:
9.一種電子設(shè)備,其特征在于,包括:處理器和存儲(chǔ)器,所述處理器用于執(zhí)行所述存儲(chǔ)器中存儲(chǔ)的軟件代碼生成程序,以實(shí)現(xiàn)權(quán)利要求1~7中任一項(xiàng)所述的軟件代碼生成方
10.一種存儲(chǔ)介質(zhì),其特征在于,所述存儲(chǔ)介質(zhì)存儲(chǔ)有一個(gè)或者多個(gè)程序,所述一個(gè)或者多個(gè)程序可被一個(gè)或者多個(gè)處理器執(zhí)行,以實(shí)現(xiàn)權(quán)利要求1~7中任一項(xiàng)所述的軟件代碼生成方法。
...【技術(shù)特征摘要】
1.一種軟件代碼生成方法,其特征在于,所述方法包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述利用預(yù)先訓(xùn)練的大語言模型,對(duì)所述功能需求語言進(jìn)行解析,生成對(duì)應(yīng)的前端需求代碼,包括:
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述大語言模型通過以下方式生成所述提示信息:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述大語言模型通過以下方式生成所述前端需求代碼:
5.根據(jù)權(quán)利要求1所述的方法,其特征在于,在所述生成對(duì)應(yīng)的前端需求代碼之后,在所述對(duì)所述前端需求代碼進(jìn)行解析,生成目標(biāo)語法樹之前,還包括:
6.根據(jù)權(quán)利要求1所述的...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:蘇雅迪,
申請(qǐng)(專利權(quán))人:北京奇藝世紀(jì)科技有限公司,
類型:發(fā)明
國(guó)別省市:
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。