Grounding Data Science Code Generation with Input-Output Specifications
Not on the map. Why?
Abstract (arXiv)
Large language models (LLMs) have recently demonstrated a remarkable ability to generate code from natural language (NL) prompts. However, in the real world, NL is often too ambiguous to capture the true intent behind programming problems, requiring additional input-output (I/O) specifications. Unfortunately, LLMs can have difficulty aligning their outputs with both the NL prompt and the I/O specification. In this paper, we give a way to mitigate this issue in the context of data science programming, where tasks require explicit I/O specifications for clarity. Specifically, we propose GIFT4Code, a novel approach for the instruction fine-tuning of LLMs with respect to I/O specifications. Our method leverages synthetic data produced by the LLM itself and utilizes execution-derived feedback as a key learning signal. This feedback, in the form of program I/O specifications, is provided to the LLM to facilitate instruction fine-tuning. We evaluated our approach on two challenging data science benchmarks, Arcade and DS-1000. The results demonstrate a significant improvement in the LLM's ability to generate code that is not only executable but also accurately aligned with user specifications, substantially improving the quality of code generation for complex data science tasks.
Key facts. Cited by 7 papers in the map (data through 7 Oct 2026). Builds on 39 of its 56 references that are in the map. First posted on arXiv 12 Feb 2024.
Builds on
39 of 56 references.
References · 39
- 2021Finetuned Language Models Are Zero-Shot Learnerscited by 3,747
- 2021Program Synthesis with Large Language Modelscited by 3,509
- 2022Scaling Instruction-Finetuned Language Modelscited by 2,997
- 2022Self-Instruct: Aligning Language Models with Self-Generated Instructionscited by 2,674
- 2023Code Llama: Open Foundation Models for Codecited by 2,105
- 2021Multitask Prompted Training Enables Zero-Shot Task Generalizationcited by 1,462
- 2022Competition-Level Code Generation with AlphaCodecited by 1,427
- 2022Large Language Models Are Human-Level Prompt Engineerscited by 1,020
- 2023Teaching Large Language Models to Self-Debugcited by 963
- 2022CodeGen: An Open Large Language Model for Code with Multi-Turn Program Synthesiscited by 876
- 2022Super-NaturalInstructions: Generalization via Declarative Instructions on 1600+ NLP Taskscited by 858
- 2021Cross-Task Generalization via Natural Language Crowdsourcing Instructionscited by 696
27 more
- 2023Instruction Tuning with GPT-4cited by 676
- 2022InCoder: A Generative Model for Code Infilling and Synthesiscited by 492
- 2022DS-1000: A Natural and Reliable Benchmark for Data Science Code Generationcited by 442
- 2022Unnatural Instructions: Tuning Language Models with (Almost) No Human Laborcited by 395
- 2022CodeT: Code Generation with Generated Testscited by 369
- 2022Language Models are Realistic Tabular Data Generatorscited by 290
- 2023LEVER: Learning to Verify Language-to-Code Generation with Executioncited by 228
- 2023Planning with Large Language Models for Code Generationcited by 179
- 2022Instruction Induction: From Few Examples to Natural Language Task Descriptionscited by 152
- 2023Does Synthetic Data Generation of LLMs Help Clinical Text Mining?cited by 151
- 2016DeepCoder: Learning to Write Programscited by 145
- 2017RobustFill: Neural Program Learning under Noisy I/Ocited by 124
- 2022Natural Language to Code Translation with Executioncited by 122
- 2021Jigsaw: Large Language Models meet Program Synthesiscited by 103
- 2023Exploiting Asymmetry for Synthetic Training Data Generation: SynthIE and the Case of Information Extractioncited by 89
- 2018Leveraging Grammar and Reinforcement Learning for Neural Program Synthesiscited by 83
- 2018Robust Text-to-SQL Generation with Execution-Guided Decodingcited by 51
- 2021Latent Execution for Neural Program Synthesiscited by 35
- 2020AutoQA: From Databases To QA Semantic Parsers With Only Synthetic Training Datacited by 29
- 2022LINGUIST: Language Model Instruction Tuning to Generate Annotated Utterances for Intent Classification and Slot Taggingcited by 29
- 2020TF-Coder: Program Synthesis for Tensor Manipulationscited by 27
- 2022Guess the Instruction! Flipped Learning Makes Language Models Stronger Zero-Shot Learnerscited by 22
- 2023L2CEval: Evaluating Language-to-Code Generation Capabilities of Large Language Modelscited by 22
- 2022CLASP: Few-Shot Cross-Lingual Data Augmentation for Semantic Parsingcited by 21
- 2022I2D2: Inductive Knowledge Distillation with NeuroLogic and Self-Imitationcited by 21
- 2021On The Ingredients of an Effective Zero-shot Semantic Parsercited by 13
- 2022Augmenting Multi-Turn Text-to-SQL Datasets with Self-Playcited by 9
Built on by
Citing papers per year: 2024: 5; 2025: 2.
7 papers.
- 2025DeepAnalyze: Agentic Large Language Models for Autonomous Data Sciencecited by 49
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesiscited by 14
- 2024Data Analysis in the Era of Generative AIcited by 6
- 2025Improving Existing Optimization Algorithms with LLMscited by 4
- 2024Exploring Data-Efficient Adaptation of Large Language Models for Code Generationcited by 3
- 2024Linguacodus: A Synergistic Framework for Transformative Code Generation in Machine Learning Pipelinescited by 0
- 2024Synthesize, Partition, then Adapt: Eliciting Diverse Samples from Foundation Modelscited by 0
- 2025DeepAnalyze: Agentic Large Language Models for Autonomous Data Science19 Oct 2025
- 2025Improving Existing Optimization Algorithms with LLMs12 Feb 2025
- 2024Synthesize, Partition, then Adapt: Eliciting Diverse Samples from Foundation Models11 Nov 2024
- 2024Data Analysis in the Era of Generative AI27 Sep 2024
- 2024HYSYNTH: Context-Free LLM Approximation for Guiding Program Synthesis24 May 2024
- 2024Linguacodus: A Synergistic Framework for Transformative Code Generation in Machine Learning Pipelines18 Mar 2024
- 2024Exploring Data-Efficient Adaptation of Large Language Models for Code Generation29 Feb 2024