NaturalCC: A Toolkit to Naturalize the Source Code Corpus
NaturalCC provides a toolkit for researchers in natural language and programming language communities to reproduce and implement big code analysis approaches, addressing the need for efficient and extensible tools in this domain.
This paper introduces NaturalCC, a toolkit designed to facilitate research in big code analysis by bridging natural and programming languages. It provides an efficient, modular framework built on Fairseq and PyTorch, offering multi-GPU training, mixed-precision data processing, and both command-line and graphical user interfaces.
We present NaturalCC, an efficient and extensible toolkit to bridge the gap between natural language and programming language, and facilitate the research on big code analysis. Using NaturalCC, researchers both from natural language or programming language communities can quickly and easily reproduce the state-of-the-art baselines and implement their approach. NaturalCC is built upon Fairseq and PyTorch, providing (1) an efficient computation with multi-GPU and mixed-precision data processing for fast model training, (2) a modular and extensible framework that makes it easy to reproduce or implement an approach for big code analysis, and (3) a command line interface and a graphical user interface to demonstrate each model's performance. Currently, we have included several state-of-the-art baselines across different tasks (e.g., code completion, code comment generation, and code retrieval) for demonstration. The video of this demo is available at https://www.youtube.com/watch?v=q4W5VSI-u3E&t=25s.