US 11,836,467 B2
Code generation with reinforcement learning
Miltiadis Allamanis, Cambridge (GB); Daya Guo, Zhuhai (CN); Neelakantan Sundaresan, Bellevue, WA (US); and Alexey Svyatkovskiy, Bellevue, WA (US)
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC., Redmond, WA (US)
Filed by MICROSOFT TECHNOLOGY LICENSING, LLC., Redmond, WA (US)
Filed on Aug. 16, 2021, as Appl. No. 17/403,583.
Claims priority of provisional application 63/210,971, filed on Jun. 15, 2021.
Prior Publication US 2022/0398071 A1, Dec. 15, 2022
Int. Cl. G06F 8/33 (2018.01); G06F 8/36 (2018.01); G06N 3/08 (2023.01); G06N 3/045 (2023.01)
CPC G06F 8/33 (2013.01) [G06F 8/36 (2013.01); G06N 3/045 (2023.01); G06N 3/08 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system comprising:
a processor and a memory;
wherein the memory includes executable instructions that when executed by the processor perform actions that:
access a first deep learning model configured to predict whether a non-terminal symbol exists to be expanded given a partial-code state that represents a partially-formed code snippet;
access a second deep learning model configured to predict an expansion of a non-terminal symbol predicted by the first deep learning model, wherein the expansion replaces the predicted non-terminal symbol in accordance with a production rule of a grammar of a programming language of the partially-formed source code snippet;
obtain the partially-formed source code snippet; and
execute the first deep learning model and the second deep learning model to generate a code sketch to complete the partially-formed source code snippet, wherein the code sketch includes a source code snippet with at least one hole.