最新的毛片基地免费,国产国语一级毛片,免费国产成人高清在线电影,中天堂国产日韩欧美,中国国产aa一级毛片,国产va欧美va在线观看,成人不卡在线

代碼嵌入模型的訓(xùn)練方法及裝置與流程

文檔序號:41953110發(fā)布日期:2025-05-16 14:16閱讀:3來源:國知局
代碼嵌入模型的訓(xùn)練方法及裝置與流程

本說明書一個或多個實施例涉及人工智能,尤其涉及一種代碼嵌入模型的訓(xùn)練方法及裝置。


背景技術(shù):

1、代碼嵌入是一種將查詢文本和代碼片段映射到同一嵌入空間中的技術(shù)。通過使用該技術(shù),可以將查詢文本和代碼片段表示為具有相似語義的向量,以便后續(xù)通過計算相似度確定它們之間的相關(guān)性。這種方法可以幫助工程師或開發(fā)者在軟件開發(fā)過程中更有效地搜索和匹配代碼,在軟件維護(hù)和修改過程中找到相關(guān)的文檔和資源,以及在軟件測試和調(diào)試過程中識別和解決問題。代碼嵌入的應(yīng)用范圍廣泛,涵蓋了軟件開發(fā)、自然語言處理和信息檢索等領(lǐng)域,為提高代碼和文本之間的相關(guān)性和語義理解提供了新的途徑。

2、為實現(xiàn)代碼嵌入,通常需要訓(xùn)練代碼嵌入模型,然而目前所訓(xùn)練的代碼嵌入模型要么準(zhǔn)確性差,要么體積較大進(jìn)而造成存儲負(fù)擔(dān)。因此,需要提供一種更有效的代碼嵌入模型的訓(xùn)練方案。


技術(shù)實現(xiàn)思路

1、本說明書一個或多個實施例描述了一種代碼嵌入模型的訓(xùn)練方法及裝置,可以在保證模型性能的同時大幅降低存儲壓力。

2、第一方面,提供了一種代碼嵌入模型的訓(xùn)練方法,所述代碼嵌入模型包括,從預(yù)訓(xùn)練的第一大模型獲取的編碼模塊、文本與代碼共享的第一聚合模塊,以及所述文本與代碼各自專用的兩個第二聚合模塊;所述方法包括:

3、利用所述編碼模塊處理目標(biāo)輸入,得到其中各字符的輸出向量;所述目標(biāo)輸入為樣本集中的任一文本或代碼片段;

4、利用所述第一聚合模塊,基于第一錨點句向量,對所述各字符的輸出向量進(jìn)行基于注意力機(jī)制的第一聚合處理,得到所述目標(biāo)輸入的第一特征向量;

5、利用所述兩個第二聚合模塊中所述目標(biāo)輸入的類型專用的目標(biāo)聚合模塊,分別基于該目標(biāo)聚合模塊對應(yīng)的目標(biāo)數(shù)目的第二錨點句向量,對所述各字符的輸出向量進(jìn)行基于注意力機(jī)制的第二聚合處理,得到所述目標(biāo)輸入的第二特征向量;

6、基于所述樣本集中各文本和各代碼片段各自的第一和第二特征向量,確定預(yù)測損失,并基于其更新第一和第二聚合模塊以及第一和第二錨點句向量。

7、第二方面,提供了一種代碼查詢方法,包括:

8、獲取目標(biāo)文本;

9、獲取代碼嵌入模型,該代碼嵌入模型根據(jù)上述第一方面所述的方法訓(xùn)練得到;

10、利用所述代碼嵌入模型處理所述目標(biāo)文本,得到目標(biāo)特征向量;

11、計算所述目標(biāo)特征向量與代碼庫中各代碼片段的特征向量的相似度;單個代碼片段的特征向量利用所述代碼嵌入模型預(yù)測得到;

12、根據(jù)所述相似度,從所述代碼庫中召回與所述目標(biāo)文本相匹配的目標(biāo)代碼片段。

13、第三方面,提供了一種代碼嵌入模型的訓(xùn)練裝置,所述代碼嵌入模型包括,從預(yù)訓(xùn)練的第一大模型獲取的編碼模塊、文本與代碼共享的第一聚合模塊,以及所述文本與代碼各自專用的兩個第二聚合模塊;所述裝置包括:

14、處理單元,用于利用所述編碼模塊處理目標(biāo)輸入,得到其中各字符的輸出向量;所述目標(biāo)輸入為樣本集中的任一文本或代碼片段;

15、第一聚合單元,用于利用所述第一聚合模塊,基于第一錨點句向量,對所述各字符的輸出向量進(jìn)行基于注意力機(jī)制的第一聚合處理,得到所述目標(biāo)輸入的第一特征向量;

16、第二聚合單元,用于利用所述兩個第二聚合模塊中所述目標(biāo)輸入的類型專用的目標(biāo)聚合模塊,分別基于該目標(biāo)聚合模塊對應(yīng)的目標(biāo)數(shù)目的第二錨點句向量,對所述各字符的輸出向量進(jìn)行基于注意力機(jī)制的第二聚合處理,得到所述目標(biāo)輸入的第二特征向量;

17、更新單元,用于基于所述樣本集中各文本和各代碼片段各自的第一和第二特征向量,確定預(yù)測損失,并基于其更新第一和第二聚合模塊以及第一和第二錨點句向量。

18、第四方面,提供了一種代碼查詢裝置,包括:

19、獲取單元,用于獲取目標(biāo)文本;

20、所述獲取單元,還用于獲取代碼嵌入模型,該代碼嵌入模型根據(jù)上述第一方面所述的方法訓(xùn)練得到;

21、處理單元,用于利用所述代碼嵌入模型處理所述目標(biāo)文本,得到目標(biāo)特征向量;

22、計算單元,用于計算所述目標(biāo)特征向量與代碼庫中各代碼片段的特征向量的相似度;單個代碼片段的特征向量利用所述代碼嵌入模型預(yù)測得到;

23、召回單元,用于根據(jù)所述相似度,從所述代碼庫中召回與所述目標(biāo)文本相匹配的目標(biāo)代碼片段。

24、第五方面,提供了一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序,當(dāng)所述計算機(jī)程序在計算機(jī)中執(zhí)行時,令計算機(jī)執(zhí)行第一或第二方面的方法。

25、第六方面,提供了一種計算設(shè)備,包括存儲器和處理器,所述存儲器中存儲有可執(zhí)行代碼,該處理器執(zhí)行所述可執(zhí)行代碼時,實現(xiàn)第一或第二方面的方法。

26、本說明書一個或多個實施例提供的代碼嵌入模型的訓(xùn)練方法及裝置,對于目標(biāo)輸入,先利用從預(yù)訓(xùn)練的大模型獲取的編碼模塊對其進(jìn)行編碼,進(jìn)而得到其中的各字符的輸出向量。然后,分別利用文本與代碼共享的聚合模塊,以及該目標(biāo)輸入的類型專用的聚合模塊,對各字符的輸出向量進(jìn)行聚合處理,從而得到目標(biāo)輸入的判別類表征和非判別類表征。最后,基于該兩類表征,計算預(yù)測損失,并更新代碼嵌入模型??梢姡痉桨缚梢杂行Ю妙A(yù)訓(xùn)練的大模型的知識和能力,由此可以大大節(jié)約訓(xùn)練成本。再者,本方案基于兩類表征,計算預(yù)測損失,并基于其訓(xùn)練代碼嵌入模型,可以確保模型充分學(xué)習(xí)到文本或代碼的多種特征,這有助于提高模型的預(yù)測精度。



技術(shù)特征:

1.一種代碼嵌入模型的訓(xùn)練方法,所述代碼嵌入模型包括,從預(yù)訓(xùn)練的第一大模型獲取的編碼模塊、文本與代碼共享的第一聚合模塊,以及所述文本與代碼各自專用的兩個第二聚合模塊;所述方法包括:

2.根據(jù)權(quán)利要求1所述的方法,其中,所述代碼專用的第二聚合模塊對應(yīng)的第二錨點句向量的數(shù)目,多于所述文本專用的第二聚合模塊對應(yīng)的第二錨點句向量的數(shù)目。

3.根據(jù)權(quán)利要求1所述的方法,其中,所述第一聚合處理,包括:

4.根據(jù)權(quán)利要求3所述的方法,其中,所述查詢向量的維度小于所述第一錨點句向量的維度,所述各鍵向量和各值向量的維度均小于對應(yīng)字符的輸出向量的維度。

5.根據(jù)權(quán)利要求1所述的方法,其中,所述確定預(yù)測損失,包括:

6.根據(jù)權(quán)利要求5所述的方法,其中,所述不匹配的文本-代碼片段對包括,第一文本-代碼片段對和/或第二文本-代碼片段對;

7.根據(jù)權(quán)利要求5所述的方法,其中,所述對于任一文本或代碼片段,將對應(yīng)的第一和第二特征向量輸入第二大模型,包括:

8.根據(jù)權(quán)利要求5所述的方法,其中,單個文本或代碼片段的預(yù)測輸出包括,所述第二大模型針對該單個文本或代碼片段所預(yù)測的各生成字符的概率;所述重構(gòu)損失與所述各生成字符的概率反相關(guān)。

9.根據(jù)權(quán)利要求1所述的方法,其中,所述目標(biāo)輸入為目標(biāo)代碼片段;所述方法還包括:

10.根據(jù)權(quán)利要求1所述的方法,其中,所述編碼模塊包括,參數(shù)固定的目標(biāo)網(wǎng)絡(luò),和與所述目標(biāo)網(wǎng)絡(luò)并行設(shè)置的旁路網(wǎng)絡(luò);

11.根據(jù)權(quán)利要求10所述的方法,其中,所述得到其中各字符的輸出向量,包括:

12.一種代碼查詢方法,包括:

13.一種代碼嵌入模型的訓(xùn)練裝置,所述代碼嵌入模型包括,從預(yù)訓(xùn)練的第一大模型獲取的編碼模塊、文本與代碼共享的第一聚合模塊,以及所述文本與代碼各自專用的兩個第二聚合模塊;所述裝置包括:

14.根據(jù)權(quán)利要求13所述的裝置,其中,所述代碼專用的第二聚合模塊對應(yīng)的第二錨點句向量的數(shù)目,多于所述文本專用的第二聚合模塊對應(yīng)的第二錨點句向量的數(shù)目。

15.根據(jù)權(quán)利要求13所述的裝置,其中,所述第一聚合單元包括:

16.根據(jù)權(quán)利要求15所述的裝置,其中,所述查詢向量的維度小于所述第一錨點句向量的維度,所述各鍵向量和各值向量的維度均小于對應(yīng)字符的輸出向量的維度。

17.根據(jù)權(quán)利要求13所述的裝置,其中,所述更新單元,包括:

18.根據(jù)權(quán)利要求17所述的裝置,其中,所述不匹配的文本-代碼片段對包括,第一文本-代碼片段對和/或第二文本-代碼片段對;

19.根據(jù)權(quán)利要求17所述的裝置,其中,所述計算子模塊具體用于:

20.根據(jù)權(quán)利要求17所述的裝置,其中,單個文本或代碼片段的預(yù)測輸出包括,所述第二大模型針對該單個文本或代碼片段所預(yù)測的各生成字符的概率;所述重構(gòu)損失與所述各生成字符的概率反相關(guān)。

21.根據(jù)權(quán)利要求13所述的裝置,其中,所述編碼模塊包括,參數(shù)固定的目標(biāo)網(wǎng)絡(luò),和與所述目標(biāo)網(wǎng)絡(luò)并行設(shè)置的旁路網(wǎng)絡(luò);

22.根據(jù)權(quán)利要求21所述的裝置,其中,所述處理單元具體用于:

23.一種代碼查詢裝置,包括:

24.一種計算機(jī)可讀存儲介質(zhì),其上存儲有計算機(jī)程序,其中,當(dāng)所述計算機(jī)程序在計算機(jī)中執(zhí)行時,令計算機(jī)執(zhí)行權(quán)利要求1-12中任一項所述的方法。

25.一種計算設(shè)備,包括存儲器和處理器,其中,所述存儲器中存儲有可執(zhí)行代碼,所述處理器執(zhí)行所述可執(zhí)行代碼時,實現(xiàn)權(quán)利要求1-12中任一項所述的方法。


技術(shù)總結(jié)
本說明書實施例提供一種代碼嵌入模型的訓(xùn)練方法,包括:利用編碼模塊處理目標(biāo)輸入,得到其中各字符的輸出向量。利用文本域代碼共享的聚合模塊,基于第一錨點句向量,對各字符的輸出向量進(jìn)行基于注意力機(jī)制的第一聚合處理,得到目標(biāo)輸入的第一特征向量。利用目標(biāo)輸入的類型專用的目標(biāo)聚合模塊,分別基于該目標(biāo)聚合模塊對應(yīng)的目標(biāo)數(shù)目的第二錨點句向量,對各字符的輸出向量進(jìn)行基于注意力機(jī)制的第二聚合處理,得到目標(biāo)輸入的第二特征向量?;跇颖炯懈魑谋竞透鞔a片段各自的第一和第二特征向量,確定預(yù)測損失,并基于其更新第一和第二聚合模塊以及第一和第二錨點句向量。

技術(shù)研發(fā)人員:廖子寒,秦晉,余航,李建國
受保護(hù)的技術(shù)使用者:支付寶(杭州)信息技術(shù)有限公司
技術(shù)研發(fā)日:
技術(shù)公布日:2025/5/15
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1