本公開涉及計算機,尤其涉及一種代碼質量管控方法、裝置、電子設備和存儲介質。
背景技術:
1、在當今軟件開發過程中,隨著項目規模的不斷擴大,確保代碼邏輯的精確性和可靠性成為項目成功的關鍵。人力資源在審查現有代碼以預防潛在缺陷方面扮演著至關重要的角色。然而,這一過程往往是時間消耗大且勞動密集型的。根據學術研究表明,當項目中未審查的代碼行數超過200行時,發現漏洞的效率將顯著降低。因此,為確保后續開發活動順利進行,定期進行代碼審查成為必要條件。
2、傳統的代碼審查方法主要依賴于靜態代碼分析工具,這些工具融合了多種主流編程規范,例如pep8和google?style等,以識別代碼中的語義錯誤。盡管這些工具在檢測代碼表層問題方面表現出色,但它們在理解代碼的高層語義和邏輯結構方面存在明顯的局限性。
技術實現思路
1、有鑒于此,本公開提供一種代碼質量管控方法、裝置、電子設備和存儲介質,以解決現有技術中代碼審查不夠全面、準確率低的問題。
2、第一方面,本公開提供一種代碼質量管控方法,所述方法包括:
3、通過預先設定的第一提示策略,引導大型語言模型:對代碼文件根據預定義的代碼編寫標準進行分析,識別其中的代碼問題,并提出相應的修改建議;
4、通過預先設定的第二提示策略,引導大型語言模型:根據代碼修改建議以及預定義的代碼編寫標準,對識別出的問題代碼文件進行修正。
5、進一步的,在根據代碼修改建議以及預定義的代碼編寫標準,對識別出的問題代碼文件進行修正之前,所述方法還包括:
6、使用靜態代碼分析工具對代碼文件進行分析,識別其中的代碼問題,并提出相應的修改建議;
7、整合大型語言模型生成的代碼修改建議與靜態代碼分析工具生成的代碼修改建議,形成代碼修改意見文件。
8、進一步的,整合大型語言模型生成的代碼修改建議與靜態代碼分析工具生成的代碼修改建議,形成代碼修改意見文件,包括:
9、解析大型語言模型生成的代碼修改建議與靜態代碼分析工具生成的代碼修改建議,提取各代碼問題的信息要素,該要素至少包括行號、問題描述和修改建議;
10、按行號遍歷各代碼問題:檢查當前代碼問題的行號是否已記錄在代碼修改意見文件;如果是,則對當前代碼問題與代碼修改意見文件中具有相同行號的其它代碼問題進行信息要素的冗余消除;如果否,則將當前代碼問題的信息要素記錄至代碼修改意見文件。
11、進一步的,所述方法還包括:獲取對基于第一提示策略或第二提示策略生成的大型語言模型輸出內容的評價結果;將獲取到的評價結果反饋至大型語言模型,以使大型語言模型進行自適應調整。
12、進一步的,所述方法還包括:獲取預定義的代碼編寫標準,其中該標準至少從如下五個維度評估代碼質量:注釋、復雜度、功能性、命名和風格。
13、第二方面,本公開還提供一種代碼質量管控裝置,所述裝置包括:
14、代碼審查單元,用于通過預先設定的第一提示策略,引導大型語言模型:對代碼文件根據預定義的代碼編寫標準進行分析,識別其中的代碼問題,并提出相應的修改建議;
15、代碼修正單元,用于通過預先設定的第二提示策略,引導大型語言模型:根據代碼修改建議以及預定義的代碼編寫標準,對識別出的問題代碼文件進行修正。
16、進一步的,所述裝置還包括審查整合單元,用于:使用靜態代碼分析工具對代碼文件進行分析,識別其中的代碼問題,并提出相應的修改建議;整合大型語言模型生成的代碼修改建議與靜態代碼分析工具生成的代碼修改建議,形成代碼修改意見文件。
17、進一步的,審查整合單元用于整合大型語言模型生成的代碼修改建議與靜態代碼分析工具生成的代碼修改建議,形成代碼修改意見文件,包括:
18、解析大型語言模型生成的代碼修改建議與靜態代碼分析工具生成的代碼修改建議,提取各代碼問題的信息要素,該要素至少包括行號、問題描述和修改建議;
19、按行號遍歷各代碼問題:檢查當前代碼問題的行號是否已記錄在代碼修改意見文件;如果是,則對當前代碼問題與代碼修改意見文件中具有相同行號的其它代碼問題進行信息要素的冗余消除;如果否,則將當前代碼問題的信息要素記錄至代碼修改意見文件。
20、進一步的,所述裝置還包括模型優化單元,用于:獲取對基于第一提示策略或第二提示策略生成的大型語言模型輸出內容的評價結果;將獲取到的評價結果反饋至大型語言模型,以使大型語言模型進行自適應調整。
21、進一步的,所述裝置還包括標準獲取單元,用于:獲取預定義的代碼編寫標準,其中該標準至少從如下五個維度評估代碼質量:注釋、復雜度、功能性、命名和風格。
22、第三方面,本公開還提供一種電子設備,所述電子設備包括:殼體、處理器、存儲器、電路板和電源電路,其中,電路板安置在殼體圍成的空間內部,處理器和存儲器設置在電路板上;電源電路,用于為上述電子設備的各個電路或器件供電;存儲器用于存儲可執行程序代碼;處理器通過讀取存儲器中存儲的可執行程序代碼來運行與可執行程序代碼對應的程序,用于執行第一方面所述的代碼質量管控方法。
23、第四方面,本公開還提供一種計算機可讀存儲介質,所述計算機可讀存儲介質存儲有一個或者多個程序,所述一個或者多個程序可被一個或者多個中央處理器執行,以實現第一方面所述的代碼質量管控方法。
1.一種代碼質量管控方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,在根據代碼修改建議以及預定義的代碼編寫標準,對識別出的問題代碼文件進行修正之前,所述方法還包括:
3.根據權利要求2所述的方法,其特征在于,整合大型語言模型生成的代碼修改建議與靜態代碼分析工具生成的代碼修改建議,形成代碼修改意見文件,包括:
4.根據權利要求1所述的方法,其特征在于,所述方法還包括:
5.根據權利要求1-4中任一項所述的方法,其特征在于,所述方法還包括:
6.一種代碼質量管控裝置,其特征在于,所述裝置包括:
7.根據權利要求6所述的裝置,其特征在于,所述裝置還包括審查整合單元,用于:
8.根據權利要求7所述的裝置,其特征在于,審查整合單元用于整合大型語言模型生成的代碼修改建議與靜態代碼分析工具生成的代碼修改建議,形成代碼修改意見文件,包括:
9.根據權利要求6所述的裝置,其特征在于,所述裝置還包括模型優化單元,用于:
10.根據權利要求6-9中任一項所述的裝置,其特征在于,所述裝置還包括標準獲取單元,用于: