CoDocBench: A Dataset for Code-Documentation Alignment in Software Maintenance

Kunal Pai, Premkumar Devanbu, Toufique Ahmed
2/1/2025
cs.SEcs.LG

No official code found. Best implementation: kunpai/codocbench (6 stars, last commit 2025-03-23).

Abstract

One of the central tasks in software maintenance is being able to understand and develop code changes. Thus, given a natural language description of the desired new operation of a function, an agent (human or AI) might be asked to generate the set of edits to that function to implement the desired new operation; likewise, given a set of edits to a function, an agent might be asked to generate a changed description, of that function's new workings. Thus, there is an incentive to train a neural model for change-related tasks. Motivated by this, we offer a new, "natural", large dataset of coupled changes to code and documentation mined from actual high-quality GitHub projects, where each sample represents a single commit where the code and the associated docstring were changed together. We present the methodology for gathering the dataset, and some sample, challenging (but realistic) tasks where our dataset provides opportunities for both learning and evaluation. We find that current models (specifically Llama-3.1 405B, Mixtral 8$\times$22B) do find these maintenance-related tasks challenging.

View on arXivView PDF

Code Implementations(1)

kunpai/codocbenchCommunity100%

CoDocBench is a dataset for code-documentation alignment in software maintenance. This repository contains the dataset, source code used to extract it, examples of using it, and some statistics about it.

63Shell, PythonNov 23, 20241 years ago

Similar Papers

Cite this paper

@article{pai2025codocbench,
  title  = {CoDocBench: A Dataset for Code-Documentation Alignment in Software Maintenance},
  author = {Kunal Pai and Premkumar Devanbu and Toufique Ahmed},
  year   = {2025},
  eprint = {2502.00519},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2502.00519v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2502.00519.svg)](https://codeofpaper.com/paper/2502.00519)

Discussion