Genie: A Generator of Natural Language Semantic Parsers for Virtual Assistant Commands Giovanni Campagna∗ Silei Xu∗ Mehrad Moradshahi Computer Science Department Computer Science Department Computer Science Department Stanford University Stanford University Stanford University Stanford, CA, USA Stanford, CA, USA Stanford, CA, USA
[email protected] [email protected] [email protected] Richard Socher Monica S. Lam Salesforce, Inc. Computer Science Department Palo Alto, CA, USA Stanford University
[email protected] Stanford, CA, USA
[email protected] Abstract CCS Concepts • Human-centered computing → Per- To understand diverse natural language commands, virtual sonal digital assistants; • Computing methodologies assistants today are trained with numerous labor-intensive, → Natural language processing; • Software and its engi- manually annotated sentences. This paper presents a method- neering → Context specific languages. ology and the Genie toolkit that can handle new compound Keywords virtual assistants, semantic parsing, training commands with significantly less manual effort. data generation, data augmentation, data engineering We advocate formalizing the capability of virtual assistants with a Virtual Assistant Programming Language (VAPL) and ACM Reference Format: using a neural semantic parser to translate natural language Giovanni Campagna, Silei Xu, Mehrad Moradshahi, Richard Socher, into VAPL code. Genie needs only a small realistic set of input and Monica S. Lam. 2019. Genie: A Generator of Natural Lan- sentences for validating the neural model. Developers write guage Semantic Parsers for Virtual Assistant Commands. In Pro- templates to synthesize data; Genie uses crowdsourced para- ceedings of the 40th ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI ’19), June 22–26, 2019, phrases and data augmentation, along with the synthesized Phoenix, AZ, USA.