paper-with-me

홈 › Papers

NoviCode: Generating Programs from Natural Language Utterances by Novices

2024-07-15 · Asaf Achi Mordechai, Yoav Goldberg, Reut Tsarfaty

Current Text-to-Code models demonstrate impressive capabilities in generating executable code from natural language snippets. However, current studies focus on technical instructions and programmer-oriented language, and it is an open question whether these models can effectively translate natural language descriptions given by non-technical users and express complex goals, to an executable program that contains an intricate flow - composed of API access and control structures as loops, conditions, and sequences. To unlock the challenge of generating a complete program from a plain non-technical description we present NoviCode, a novel NL Programming task, which takes as input an API and a natural language description by a novice non-programmer and provides an executable program as output. To assess the efficacy of models on this task, we provide a novel benchmark accompanied by test suites wherein the generated program code is assessed not according to their form, but according to their functional execution. Our experiments show that, first, NoviCode is indeed a challenging task in the code synthesis domain, and that generating complex code from non-technical instructions goes beyond the current Text-to-Code paradigm. Second, we show that a novel approach wherein we align the NL utterances with the compositional hierarchical structure of the code, greatly enhances the performance of LLMs on this task, compared with the end-to-end Text-to-Code counterparts.

📄 PDF Abstract BibTeX arXiv:2407.10626

Code (1)

asafam/novicode 공식 구현

Methods 이 논문이 사용한 방법론

Focus 설명 없음
ALIGN In the ALIGN method, visual and language representations are jointly trained from noisy image alt-text data. The image and text encoders are learned via contrastive loss…

Similar Papers 제목 키워드 기반

Diverse In-Context Example Selection After Decomposing Programs and Aligned Utterances Improves Semantic Parsing

2025-04-04 · Mayank Kothyari, Sunita Sarawagi, Soumen Chakrabarti, Gaurav Arora 외

LLMs are increasingly used as seq2seq translators from natural language utterances to structured programs, a process called semantic interpretation. Unlike atomic labels or token sequences, programs are naturally represe…

Semantic Parsing

Learning from Executions for Semantic Parsing

2021-04-12 · NAACL 2021 4 · Bailin Wang, Mirella Lapata, Ivan Titov

Semantic parsing aims at translating natural language (NL) utterances onto machine-interpretable programs, which can be executed against a real-world environment. The expensive annotation of utterance-program pairs has l…

Semantic Parsing

On The Ingredients of an Effective Zero-shot Semantic Parser

2021-10-15 · ACL 2022 5 · Pengcheng Yin, John Wieting, Avirup Sil, Graham Neubig

Semantic parsers map natural language utterances into meaning representations (e.g., programs). Such models are typically bottlenecked by the paucity of training data due to the required laborious annotation efforts. Rec…

DiversitySemantic ParsingZero-Shot Learning

Conversational Code Generation: a Case Study of Designing a Dialogue System for Generating Driving Scenarios for Testing Autonomous Vehicles

2024-10-13 · Rimvydas Rubavicius, Antonio Valerio Miceli-Barone, Alex Lascarides, Subramanian Ramamoorthy

Cyber-physical systems like autonomous vehicles are tested in simulation before deployment, using domain-specific programs for scenario specification. To aid the testing of autonomous vehicles in simulation, we design a …

Autonomous VehiclesCode GenerationInstruction FollowingLanguage Modeling+2

Synchromesh: Reliable code generation from pre-trained language models

2022-01-26 · ICLR 2022 4 · Gabriel Poesia, Oleksandr Polozov, Vu Le, Ashish Tiwari 외

Large pre-trained language models have been used to generate code,providing a flexible interface for synthesizing programs from natural language specifications. However, they often violate syntactic and semantic rules of…

Code GenerationLanguage ModelingLanguage Modellingvalid