{"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/genie-a-generator-of-natural-language","title":"Genie: A Generator of Natural Language Semantic Parsers for Virtual Assistant Commands","arxiv_id":"1904.09020","date":"2019-04-18","proceeding":null,"authors":["Giovanni Campagna","Silei Xu","Mehrad Moradshahi","Richard Socher","Monica S. Lam"],"abstract":"To understand diverse natural language commands, virtual assistants today are\ntrained with numerous labor-intensive, manually annotated sentences. This paper\npresents a methodology and the Genie toolkit that can handle new compound\ncommands with significantly less manual effort. We advocate formalizing the\ncapability of virtual assistants with a Virtual Assistant Programming Language\n(VAPL) and using a neural semantic parser to translate natural language into\nVAPL code. Genie needs only a small realistic set of input sentences for\nvalidating the neural model. Developers write templates to synthesize data;\nGenie uses crowdsourced paraphrases and data augmentation, along with the\nsynthesized data, to train a semantic parser. We also propose design principles\nthat make VAPL languages amenable to natural language translation. We apply\nthese principles to revise ThingTalk, the language used by the Almond virtual\nassistant. We use Genie to build the first semantic parser that can support\ncompound virtual assistants commands with unquoted free-form parameters. Genie\nachieves a 62% accuracy on realistic user inputs. We demonstrate Genie's\ngenerality by showing a 19% and 31% improvement over the previous state of the\nart on a music skill, aggregate functions, and access control.","url_abs":"http://arxiv.org/abs/1904.09020v1","url_pdf":"http://arxiv.org/pdf/1904.09020v1.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":"genie-a-generator-of-natural-language","repo_url":"https://github.com/stanford-oval/genie-toolkit","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"data-augmentation","task_name":"Data Augmentation"},{"task_slug":"translation","task_name":"Translation"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1904.09020","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}