AST-T5: Structure-Aware Pretraining for Code Generation and Understanding

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Gong, Linyuan, Elhoushi, Mostafa, Cheung, Alvin
Natura: Preprint
Pubblicazione: 2024
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866916296806891520
author Gong, Linyuan
Elhoushi, Mostafa
Cheung, Alvin
author_facet Gong, Linyuan
Elhoushi, Mostafa
Cheung, Alvin
contents Large language models (LLMs) have made significant advancements in code-related tasks, yet many LLMs treat code as simple sequences, neglecting its structured nature. We introduce AST-T5, a novel pretraining paradigm that leverages the Abstract Syntax Tree (AST) for enhanced code generation, transpilation, and understanding. Using dynamic programming, our AST-Aware Segmentation retains code structure, while our AST-Aware Span Corruption objective equips the model to reconstruct various code structures. Unlike other models, AST-T5 avoids intricate program analyses or architectural changes, so it integrates seamlessly with any encoder-decoder Transformer. Evaluations show that AST-T5 consistently outperforms similar-sized LMs across various code-related tasks. Structure-awareness makes AST-T5 particularly powerful in code-to-code tasks, surpassing CodeT5 by 2 points in exact match score for the Bugs2Fix task and by 3 points in exact match score for Java-C# Transpilation in CodeXGLUE. Our code and model are publicly available at https://github.com/gonglinyuan/ast_t5.
format Preprint
id arxiv_https___arxiv_org_abs_2401_03003
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle AST-T5: Structure-Aware Pretraining for Code Generation and Understanding
Gong, Linyuan
Elhoushi, Mostafa
Cheung, Alvin
Software Engineering
Computation and Language
Machine Learning
Large language models (LLMs) have made significant advancements in code-related tasks, yet many LLMs treat code as simple sequences, neglecting its structured nature. We introduce AST-T5, a novel pretraining paradigm that leverages the Abstract Syntax Tree (AST) for enhanced code generation, transpilation, and understanding. Using dynamic programming, our AST-Aware Segmentation retains code structure, while our AST-Aware Span Corruption objective equips the model to reconstruct various code structures. Unlike other models, AST-T5 avoids intricate program analyses or architectural changes, so it integrates seamlessly with any encoder-decoder Transformer. Evaluations show that AST-T5 consistently outperforms similar-sized LMs across various code-related tasks. Structure-awareness makes AST-T5 particularly powerful in code-to-code tasks, surpassing CodeT5 by 2 points in exact match score for the Bugs2Fix task and by 3 points in exact match score for Java-C# Transpilation in CodeXGLUE. Our code and model are publicly available at https://github.com/gonglinyuan/ast_t5.
title AST-T5: Structure-Aware Pretraining for Code Generation and Understanding
topic Software Engineering
Computation and Language
Machine Learning
url https://arxiv.org/abs/2401.03003