ZS4C: Zero-Shot Synthesis of Compilable Code for Incomplete Code Snippets using LLMs

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Kabir, Azmain, Wang, Shaowei, Tian, Yuan, Chen, Tse-Hsun, Asaduzzaman, Muhammad, Zhang, Wenbin
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866912148569980928
author Kabir, Azmain
Wang, Shaowei
Tian, Yuan
Chen, Tse-Hsun
Asaduzzaman, Muhammad
Zhang, Wenbin
author_facet Kabir, Azmain
Wang, Shaowei
Tian, Yuan
Chen, Tse-Hsun
Asaduzzaman, Muhammad
Zhang, Wenbin
contents Technical Q&A sites are valuable for software developers seeking knowledge, but the code snippets they provide are often uncompilable and incomplete due to unresolved types and missing libraries. This poses a challenge for users who wish to reuse or analyze these snippets. Existing methods either do not focus on creating compilable code or have low success rates. To address this, we propose ZS4C, a lightweight approach for zero-shot synthesis of compilable code from incomplete snippets using Large Language Models (LLMs). ZS4C operates in two stages: first, it uses an LLM, like GPT-3.5, to identify missing import statements in a snippet; second, it collaborates with a validator (e.g., compiler) to fix compilation errors caused by incorrect imports and syntax issues. We evaluated ZS4C on the StatType-SO benchmark and a new dataset, Python-SO, which includes 539 Python snippets from Stack Overflow across the 20 most popular Python libraries. ZS4C significantly outperforms existing methods, improving the compilation rate from 63% to 95.1% compared to the state-of-the-art SnR, marking a 50.1% improvement. On average, ZS4C can infer more accurate import statements (with an F1 score of 0.98) than SnR, with an improvement of 8.5% in the F1.
format Preprint
id arxiv_https___arxiv_org_abs_2401_14279
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle ZS4C: Zero-Shot Synthesis of Compilable Code for Incomplete Code Snippets using LLMs
Kabir, Azmain
Wang, Shaowei
Tian, Yuan
Chen, Tse-Hsun
Asaduzzaman, Muhammad
Zhang, Wenbin
Software Engineering
Artificial Intelligence
Technical Q&A sites are valuable for software developers seeking knowledge, but the code snippets they provide are often uncompilable and incomplete due to unresolved types and missing libraries. This poses a challenge for users who wish to reuse or analyze these snippets. Existing methods either do not focus on creating compilable code or have low success rates. To address this, we propose ZS4C, a lightweight approach for zero-shot synthesis of compilable code from incomplete snippets using Large Language Models (LLMs). ZS4C operates in two stages: first, it uses an LLM, like GPT-3.5, to identify missing import statements in a snippet; second, it collaborates with a validator (e.g., compiler) to fix compilation errors caused by incorrect imports and syntax issues. We evaluated ZS4C on the StatType-SO benchmark and a new dataset, Python-SO, which includes 539 Python snippets from Stack Overflow across the 20 most popular Python libraries. ZS4C significantly outperforms existing methods, improving the compilation rate from 63% to 95.1% compared to the state-of-the-art SnR, marking a 50.1% improvement. On average, ZS4C can infer more accurate import statements (with an F1 score of 0.98) than SnR, with an improvement of 8.5% in the F1.
title ZS4C: Zero-Shot Synthesis of Compilable Code for Incomplete Code Snippets using LLMs
topic Software Engineering
Artificial Intelligence
url https://arxiv.org/abs/2401.14279