{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/a-retrieve-and-edit-framework-for-predicting","title":"A Retrieve-and-Edit Framework for Predicting Structured Outputs","arxiv_id":"1812.01194","date":"2018-12-04","proceeding":"NeurIPS 2018 12","authors":["Tatsunori B. Hashimoto","Kelvin Guu","Yonatan Oren","Percy Liang"],"abstract":"For the task of generating complex outputs such as source code, editing\nexisting outputs can be easier than generating complex outputs from scratch.\nWith this motivation, we propose an approach that first retrieves a training\nexample based on the input (e.g., natural language description) and then edits\nit to the desired output (e.g., code). Our contribution is a computationally\nefficient method for learning a retrieval model that embeds the input in a\ntask-dependent way without relying on a hand-crafted metric or incurring the\nexpense of jointly training the retriever with the editor. Our\nretrieve-and-edit framework can be applied on top of any base model. We show\nthat on a new autocomplete task for GitHub Python code and the Hearthstone\ncards benchmark, retrieve-and-edit significantly boosts the performance of a\nvanilla sequence-to-sequence model on both tasks.","url_abs":"http://arxiv.org/abs/1812.01194v1","url_pdf":"http://arxiv.org/pdf/1812.01194v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"a-retrieve-and-edit-framework-for-predicting","repo_url":"https://worksheets.codalab.org/worksheets/0x1ad3f387005c492ea913cf0f20c9bb89","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"none","reach":null}],"tasks":[{"task_slug":"retrieval","task_name":"Retrieval"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1812.01194","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}