Skip to content

Papers

RAG-Enhanced Commit Message Generation

react

贡献

  • 将检索增强用于CMG任务
  • 充分比较了多种预训练模型以及大模型使用检索增强后的效果

方法

数据集用的是CodiSum,包含75000个训练样本,7661个测试样本

image-20240613114524728

检索部分

检索方法使用了BM25CodeT5+的encoder(256维),并将两种方法的分数按1:1进行加权来实现混合检索。检索库用的CommitBench中160万条commit,为了防止数据泄露,如果检索到和query diff一模一样的,则选择分数第二的commit。

增强部分

对于PLM,增加了3个special tokens:[QUERY],[DIFF],[MSG]

对于LLM,使用的prompt为:

image-20240613114453007

结果

使用的大模型:

image-20240613114600077

不使用RAG:

image-20240613114636558

使用RAG:

image-20240613114701070

检索方法:

image-20240613114728118