廣東工業大學蘇慶獲國家專利權
買專利賣專利找龍圖騰,真高效! 查專利查商標用IPTOP,全免費!專利年費監控用IP管家,真方便!
龍圖騰網獲悉廣東工業大學申請的專利一種基于檢索增強與多模態相結合的代碼補全方法獲國家發明授權專利權,本發明授權專利權由國家知識產權局授予,授權公告號為:CN119806502B 。
龍圖騰網通過國家知識產權局官網在2025-09-09發布的發明授權授權公告中獲悉:該發明授權的專利申請號/專利號為:202411857009.4,技術領域涉及:G06F8/33;該發明授權一種基于檢索增強與多模態相結合的代碼補全方法是由蘇慶;楊智程;程林峰;鄭靖軒;謝國波;林志毅;黃劍鋒;盧致暉;周旭;陳勇;袁海軍設計研發完成,并于2024-12-17向國家知識產權局提交的專利申請。
本一種基于檢索增強與多模態相結合的代碼補全方法在說明書摘要公布了:本發明公開的屬于代碼補全技術領域,具體為一種基于檢索增強與多模態相結合的代碼補全方法,包括具體步驟如下:構建代碼補全數據集、構建代碼補全模型、劃分代碼補全數據集并訓練代碼補全模型、應用代碼補全模型進行代碼補全。本發明對待補全代碼進行檢索增強,檢索出相似的代碼片段來輔助待補全代碼進行補全,能夠很好地利用代碼的外在相似性,提高代碼補全效率。提取從抽象語法樹的葉子節點到待補全節點的路徑特征,能夠很好的利用路徑上的語法結構信息,同時也能夠一定程度上緩解路徑爆炸問題。
本發明授權一種基于檢索增強與多模態相結合的代碼補全方法在權利要求書中公布了:1.一種基于檢索增強與多模態相結合的代碼補全方法,其特征在于,包括具體步驟如下: S1:構建代碼補全數據集; S2:構建代碼補全模型; S3:劃分代碼補全數據集并訓練代碼補全模型; S4:應用代碼補全模型進行代碼補全; 所述S2的具體步驟如下: S21:檢索與待補全代碼c最相似的代碼片段m,并計算c與m的語義相似度; S22:如果待補全代碼c與代碼片段m的語義相似度高于閾值,執行S221來生成代碼補全結果,否則執行S222來生成代碼補全結果; 所述S221的具體步驟為:運用補全代碼生成器生成代碼補全結果,具體如下: 如果待補全代碼c與代碼片段m的語義相似度高于閾值,根據m的索引值從源代碼數據庫中得到m的下一個代碼片段m1,拼接m和m1得到m'=[m,m1],其中m'能夠輔助c進行補全;然后拼接c和m'得到x'=[c,m'],將x'作為補全代碼生成器的輸入,其中補全代碼生成器由CodeGPT模型構建而成,最后輸出代碼補全結果; 所述S222的具體步驟為:提取待補全代碼c的多模態特征,并生成代碼補全結果,具體如下: 如果待補全代碼c與代碼片段m的語義相似度低于閾值,則提取待補全代碼c的多模態特征,包括c的AST節點序列特征、AST的葉子節點到待補全節點的路徑特征和信息增強圖特征; 所述S222中提取待補全代碼c的AST的信息增強圖特征Fg的具體步驟如下: S22231,構造信息增強圖: S222311:使用ASDL規則中的字段為TA-AST的邊添加類型信息,所述類型信息表示其邊兩端節點之間的關系,其中,在Moudle節點與FunctionDef節點之間添加函數體邊body,在FunctionDef節點與Assign節點和Return節點之間也添加函數體邊body,在FunctionDef節點與標識符節點之間添加函數名字邊name,在FunctionDef節點與Args節點之間添加函數參數邊args,在Args節點與標識符節點之間添加參數邊arg,在Assign節點與標識符節點之間添加目標邊targets,在Assign節點與BinOp節點之間添加取值邊value,在BinOp節點與左右標識符節點之間添加計算邊left和right,在BinOp節點與操作符節點之間操作符邊op; S222312:接著在TA-AST中添加下一個記號邊nextToken,其邊是根據待補全代碼c的文本順序從一個葉子節點指向另一個葉子節點;同時添加賦值邊assign_edge表示將一個標識符的值賦給另一個標識符; S222313:然后根據駝峰命名規則將TA-AST中的葉子節點按值拆分為多個子節點,以能夠一定程度上解決超詞表問題;同時在TA-AST中引入了新的節點類型subtoken和子節點邊subToken_of; S222314:最后形成AST的信息增強圖; S22232,使用HetSheaf模型來提取信息增強圖的各個節點特征: S222321:對信息增強圖中的節點和邊進行特征嵌入: F'n=ReLUWn·Fn+bn F'e=ReLUWe·Fe+be 其中,F'n為嵌入后的節點特征,F'e為嵌入后的邊特征,ReLU為激活函數,Fn為初始化的節點特征,Fe為初始化的邊特征,Wn和We為權重參數,bn和be為偏置值; S222322:在各個節點間進行消息傳遞并更新節點特征: 其中,Ni為節點i的鄰居集合,和為節點i和節點j的特征,為節點i和節點j之間的邊的特征,We1和We2為權重參數,b'為偏置值; S222323:使用平均聚合函數來融合各個節點特征,得到信息增強圖特征Fg; 其中,Fg為1×512大小的特征向量; 將多模態特征融合并生成代碼補全結果。
如需購買、轉讓、實施、許可或投資類似專利技術,可聯系本專利的申請人或專利權人廣東工業大學,其通訊地址為:510000 廣東省廣州市東風東路729號;或者聯系龍圖騰網官方客服,聯系龍圖騰網可撥打電話0551-65771310或微信搜索“龍圖騰網”。
1、本報告根據公開、合法渠道獲得相關數據和信息,力求客觀、公正,但并不保證數據的最終完整性和準確性。
2、報告中的分析和結論僅反映本公司于發布本報告當日的職業理解,僅供參考使用,不能作為本公司承擔任何法律責任的依據或者憑證。