智慧推薦:提升程式碼審查效率的新利器
科技
02-15
在軟體開發的過程中,程式碼審查扮演著至關重要的角色,它能夠在早期階段發現錯誤,從而提升產品品質。然而,在大型開源專案中,如何為特定的程式碼變更找到最合適的審查者,往往是一項複雜的挑戰。
為瞭解決這個問題,由張濤領導的研究團隊與袁大偉等人合作,提出了基於程式碼情境的審查者推薦模型(Code Context Based Reviewer Recommendation, CCB-RR)。這個模型透過分析變更集,結合修改檔案的路徑、變更標題與描述的情境,來推薦最適合的審查者。
CCB-RR 使用 KeyBERT 技術來識別相關關鍵字,並評估這些關鍵字在變更集中的語義一致性。透過整合修改檔案路徑、關鍵字資料以及程式碼變更的情境,這個模型能夠提供對變更集的全面理解。這項研究成果已發表在《電腦科學前沿》期刊上。
由於情境資料的多樣性,研究團隊進一步增強了情境感知網路(Context-Aware Network),利用 KeyBERT 從原始檔案中提取關鍵字,並使用 Byte Pair Encoder (BPE) 方法處理程式碼資料。在每個網路中,自我注意力機制被用於特徵提取,以捕捉全域性的文字情境。
研究團隊在四個知名的開源平臺(Android、OpenStack、Qt 和 LibreOffice)上測試了 CCB-RR 模型。結果顯示,該模型在 Top-k 準確率和 MRR 指標上均表現出色。特別值得一提的是,CCB-RR 在 Top-10 推薦名單中的準確率達到 87%,並且在 Top-1 準確率上比基準模型高出 55%,充分展現了其基於情境的審查者推薦能力。
未來的研究方向將著重於探索更先進的原始檔案情境技術,並評估更多開源專案,以進一步提升推薦系統的效能。