Artifacts of the paper under review by ESEC/FSE
收藏资源简介:
<strong>This repository has been deprecated. Please refer to this link for the latest version.</strong> -------------------------------------------------------------------- This is the online repository of <strong>CCT5: A Code-Change-Oriented Pre-Trained Model</strong>, a research paper under review by ESEC/FSE. We release the source code and relevant data of CCT5, the data used in our evaluation, as well as the experiment results. Getting Started <pre><code>pytorch==1.8.0 cudatoolkit=11.1 datasets==1.18.3 transformers==4.16.2 tensorboard==2.8.0 tree-sitter==0.19.1</code></pre> Dataset We provide the datasets of pretraining and three downstream tasks. The datasets should be downloaded and uncompressed in the <strong>data </strong>directory. <code>pretraining/CodeChangeNet.tar.lrz</code> contains the dataset used in pretraining, i.e., CodeChangeNet. CodeChangeNet is a collection of over 1000 star projects written in six popular programming languages: Go, Java, JavaScript, PHP, Python, and Ruby. <code>finetune/MessageGeneration</code> contains the download and process script of task1 - Commit Message Generation; <code>finetune/CommentUpdate</code> contains the dataset of downstream task2 - Just-in-Time Comment Update; <code>finetune/JITDefectPrediction</code> contains the dataset of downstream task3 - Just-in-Time Defect Prediction; Pretrain the model <pre><code class="language-bash">cd sh bash pretrain.sh</code></pre> Finetune and evaluate the downstream task Commit Message Generation <pre><code class="language-bash">cd sh bash finetune_msggen.sh</code></pre> Just-in-Time Comment Update <pre><code class="language-bash">cd sh bash finetune_cup.sh</code></pre> Just-in-Time Defect Prediction <pre><code class="language-bash">cd sh bash finetune_jit.sh</code></pre> Results The experiment results of two generation tasks and the ablation study are stored in <strong>results</strong> with the directory <strong>MessageGeneration</strong>, <strong>CommentUpdate</strong>, and <strong>Ablation</strong>, respectively.



